summaryrefslogtreecommitdiff
path: root/gdk
diff options
context:
space:
mode:
authorRichard Hult <richard@imendio.com>2008-11-12 12:56:17 +0000
committerRichard Hult <rhult@src.gnome.org>2008-11-12 12:56:17 +0000
commit2c3590b47e5f88f5c77143de151e6f3fc29c55a6 (patch)
tree4c5b6e8ca73b84cb3d879466e510439a17e6c794 /gdk
parentc2d48cfc9189342e3c2a5f21b2a5ffe2281a6bf2 (diff)
downloadgtk+-2c3590b47e5f88f5c77143de151e6f3fc29c55a6.tar.gz
Bug 558586 – handling of keyboard under darwin (quartz)
2008-11-12 Richard Hult <richard@imendio.com> Bug 558586 – handling of keyboard under darwin (quartz) * gdk/quartz/gdkkeys-quartz.c: Follow up on this bug, only use the new API when building on 64-bit, since there are still old non-xml layouts used out there we don't want to break them. (For 64-bit those layouts doesn't work so we don't have a choice there.) svn path=/trunk/; revision=21782
Diffstat (limited to 'gdk')
-rw-r--r--gdk/quartz/gdkkeys-quartz.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/gdk/quartz/gdkkeys-quartz.c b/gdk/quartz/gdkkeys-quartz.c
index c195780c99..652641baa0 100644
--- a/gdk/quartz/gdkkeys-quartz.c
+++ b/gdk/quartz/gdkkeys-quartz.c
@@ -61,7 +61,12 @@
static GdkKeymap *default_keymap = NULL;
-#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_4
+/* Note: we could check only if building against the 10.5 SDK instead, but
+ * that would make non-xml layouts not work in 32-bit which would be a quite
+ * bad regression. This way, old unsupported layouts will just not work in
+ * 64-bit.
+ */
+#ifdef __LP64__
static TISInputSourceRef current_layout = NULL;
#else
static KeyboardLayoutRef current_layout = NULL;
@@ -185,7 +190,7 @@ maybe_update_keymap (void)
{
const void *chr_data = NULL;
-#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_4
+#ifdef __LP64__
TISInputSourceRef new_layout = TISCopyCurrentKeyboardLayoutInputSource ();
CFDataRef layout_data_ref;
@@ -204,7 +209,7 @@ maybe_update_keymap (void)
g_free (keyval_array);
keyval_array = g_new0 (guint, NUM_KEYCODES * KEYVALS_PER_KEYCODE);
-#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_4
+#ifdef __LP64__
layout_data_ref = (CFDataRef) TISGetInputSourceProperty
(new_layout, kTISPropertyUnicodeKeyLayoutData);
@@ -306,7 +311,7 @@ maybe_update_keymap (void)
{
/* Get chr data */
KLGetKeyboardLayoutProperty (new_layout, kKLuchrData, (const void **)&chr_data);
-#endif /* MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_4 */
+#endif
for (i = 0; i < NUM_KEYCODES; i++)
{
@@ -382,7 +387,7 @@ maybe_update_keymap (void)
p[1] == p[3])
p[2] = p[3] = 0;
}
-#if MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_4
+#ifndef __LP64__
}
else
{