[gnome-commander/gcmd-1-2-8] Fixed problem #448941 (numeric keypad arrows don't work in the main window)



commit 4d249e9ba6ed67f0869d018faad627505dc604c3
Author: Piotr Eljasiak <epiotr src gnome org>
Date:   Sun Dec 5 14:47:42 2010 +0100

    Fixed problem #448941 (numeric keypad arrows don't work in the main window)

 NEWS                           |    2 +-
 doc/C/gnome-commander.xml      |    2 +-
 src/gnome-cmd-file-list.cc     |   17 +++++++++++++----
 src/gnome-cmd-file-selector.cc |    5 +++++
 4 files changed, 20 insertions(+), 6 deletions(-)
---
diff --git a/NEWS b/NEWS
index bbe5fa5..0b9a43a 100644
--- a/NEWS
+++ b/NEWS
@@ -3,7 +3,7 @@ gnome-commander 1.2.8.10
 ---------------
 
 Bug fixes:
- * ...
+ * Fixed problem #448941 (numeric keypad arrows don't work in the main window)
 
 
 ===================================
diff --git a/doc/C/gnome-commander.xml b/doc/C/gnome-commander.xml
index 00ea4ab..55419d7 100644
--- a/doc/C/gnome-commander.xml
+++ b/doc/C/gnome-commander.xml
@@ -6068,7 +6068,7 @@
                 <para>
                     <itemizedlist>
                         <listitem>
-                            <para>...</para>
+                            <para>Fixed problem #448941 (numeric keypad arrows don't work in the main window)</para>
                         </listitem>
                     </itemizedlist>
                 </para>
diff --git a/src/gnome-cmd-file-list.cc b/src/gnome-cmd-file-list.cc
index b042a21..3a685ba 100644
--- a/src/gnome-cmd-file-list.cc
+++ b/src/gnome-cmd-file-list.cc
@@ -2045,6 +2045,7 @@ gboolean GnomeCmdFileList::key_pressed(GdkEventKey *event)
         switch (event->keyval)
         {
             case GDK_Return:
+            case GDK_KP_Enter:
                 gnome_cmd_file_list_show_properties_dialog (this);
                 return TRUE;
 
@@ -2077,42 +2078,50 @@ gboolean GnomeCmdFileList::key_pressed(GdkEventKey *event)
                 return TRUE;
 
             case GDK_Left:
+            case GDK_KP_Left:
             case GDK_Right:
+            case GDK_KP_Right:
                 event->state -= GDK_SHIFT_MASK;
                 return FALSE;
 
             case GDK_Page_Up:
             case GDK_KP_Page_Up:
+            case GDK_KP_9:
                 priv->shift_down = TRUE;
                 gtk_signal_emit_by_name (GTK_OBJECT (this), "scroll-vertical", GTK_SCROLL_PAGE_BACKWARD, 0.0, NULL);
                 return FALSE;
 
             case GDK_Page_Down:
             case GDK_KP_Page_Down:
+            case GDK_KP_3:
                 priv->shift_down = TRUE;
                 gtk_signal_emit_by_name (GTK_OBJECT (this), "scroll-vertical", GTK_SCROLL_PAGE_FORWARD, 0.0, NULL);
                 return FALSE;
 
             case GDK_Up:
             case GDK_KP_Up:
+            case GDK_KP_8:
                 priv->shift_down = TRUE;
                 gtk_signal_emit_by_name (GTK_OBJECT (this), "scroll-vertical", GTK_SCROLL_STEP_BACKWARD, 0.0, NULL);
                 return FALSE;
 
             case GDK_Down:
             case GDK_KP_Down:
+            case GDK_KP_2:
                 priv->shift_down = TRUE;
                 gtk_signal_emit_by_name (GTK_OBJECT (this), "scroll-vertical", GTK_SCROLL_STEP_FORWARD, 0.0, NULL);
                 return FALSE;
 
             case GDK_Home:
             case GDK_KP_Home:
+            case GDK_KP_7:
                 priv->shift_down = TRUE;
                 gtk_signal_emit_by_name (GTK_OBJECT (this), "scroll-vertical", GTK_SCROLL_JUMP, 0.0);
                 return TRUE;
 
             case GDK_End:
             case GDK_KP_End:
+            case GDK_KP_1:
                 priv->shift_down = TRUE;
                 gtk_signal_emit_by_name (GTK_OBJECT (this), "scroll-vertical", GTK_SCROLL_JUMP, 1.0);
                 return TRUE;
@@ -2184,19 +2193,19 @@ gboolean GnomeCmdFileList::key_pressed(GdkEventKey *event)
 
             case GDK_KP_Page_Up:
                 event->keyval = GDK_Page_Up;
-                return TRUE;
+                return FALSE;
 
             case GDK_KP_Page_Down:
                 event->keyval = GDK_Page_Down;
-                return TRUE;
+                return FALSE;
 
             case GDK_KP_Up:
                 event->keyval = GDK_Up;
-                return TRUE;
+                return FALSE;
 
             case GDK_KP_Down:
                 event->keyval = GDK_Down;
-                return TRUE;
+                return FALSE;
 
             case GDK_Home:
             case GDK_KP_Home:
diff --git a/src/gnome-cmd-file-selector.cc b/src/gnome-cmd-file-selector.cc
index 26759ea..fec93bb 100644
--- a/src/gnome-cmd-file-selector.cc
+++ b/src/gnome-cmd-file-selector.cc
@@ -1794,15 +1794,18 @@ gboolean GnomeCmdFileSelector::key_pressed(GdkEventKey *event)
         switch (event->keyval)
         {
             case GDK_Down:
+            case GDK_KP_Down:
                 gnome_cmd_dir_indicator_show_history (GNOME_CMD_DIR_INDICATOR (dir_indicator));
                 return TRUE;
 
             case GDK_Left:
+            case GDK_KP_Left:
                 back();
                 stop_kp (GTK_OBJECT (file_list()));
                 return TRUE;
 
             case GDK_Right:
+            case GDK_KP_Right:
                 forward();
                 stop_kp (GTK_OBJECT (file_list()));
                 return TRUE;
@@ -1833,10 +1836,12 @@ gboolean GnomeCmdFileSelector::key_pressed(GdkEventKey *event)
                 return TRUE;
 
             case GDK_Page_Up:
+            case GDK_KP_Page_Up:
                 goto_directory("..");
                 return TRUE;
 
             case GDK_Page_Down:
+            case GDK_KP_Page_Down:
                 f = file_list()->get_selected_file();
                 if (f && f->info->type == GNOME_VFS_FILE_TYPE_DIRECTORY)
                     do_file_specific_action (this, f);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]