Author: matt
Date: 2010-10-30 12:56:20 -0700 (Sat, 30 Oct 2010)
New Revision: 7779
Log:
Fixed special handling for ISO back-tab keycode (STR #2369)

Modified:
   branches/branch-1.3/CHANGES
   branches/branch-1.3/fluid/Fl_Window_Type.cxx
   branches/branch-1.3/src/Fl_Group.cxx
   branches/branch-1.3/src/Fl_Input.cxx
   branches/branch-1.3/src/Fl_Menu.cxx
   branches/branch-1.3/src/Fl_Tree.cxx
   branches/branch-1.3/src/Fl_x.cxx

Modified: branches/branch-1.3/CHANGES
===================================================================
--- branches/branch-1.3/CHANGES 2010-10-30 19:46:05 UTC (rev 7778)
+++ branches/branch-1.3/CHANGES 2010-10-30 19:56:20 UTC (rev 7779)
@@ -1,5 +1,6 @@
 CHANGES IN FLTK 1.3.0
 
+       - Fixed special handling for ISO back-tab keycode (STR #2369)
        - Fixed wrong relative path (STR #2384)
        - Fixed static allocation in Fl_Tabs (STR #2370)
        - Fixed Fl_Widget::measure_label() to const (STR #2406)

Modified: branches/branch-1.3/fluid/Fl_Window_Type.cxx
===================================================================
--- branches/branch-1.3/fluid/Fl_Window_Type.cxx        2010-10-30 19:46:05 UTC 
(rev 7778)
+++ branches/branch-1.3/fluid/Fl_Window_Type.cxx        2010-10-30 19:56:20 UTC 
(rev 7779)
@@ -1284,8 +1284,6 @@
       ((Fl_Window*)o)->hide();
       return 1;
 
-    case 0xFE20: // backtab
-      backtab = 1;
     case FL_Tab: {
       if (Fl::event_state(FL_SHIFT)) backtab = 1;
       // find current child:

Modified: branches/branch-1.3/src/Fl_Group.cxx
===================================================================
--- branches/branch-1.3/src/Fl_Group.cxx        2010-10-30 19:46:05 UTC (rev 
7778)
+++ branches/branch-1.3/src/Fl_Group.cxx        2010-10-30 19:56:20 UTC (rev 
7779)
@@ -133,7 +133,6 @@
     break;
   case FL_Tab:
     if (!Fl::event_state(FL_SHIFT)) return FL_Right;
-  case 0xfe20: // XK_ISO_Left_Tab
     return FL_Left;
   case FL_Right:
     return FL_Right;

Modified: branches/branch-1.3/src/Fl_Input.cxx
===================================================================
--- branches/branch-1.3/src/Fl_Input.cxx        2010-10-30 19:46:05 UTC (rev 
7778)
+++ branches/branch-1.3/src/Fl_Input.cxx        2010-10-30 19:56:20 UTC (rev 
7779)
@@ -500,7 +500,6 @@
           up_down_position(line_start(size()));
           break;
         case FL_Tab:
-        case 0xfe20: // XK_ISO_Left_Tab
           position(size(),0);
           break;
         default:

Modified: branches/branch-1.3/src/Fl_Menu.cxx
===================================================================
--- branches/branch-1.3/src/Fl_Menu.cxx 2010-10-30 19:46:05 UTC (rev 7778)
+++ branches/branch-1.3/src/Fl_Menu.cxx 2010-10-30 19:56:20 UTC (rev 7779)
@@ -660,7 +660,6 @@
   case FL_KEYBOARD:
     switch (Fl::event_key()) {
     case FL_BackSpace:
-    case 0xFE20: // backtab
     BACKTAB:
       if (!backward(pp.menu_number)) {pp.item_number = 
-1;backward(pp.menu_number);}
       return 1;

Modified: branches/branch-1.3/src/Fl_Tree.cxx
===================================================================
--- branches/branch-1.3/src/Fl_Tree.cxx 2010-10-30 19:46:05 UTC (rev 7778)
+++ branches/branch-1.3/src/Fl_Tree.cxx 2010-10-30 19:56:20 UTC (rev 7779)
@@ -488,8 +488,7 @@
            break;
          }
          case FL_Left:         // received focus via LEFT or UP?
-         case FL_Up:
-         case 0xfe20: {        // XK_ISO_Left_Tab
+         case FL_Up: {         // XK_ISO_Left_Tab
            set_item_focus(next_visible_item(0, FL_Up));
            break;
          }

Modified: branches/branch-1.3/src/Fl_x.cxx
===================================================================
--- branches/branch-1.3/src/Fl_x.cxx    2010-10-30 19:46:05 UTC (rev 7778)
+++ branches/branch-1.3/src/Fl_x.cxx    2010-10-30 19:56:20 UTC (rev 7779)
@@ -1254,6 +1254,10 @@
       Fl::e_original_keysym = (int)keysym;
     }
     Fl::e_keysym = int(keysym);
+  
+    // replace XK_ISO_Left_Tab (Shift-TAB) with FL_Tab (modifier flags are set 
correctly by X11)
+    if (Fl::e_keysym == 0xfe20) Fl::e_keysym = FL_Tab;
+    
     set_event_xy();
     Fl::e_is_click = 0;
     break;}

_______________________________________________
fltk-commit mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-commit

Reply via email to