gtk+ r20071 - in trunk: . gdk/quartz



Author: rhult
Date: Sun May  4 15:15:00 2008
New Revision: 20071
URL: http://svn.gnome.org/viewvc/gtk+?rev=20071&view=rev

Log:
2008-05-04  Richard Hult  <richard imendio com>

	* gdk/quartz/gdkkeys-quartz.c (maybe_update_keymap): Check if
	gdk_unicode_to_keyval() worked before using the result. Makes
	function keys work, bug #530156. Also add F16 to the function key
	map.


Modified:
   trunk/ChangeLog
   trunk/gdk/quartz/gdkkeys-quartz.c

Modified: trunk/gdk/quartz/gdkkeys-quartz.c
==============================================================================
--- trunk/gdk/quartz/gdkkeys-quartz.c	(original)
+++ trunk/gdk/quartz/gdkkeys-quartz.c	Sun May  4 15:15:00 2008
@@ -128,7 +128,8 @@
   { 111, GDK_F12, 0 },
   { 105, GDK_F13, 0 },
   { 107, GDK_F14, 0 },
-  { 113, GDK_F15, 0 }
+  { 113, GDK_F15, 0 },
+  { 106, GDK_F16, 0 }
 };
 
 const static struct {
@@ -255,7 +256,15 @@
 			p[j] = GDK_ISO_Left_Tab;
 
 		      if (!found)
-			p[j] = gdk_unicode_to_keyval (uc);
+                        {
+                          guint tmp;
+                          
+                          tmp = gdk_unicode_to_keyval (uc);
+                          if (tmp != (uc | 0x01000000))
+                            p[j] = tmp;
+                          else
+                            p[j] = 0;
+                        }
 		    }
 		}
 	      
@@ -330,7 +339,15 @@
 			p[j] = GDK_ISO_Left_Tab;
 		      
 		      if (!found)
-			p[j] = gdk_unicode_to_keyval (uc);
+                        {
+                          guint tmp;
+                          
+                          tmp = gdk_unicode_to_keyval (uc);
+                          if (tmp != (uc | 0x01000000))
+                            p[j] = tmp;
+                          else
+                            p[j] = 0;
+                        }
 		    }
 		}
 	      



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