Empathie Tips: Hoe het venster te sluiten met Esc Snelkoppeling en verander de ramen verandering
18 mei

De andere dag heb ik besloten om verwijder ik mijn Ubuntu 11.04 Pidgin en empathie te regelen vanwege de integratie.
Op het moment ben ik begonnen met de toepassing te testen vond ik twee grote problemen.
- Ik kan niet schakelen tussen vensters met Ctrl + Tab
- Ik kan de bestaande venster niet af te sluiten met Esc of Escape
Volgens de makers van deze niet bugs Empathie, maar zegt Gnome Escape = annuleren en Ctrl + Tab = schakelaar focus tussen tekstelementen. Dat is de reden waarom in overeenstemming te zijn met Gnome geen zin om deze opties in je code.
Dan uitzoeken voor een lange tijd heb ik de oplossing gevonden voor dit probleem.
Er is een bestand in het bestandssysteem worden opgezet, waar alle handelingen kunnen worden uitgevoerd op onze GTK venster. Deze acties hebben wat wordt genoemd "Accelerators" zijn sneltoetsen.
Eerst gaan we naar het bestand: / usr / share / empathie / empathie-chat-window.ui
We zullen de site zo sudo (sudo gedit / usr / share / empathie / empathie-chat-window.ui).
Eenmaal geopend zul je zien dat XML is een veel voorkomende en stroom met verschillende acties.
Eerst en vooral u op zoek naar de volgende regel:
1
| id = "menu_conv_close" > <object "GtkAction" class = id = "menu_conv_close"> |
<object class="GtkAction" id="menu_conv_close"> U zult zien dat onder deze lijn zullen er een aantal gelijk aan:
1
| modifiers = "GDK_CONTROL_MASK" /> key = "q" <accelerator modifiers = "GDK_CONTROL_MASK" /> |
key = "q" <accelerator modifiers="GDK_CONTROL_MASK"/> Wat dit zegt is dat af te sluiten het gesprek niet aan Ctrl + K. We willen om het te veranderen om te ontsnappen, verander dan de regel erboven met:
1
| /> key = "Escape" <accelerator /> |
<accelerator key="Escape"/> en klaar
.
Naar het tweede probleem van het veranderen van de ramen met Ctrl + Tab is een beetje ingewikkelder. Standaard GNOME niet laten we de ramen te veranderen met Ctrl + Tab en op zijn beurt, laat geen GTK applicatie bindear een snelkoppeling naar de Tab-toets. Als we willen dit te doen, moeten we contact met de code en het wijzigen van een FLAG Empathie om ons te laten stappen op wat Gnome zegt. Omdat dit zou hard werken te zijn, besloten om Ctrl + Tab en Ctrl + Shift + Tab te veranderen Ctrl + A in dit geval, dat is vrij gelijkaardig.
Kijk dan voor nu in hetzelfde bestand de volgende 2 regels
1
| id = "menu_tabs_prev" > <object "GtkAction" class = id = "menu_tabs_prev"> |
<object class="GtkAction" id="menu_tabs_prev"> 1
| id = "menu_tabs_next" > <object "GtkAction" class = id = "menu_tabs_next"> |
<object class="GtkAction" id="menu_tabs_next"> En veranderen de twee versnellers. De huidige snelkoppelingen zeggen tabblad te veranderen moet je Ctrl + PageDown, wat betekent dat de snelkoppeling moet ik over 3 lagen te gebruiken te gebruiken
. Dan respectievelijk te wijzigen de volgende:
1
| modifiers = "GDK_CONTROL_MASK|GDK_SHIFT_MASK" /> key = "a" <accelerator modifiers = "GDK_CONTROL_MASK|GDK_SHIFT_MASK" /> |
key = "a" <accelerator modifiers="GDK_CONTROL_MASK|GDK_SHIFT_MASK"/> 1
| modifiers = "GDK_CONTROL_MASK" /> key = "a" <accelerator modifiers = "GDK_CONTROL_MASK" /> |
key = "a" <accelerator modifiers="GDK_CONTROL_MASK"/> Daarna opnieuw opstarten Empathie en voila!
Ik geef u mijn configuratie bestand om te beslissen direct stapte:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 | ?> <!--*- mode: xml <? Xml version = "1.0">! <- * - Mode: xml Praten voor alle Contact = "t" modifiers = "GDK_SHIFT_MASK | Tabblad sluiten </ object> </ object> <accelerator key = "t" modifiers = "GDK_SHIFT_MASK | Tab Tab |
<? Xml version = "1.0"> <- * - Mode: xml - * -> <object class = "GtkUIManager" <interface> id = "ui_manager"> <child> <object class = "GtkActionGroup" id = "actiongroup1"> <object class = "GtkAction" <child> id = "menu_conv"> <property name="name"> menu_conv </ object> <property name="label" translatable="yes"> _Conversation < / object> </ object> </ kind> <object class = "GtkAction" <child> id = "menu_conv_clear"> <property name="stock_id"> gtk-clear </ object> <property name="name"> menu_conv_clear </ object> <property name="label" translatable="yes"> C_lear </ object> </ object> <accelerator key="L" modifiers="GDK_CONTROL_MASK"/> </ kind> <child> <object class = "GtkAction" id = "menu_conv_insert_smiley"> <property name="icon-name"> face-glimlach </ object> <property name="name"> menu_conv_insert_smiley </ object> <eigenschap name = "label" vertaalbaar = "ja"> Invoegen _smiley </ object> </ object> </ kind> <object class = "GtkToggleAction" <child> id = "menu_conv_favorite"> <property name="name"> menu_conv_favorite </ object> <eigenschapsnaam = "label" vertaalbare = "yes"> _Favorite Chat Room </ object> </ object> </ kind> <object class = "GtkToggleAction" <child> id = "menu_conv_always_urgent"> <property name="name"> menu_conv_always_urgent </ object> <property name="label" Houd translatable="yes"> voor alle berichten </ object> </ object> </ kind> <object class = "GtkToggleAction" <child> id = "menu_conv_toggle_contacts"> < eigenschap name = "naam"> menu_conv_toggle_contacts </ object> <property name="active"> True </ object> <property name="label" translatable="yes"> _verbergen Contact List </ object> </ object> < / kind> <object class = "GtkAction" <child> id = "menu_conv_invite_participant"> <property name="name"> menu_conv_invite_participant </ object> <property name="label" translatable="yes"> _Participant uitnodigen ... </ eigendom> </ object> </ kind> <object class = "GtkAction" <child> id = "menu_conv_close"> <property name="stock_id"> gtk-close </ object> <property name="name"> menu_conv_close </ object> </ object> <accelerator key="Escape"/> </ kind> <object class = "GtkAction" <child> id = "menu_contact"> <property name="name"> menu_contact </ object> <property name="label" translatable="yes"> C_ontact </ object> </ object> </ kind> <object class = "GtkAction" <child> id = "menu_edit"> <property name="name"> menu_edit </ object> <property name="label" translatable="yes"> _edit </ object> </ object> </ kind> <object class = "GtkAction" <child> id = "menu_edit_cut"> <eigenschapsnaam = "stock_id"> gtk-cut </ object> <property name="name"> menu_edit_cut </ object> </ object> <accelerator key="X" modifiers="GDK_CONTROL_MASK"/> </ kind> <child> <object class="GtkAction" id="menu_edit_copy"> <property name="stock_id"> gtk-copy </ object> <property name="name"> menu_edit_copy </ object> </ object> <accelerator key = " C "modifiers =" GDK_CONTROL_MASK "/> </ kind> <object class =" GtkAction "<child> id =" menu_edit_paste "> <property name="stock_id"> gtk-paste </ object> <eigenschap name =" naam "> menu_edit_paste </ object> </ object> <accelerator key="V" modifiers="GDK_CONTROL_MASK"/> </ kind> <object class =" GtkAction "<child> id =" menu_edit_find "> <eigenschap name =" stock_id "> gtk-vind </ object> <property name="name"> menu_edit_find </ object> </ object> <accelerator key="F" modifiers="GDK_CONTROL_MASK"/> </ kind> <child> <object class = "GtkAction" id = "menu_tabs"> <property name="name"> menu_tabs </ object> <property name="label" translatable="yes"> _Tabs </ object> </ object> </ kind> <object <child> class = "GtkAction" id = "menu_tabs_prev"> <property name="name"> menu_tabs_prev </ object> <property name="label" translatable="yes"> _Previous Tab </ object> </ object> <accelerator key="a" modifiers="GDK_CONTROL_MASK|GDK_SHIFT_MASK"/> </ kind> <object class = "GtkAction" <child> id = "menu_tabs_next"> <property name="name"> menu_tabs_next </ onroerend goed > <property name="label" translatable="yes"> _NEXT Tab </ object> </ object> <accelerator key="a" modifiers="GDK_CONTROL_MASK"/> </ kind> <child> <object class = " GtkAction "id =" menu_tabs_undo_close_tab "> <property name="name"> menu_tabs_undo_close_tab </ object> <property name="label" translatable="yes"> _Undo Tabblad sluiten </ object> </ object> <accelerator key =" t "modifiers =" GDK_SHIFT_MASK | GDK_CONTROL_MASK "/> </ kind> <object class =" GtkAction "<child> id =" menu_tabs_left "> <property name="name"> menu_tabs_left </ object> <eigenschap name =" label "vertaalbare =" yes "> Move Tab _Left </ object> </ object> <accelerator key="Page_Up" modifiers="GDK_CONTROL_MASK|GDK_SHIFT_MASK"/> </ kind> <child> <object class =" GtkAction "id = "menu_tabs_right"> <property name="name"> menu_tabs_right </ object> Move Tab <property translatable="yes"> name = "label" _Right </ object> </ object> <accelerator key = "PAGE_DOWN" modifiers = "GDK_CONTROL_MASK | GDK_SHIFT_MASK" /> </ kind> <object class = "GtkAction" <child> id = "menu_tabs_detach"> <property name="name"> menu_tabs_detach </ object> <eigenschap name = "label" vertaalbaar = " yes "> _Detach Tab </ object> </ object> </ kind> <object class =" GtkAction "<child> id =" menu_help "> <property name="name"> menu_help </ object> <eigenschap name = "label" vertaalbare = "yes"> _Help </ object> </ object> </ kind> <object class = "GtkAction" <child> id = "menu_help_contents"> <property name="stock_id"> gtk-help < / object> <property name="name"> menu_help_contents </ object> <property name="label" translatable="yes"> _Contents </ object> </ object> <accelerator key = "F1" modifiers = "" / > </ kind> <object class = "GtkAction" <child> id = "menu_help_about"> gtk-over <property name="stock_id"> </ object> <property name="name"> menu_help_about </ object> < / object> </ kind> </ object> </ kind> <UI> <menubar name="chats_menubar"> <menu action="menu_conv"> <menuitem action="menu_conv_clear"/> <menuitem action = "menu_conv_insert_smiley" /> <menuitem action="menu_conv_favorite"/> <menuitem action="menu_conv_always_urgent"/> <menuitem action="menu_conv_toggle_contacts"/> <menuitem action="menu_conv_invite_participant"/> <separator/> <menuitem action = "menu_conv_close" / > </ menu> <menu action="menu_contact" /> <menu action="menu_edit"> <menuitem action="menu_edit_cut"/> <menuitem action="menu_edit_copy"/> <menuitem action="menu_edit_paste"/> < separator /> <menuitem action="menu_edit_find"/> </ menu> <menu action="menu_tabs"> <menuitem action="menu_tabs_prev"/> <menuitem action="menu_tabs_next"/> <menuitem action = "menu_tabs_undo_close_tab" / > <separator/> <menuitem action="menu_tabs_left"/> <menuitem action="menu_tabs_right"/> <menuitem action="menu_tabs_detach"/> </ menu> <menu action="menu_help"> <menuitem action = "menu_help_contents "/> <placeholder name="LaunchpadItems"/> <menuitem action="menu_help_about"/> </ menu> </ menubalk> </ u> </ object> <object class="GtkWindow" id="chat_window"> <property name="title" translatable="yes"> Chat </ object> <property name="role"> chat </ object> <property name="default_width"> 580 </ object> <eigenschap name = "default_height "> 480 </ object> <object class =" GtkVBox "<child> id =" chat_vbox "> <property name="visible"> True </ object> <child> <object class =" GtkMenuBar "bouwer =" ui_manager "id =" chats_menubar "> <property name="visible"> True </ object> </ object> <property name="expand"> <packing> False </ object> <property name="fill"> False < / object> </ verpakking> </ kind> <child> <placeholder/> </ kind> </ object> </ kind> </ object> </ interface> 














