[gtk+] gdkkeys-x11: Remove workaround code for Sun Microsystems X server



commit 55edb3e2b13c51e7ca36d6bf9beb66fbd92bfc39
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Tue Jul 9 14:50:32 2013 -0400

    gdkkeys-x11: Remove workaround code for Sun Microsystems X server
    
    Xsun is no longer shipped to customers, and Oracle/Sun's Xorg distribution
    uses "Sun Microsystems" as the vendor name, so this hack is incorrect in
    the more common recent cases.

 gdk/x11/gdkkeys-x11.c |   36 ++----------------------------------
 1 files changed, 2 insertions(+), 34 deletions(-)
---
diff --git a/gdk/x11/gdkkeys-x11.c b/gdk/x11/gdkkeys-x11.c
index 631af1f..1314275 100644
--- a/gdk/x11/gdkkeys-x11.c
+++ b/gdk/x11/gdkkeys-x11.c
@@ -71,7 +71,6 @@ struct _GdkX11Keymap
   GdkModifierType num_lock_mask;
   GdkModifierType modmap[8];
   PangoDirection current_direction;
-  guint sun_keypad      : 1;
   guint have_direction  : 1;
   guint have_lock_state : 1;
   guint caps_lock_state : 1;
@@ -114,7 +113,6 @@ gdk_x11_keymap_init (GdkX11Keymap *keymap)
   keymap->mod_keymap = NULL;
 
   keymap->num_lock_mask = 0;
-  keymap->sun_keypad = FALSE;
   keymap->group_switch_mask = 0;
   keymap->lock_keysym = GDK_KEY_Caps_Lock;
   keymap->have_direction = FALSE;
@@ -445,16 +443,6 @@ update_keymaps (GdkX11Keymap *keymap_x11)
               break;
             }
         }
-
-      /* Hack: The Sun X server puts the keysym to use when the Num Lock
-       * modifier is on in the third element of the keysym array, instead
-       * of the second.
-       */
-      if ((strcmp (ServerVendor (xdisplay), "Sun Microsystems, Inc.") == 0) &&
-          (keymap_x11->keysyms_per_keycode > 2))
-        keymap_x11->sun_keypad = TRUE;
-      else
-        keymap_x11->sun_keypad = FALSE;
     }
 }
 
@@ -1210,7 +1198,6 @@ translate_keysym (GdkX11Keymap   *keymap_x11,
   GdkModifierType shift_modifiers;
   gint shift_level;
   guint tmp_keyval;
-  gint num_lock_index;
 
   shift_modifiers = GDK_SHIFT_MASK;
   if (keymap_x11->lock_keysym == GDK_KEY_Shift_Lock)
@@ -1222,31 +1209,12 @@ translate_keysym (GdkX11Keymap   *keymap_x11,
       (SYM (keymap_x11, 0, 0) || SYM (keymap_x11, 0, 1)))
     group = 0;
 
-  /* Hack: On Sun, the Num Lock modifier uses the third element in the
-   * keysym array, and Mode_Switch does not apply for a keypad key.
-   */
-  if (keymap_x11->sun_keypad)
-    {
-      num_lock_index = 2;
-
-      if (group != 0)
-        {
-          gint i;
-
-          for (i = 0; i < keymap_x11->keysyms_per_keycode; i++)
-            if (KEYSYM_IS_KEYPAD (SYM (keymap_x11, 0, i)))
-              group = 0;
-        }
-    }
-  else
-    num_lock_index = 1;
-
   if ((state & keymap_x11->num_lock_mask) &&
-      KEYSYM_IS_KEYPAD (SYM (keymap_x11, group, num_lock_index)))
+      KEYSYM_IS_KEYPAD (SYM (keymap_x11, group, 1)))
     {
       /* Shift, Shift_Lock cancel Num_Lock
        */
-      shift_level = (state & shift_modifiers) ? 0 : num_lock_index;
+      shift_level = (state & shift_modifiers) ? 0 : 1;
       if (!SYM (keymap_x11, group, shift_level) && SYM (keymap_x11, group, 0))
         shift_level = 0;
 


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