Fix keyval and state in __keycode_button_clicked_cb
authorfujiwarat <takao.fujiwara1@gmail.com>
Thu, 21 Oct 2010 08:30:42 +0000 (17:30 +0900)
committerPeng Huang <shawn.p.huang@gmail.com>
Thu, 21 Oct 2010 09:14:55 +0000 (18:14 +0900)
data/ibus.schemas.in
setup/keyboardshortcut.py

index 4695d0b..aa66aa5 100644 (file)
@@ -18,7 +18,7 @@
       <owner>ibus</owner>
       <type>list</type>
       <list_type>string</list_type>
-      <default>[Control+space,Zenkaku_Hankaku,Alt+Zenkaku_Hankaku,Alt+grave,Hangul,Alt+Release+Alt_R]</default>
+      <default>[Control+space,Zenkaku_Hankaku,Alt+Kanji,Alt+grave,Hangul,Alt+Release+Alt_R]</default>
       <locale name="C">
         <short>Trigger shortcut keys</short>
            <long>The shortcut keys for turning input method on or off</long>
index 58d15ee..bde6f50 100644 (file)
@@ -235,16 +235,19 @@ class KeyboardShortcutSelection(gtk.VBox):
         dlg.set_markup(message)
         dlg.set_title(_("Please press a key (or a key combination)"))
 
-        def __key_release_event(d, k, out):
+        def __key_press_event(d, k, out):
             out.append(k.copy())
+
+        def __key_release_event(d, k, out):
             d.response(gtk.RESPONSE_OK)
 
-        dlg.connect("key-release-event", __key_release_event, out)
+        dlg.connect("key-press-event", __key_press_event, out)
+        dlg.connect("key-release-event", __key_release_event, None)
         id = dlg.run()
         dlg.destroy()
         if id != gtk.RESPONSE_OK or not out:
             return
-        keyevent = out[0]
+        keyevent = out[len(out) - 1]
         state = keyevent.state & (gdk.CONTROL_MASK | \
                                   gdk.SHIFT_MASK   | \
                                   gdk.MOD1_MASK    | \