mirror of https://github.com/davatorium/rofi.git
Quit on error msg fail.
This commit is contained in:
parent
3d2f0a07db
commit
06d25c0ca2
|
@ -130,7 +130,7 @@ void rofi_view_set_active ( RofiViewState *state );
|
||||||
*
|
*
|
||||||
* The error message to show.
|
* The error message to show.
|
||||||
*/
|
*/
|
||||||
void rofi_view_error_dialog ( const char *msg, int markup );
|
int rofi_view_error_dialog ( const char *msg, int markup );
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Queue a redraw.
|
* Queue a redraw.
|
||||||
|
|
|
@ -264,10 +264,9 @@ int show_error_message ( const char *msg, int markup )
|
||||||
{
|
{
|
||||||
int pfd = setup ();
|
int pfd = setup ();
|
||||||
if ( pfd < 0 ) {
|
if ( pfd < 0 ) {
|
||||||
return EXIT_FAILURE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
rofi_view_error_dialog ( msg, markup );
|
return rofi_view_error_dialog ( msg, markup );
|
||||||
return EXIT_SUCCESS;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -524,7 +523,9 @@ static gboolean startup ( G_GNUC_UNUSED gpointer data )
|
||||||
if ( find_arg ( "-markup" ) >= 0 ) {
|
if ( find_arg ( "-markup" ) >= 0 ) {
|
||||||
markup = TRUE;
|
markup = TRUE;
|
||||||
}
|
}
|
||||||
show_error_message ( msg, markup );
|
if ( !show_error_message ( msg, markup ) ) {
|
||||||
|
g_main_loop_quit ( main_loop );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if ( find_arg_str ( "-show", &sname ) == TRUE ) {
|
else if ( find_arg_str ( "-show", &sname ) == TRUE ) {
|
||||||
int index = switcher_get ( sname );
|
int index = switcher_get ( sname );
|
||||||
|
|
|
@ -1703,7 +1703,7 @@ static void __error_dialog_event_loop ( RofiViewState *state, xcb_generic_event_
|
||||||
rofi_view_update ( state );
|
rofi_view_update ( state );
|
||||||
}
|
}
|
||||||
void process_result_error ( RofiViewState *state );
|
void process_result_error ( RofiViewState *state );
|
||||||
void rofi_view_error_dialog ( const char *msg, int markup )
|
int rofi_view_error_dialog ( const char *msg, int markup )
|
||||||
{
|
{
|
||||||
RofiViewState *state = __rofi_view_state_create ();
|
RofiViewState *state = __rofi_view_state_create ();
|
||||||
state->retv = MENU_CANCEL;
|
state->retv = MENU_CANCEL;
|
||||||
|
@ -1729,7 +1729,7 @@ void rofi_view_error_dialog ( const char *msg, int markup )
|
||||||
int has_keyboard = take_keyboard ( xcb_stuff_get_root_window ( xcb ) );
|
int has_keyboard = take_keyboard ( xcb_stuff_get_root_window ( xcb ) );
|
||||||
if ( !has_keyboard ) {
|
if ( !has_keyboard ) {
|
||||||
fprintf ( stderr, "Failed to grab keyboard, even after %d uS.", 500 * 1000 );
|
fprintf ( stderr, "Failed to grab keyboard, even after %d uS.", 500 * 1000 );
|
||||||
return;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
rofi_view_calculate_window_and_element_width ( state );
|
rofi_view_calculate_window_and_element_width ( state );
|
||||||
|
@ -1757,6 +1757,7 @@ void rofi_view_error_dialog ( const char *msg, int markup )
|
||||||
sn_launchee_context_complete ( xcb->sncontext );
|
sn_launchee_context_complete ( xcb->sncontext );
|
||||||
}
|
}
|
||||||
rofi_view_set_active ( state );
|
rofi_view_set_active ( state );
|
||||||
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void rofi_view_cleanup ()
|
void rofi_view_cleanup ()
|
||||||
|
|
|
@ -199,6 +199,9 @@ void monitor_dimensions ( int x, int y, workarea *mon )
|
||||||
fprintf ( stderr, "Couldn't query Xinerama\n" );
|
fprintf ( stderr, "Couldn't query Xinerama\n" );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if ( is_active == NULL ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if ( !is_active->state ) {
|
if ( !is_active->state ) {
|
||||||
free ( is_active );
|
free ( is_active );
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue