mirror of https://github.com/davatorium/rofi.git
Possible fix issue #175
This commit is contained in:
parent
95beb58730
commit
e5caaf9d1a
|
@ -25,13 +25,13 @@ typedef struct
|
||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
TB_AUTOHEIGHT = 1 << 0,
|
TB_AUTOHEIGHT = 1 << 0,
|
||||||
TB_AUTOWIDTH = 1 << 1,
|
TB_AUTOWIDTH = 1 << 1,
|
||||||
TB_LEFT = 1 << 16,
|
TB_LEFT = 1 << 16,
|
||||||
TB_RIGHT = 1 << 17,
|
TB_RIGHT = 1 << 17,
|
||||||
TB_CENTER = 1 << 18,
|
TB_CENTER = 1 << 18,
|
||||||
TB_EDITABLE = 1 << 19,
|
TB_EDITABLE = 1 << 19,
|
||||||
TB_MARKUP = 1 << 20,
|
TB_MARKUP = 1 << 20,
|
||||||
} TextboxFlags;
|
} TextboxFlags;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -262,30 +262,31 @@ int dmenu_switcher_dialog ( char **input )
|
||||||
}
|
}
|
||||||
// We normally do not want to restart the loop.
|
// We normally do not want to restart the loop.
|
||||||
restart = FALSE;
|
restart = FALSE;
|
||||||
if ( ( mretv & ( MENU_OK | MENU_CUSTOM_INPUT ) ) && list[selected_line] != NULL ) {
|
// Normal mode
|
||||||
if ( ( mretv & MENU_CUSTOM_INPUT ) ) {
|
if ( ( mretv & MENU_OK ) && list[selected_line] != NULL ) {
|
||||||
dmenu_output_formatted_line ( format, *input, -1, *input );
|
dmenu_output_formatted_line ( format, list[selected_line], selected_line, *input );
|
||||||
}
|
|
||||||
else{
|
|
||||||
dmenu_output_formatted_line ( format, list[selected_line], selected_line, *input );
|
|
||||||
}
|
|
||||||
if ( ( mretv & MENU_SHIFT ) ) {
|
if ( ( mretv & MENU_SHIFT ) ) {
|
||||||
restart = TRUE;
|
restart = TRUE;
|
||||||
// Move to next line.
|
// Move to next line.
|
||||||
selected_line = MIN ( next_pos, length - 1 );
|
selected_line = MIN ( next_pos, length - 1 );
|
||||||
}
|
}
|
||||||
retv = TRUE;
|
retv = TRUE;
|
||||||
if ( ( mretv & MENU_QUICK_SWITCH ) ) {
|
// Custom input
|
||||||
retv = 10 + ( mretv & MENU_LOWER_MASK );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else if ( ( mretv & MENU_QUICK_SWITCH ) ) {
|
else if ( ( mretv & ( MENU_CUSTOM_INPUT ) ) ) {
|
||||||
if ( ( mretv & MENU_CUSTOM_INPUT ) ) {
|
dmenu_output_formatted_line ( format, *input, -1, *input );
|
||||||
dmenu_output_formatted_line ( format, *input, -1, *input );
|
retv = TRUE;
|
||||||
}
|
}
|
||||||
else{
|
// Quick switch with entry selected.
|
||||||
dmenu_output_formatted_line ( format, list[selected_line], selected_line, *input );
|
else if ( ( mretv & MENU_QUICK_SWITCH ) && selected_line > 0 ) {
|
||||||
}
|
dmenu_output_formatted_line ( format, list[selected_line], selected_line, *input );
|
||||||
|
|
||||||
|
restart = FALSE;
|
||||||
|
retv = 10 + ( mretv & MENU_LOWER_MASK );
|
||||||
|
}
|
||||||
|
// Quick switch without entry selected.
|
||||||
|
else if ( ( mretv & MENU_QUICK_SWITCH ) && selected_line == -1 ) {
|
||||||
|
dmenu_output_formatted_line ( format, *input, -1, *input );
|
||||||
|
|
||||||
restart = FALSE;
|
restart = FALSE;
|
||||||
retv = 10 + ( mretv & MENU_LOWER_MASK );
|
retv = 10 + ( mretv & MENU_LOWER_MASK );
|
||||||
|
|
Loading…
Reference in New Issue