- /*
- * hack, did not find a cleaner solution.
- * wait 30s to ensure that the status icon is attempted to be
- * drawn before determining whether the main window must be
- * show.
- */
- if (ui.config->hide_on_startup)
- g_timeout_add(30000, (GSourceFunc)initial_window_show, &ui);
+ log_debug("hide_on_startup: %d", ui.config->hide_on_startup);
+ if (ui.config->hide_on_startup)
+ /* Wait 30s to allow attempt to show status icon or other UI,
+ * then check whether any UI is accessible. If not, then main
+ * window must be shown despite hide_on_startup preference.
+ * There may be a cleaner way to deal with this.
+ */
+ g_timeout_add(30000, (GSourceFunc)check_ui_visible, &ui);