[gnome-commander] Focus command line via CTRL+ALT+C when quick search with just a letter is active
- From: Uwe Scholz <uwescholz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-commander] Focus command line via CTRL+ALT+C when quick search with just a letter is active
- Date: Sat, 19 Aug 2017 10:09:18 +0000 (UTC)
commit dbbe436b8f2e8ef6e64c5ec4a297b8a004294d62
Author: Uwe Scholz <uwescholz src gnome org>
Date: Sat Aug 19 12:08:06 2017 +0200
Focus command line via CTRL+ALT+C when quick search with just a letter is active
src/dialogs/gnome-cmd-options-dialog.cc | 2 +-
src/gnome-cmd-main-win.cc | 20 +++++++++++++++++---
2 files changed, 18 insertions(+), 4 deletions(-)
---
diff --git a/src/dialogs/gnome-cmd-options-dialog.cc b/src/dialogs/gnome-cmd-options-dialog.cc
index a111d7c..207ecde 100644
--- a/src/dialogs/gnome-cmd-options-dialog.cc
+++ b/src/dialogs/gnome-cmd-options-dialog.cc
@@ -173,7 +173,7 @@ static GtkWidget *create_general_tab (GtkWidget *parent, GnomeCmdData::Options &
gtk_container_add (GTK_CONTAINER (cat_box), radio);
if (cfg.quick_search == GNOME_CMD_QUICK_SEARCH_ALT)
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radio), TRUE);
- radio = create_radio (parent, get_radio_group (radio), _("Just letters"), "quick_search");
+ radio = create_radio (parent, get_radio_group (radio), _("Just letters (command line access with
CTRL+ALT+C)"), "quick_search");
gtk_container_add (GTK_CONTAINER (cat_box), radio);
if (cfg.quick_search == GNOME_CMD_QUICK_SEARCH_JUST_A_CHARACTER)
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (radio), TRUE);
diff --git a/src/gnome-cmd-main-win.cc b/src/gnome-cmd-main-win.cc
index 8e4a74d..7c4b187 100644
--- a/src/gnome-cmd-main-win.cc
+++ b/src/gnome-cmd-main-win.cc
@@ -155,8 +155,10 @@ static gint gnome_cmd_key_snooper(GtkWidget *grab_widget, GdkEventKey *event, Gn
return FALSE;
}
- if (state_is_ctrl (event->state) || state_is_ctrl_shift (event->state) || state_is_ctrl_alt_shift
(event->state)
- || ((state_is_alt (event->state) || state_is_alt_shift (event->state)) &&
gnome_cmd_data.options.quick_search != GNOME_CMD_QUICK_SEARCH_ALT))
+ if ((gnome_cmd_data.options.quick_search == GNOME_CMD_QUICK_SEARCH_JUST_A_CHARACTER) &&
+ (state_is_ctrl (event->state) || state_is_ctrl_shift (event->state) || state_is_ctrl_alt_shift
(event->state)
+ || (state_is_alt (event->state) || state_is_alt_shift (event->state))
+ || (state_is_ctrl_alt(event->state))))
{
return FALSE;
}
@@ -984,7 +986,19 @@ void GnomeCmdMainWin::refocus()
gboolean GnomeCmdMainWin::key_pressed(GdkEventKey *event)
{
- if (state_is_alt (event->state))
+ if (state_is_ctrl_alt (event->state))
+ {
+ switch (event->keyval)
+ {
+ case GDK_c:
+ case GDK_C:
+ if (gnome_cmd_data.cmdline_visibility && (gnome_cmd_data.options.quick_search ==
GNOME_CMD_QUICK_SEARCH_JUST_A_CHARACTER))
+ gnome_cmd_cmdline_focus(main_win->get_cmdline());
+ return TRUE;
+ break;
+ }
+ }
+ else if (state_is_alt (event->state))
{
switch (event->keyval)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]