Quick work-around fix for rofi blocking X on unavailable monitor

This commit is contained in:
Dave Davenport 2016-02-17 00:00:41 +01:00
parent ed4d9eee1b
commit 63be750c5b
3 changed files with 24 additions and 21 deletions

View File

@ -749,6 +749,8 @@ int main ( int argc, char *argv[] )
}
x11_setup ( display );
main_loop_source = x11_event_source_new ( display );
x11_event_source_set_callback ( main_loop_source, main_loop_x11_event_handler );
TICK_N ( "X11 Setup " );
// Sanity check
@ -768,8 +770,6 @@ int main ( int argc, char *argv[] )
config_parse_xresources_theme_dump ();
exit ( EXIT_SUCCESS );
}
main_loop_source = x11_event_source_new ( display );
x11_event_source_set_callback ( main_loop_source, main_loop_x11_event_handler );
// Parse the keybindings.
parse_keys_abe ();
TICK_N ( "Parse ABE" );

View File

@ -69,6 +69,8 @@
// What todo with these.
extern Display *display;
extern SnLauncheeContext *sncontext;
// FIXME: remove
gboolean main_loop_x11_event_handler ( G_GNUC_UNUSED gpointer data );
GThreadPool *tpool = NULL;
@ -1657,6 +1659,7 @@ void rofi_view_error_dialog ( const char *msg, int markup )
sn_launchee_context_complete ( sncontext );
}
rofi_view_set_active ( state );
main_loop_x11_event_handler ( NULL );
while ( !rofi_view_get_completed ( state ) ) {
g_main_context_iteration ( NULL, TRUE );
}