私のUbuntu 11.04ピジンと共感を削除することを決めた他の日は、その統合のために落ち着く。
すぐに私は2つの主要な問題を発見したアプリケーションをテストし始めた。
- 私はCtrl + Tabキーでウィンドウを切り替えることはできません
- 私は、EscキーまたはEscで、既存のウィンドウを閉じることはできません
これらのクリエイターによれば、バグの共感ではありませんが、Gnomeのテキスト要素の間の=キャンセルとCtrl + Tabキー=スイッチのフォーカスをエスケープすると言います。 コード内でこれらのオプションを置きたくないのGnomeとの整合性を保つために、その理由です。
それから私はこの問題に対する修正を発見し、長時間把握する。
ファイルシステム内のファイルは、すべてのアクションが私たちのGTKウィンドウ上で実行することができますどこに設定されているがあります。 これらのアクションは、 "アクセラレータ"と呼ばれているものを持っているキーボードショートカットがあります。
まず、ファイルにアクセスしてください。を/ usr / share /共感/共感·チャットwindow.ui
我々は、sudoのように編集します(sudo geditのを/ usr / share /共感/共感·チャットwindow.ui)。
一度、XMLはさまざまなアクションと共通し、現在であることがわかりますオープンしました。
:あなたは次の行を探しますまず第一に
<object class="GtkAction" id="menu_conv_close">
この行の下にいくつかの類似があることが表示されます。
キー= "q"を<accelerator modifiers="GDK_CONTROL_MASK"/>
これは何を言うことは会話を閉じるには、Ctrl + Kには手を触れないということです 次に、上記の行を変更し、脱出するためにそれを変更したい:
<accelerator key="Escape"/>
と準備
。
Ctrl + Tabキーでウィンドウを変更する2番目の問題に行くのは少し複雑です。 デフォルトでは、GNOMEは、私たちはCtrl + Tabキーで順番にウィンドウを変更することはできません、TabキーへのショートカットをすべてのGTKアプリケーションはbindear残していません。 我々はこれをやってみたかったのならば、我々はコードに触れ、私たちはGnomeの言うことを踏ませるためにFLAGの共感を変更する必要があります。 これは大変な作業になる予定だったように、CtrlキーにCtrl + TabやCtrl + Shift + Tabキーを変更することを決めた+非常によく似ていますこの場合、インチ
その後、次の2行は同じファイルに今探し
<object class="GtkAction" id="menu_tabs_prev">
<object class="GtkAction" id="menu_tabs_next">
と2のアクセラレータを変更します。 現在のショートカットは、ショートカットは、私は約3コートを使用する必要があることを意味しますCtrlキーを押しながらPageDownキーを使用する必要がタブを変更するには、言う
。 その後、それぞれ次のように変更します。
キー= "1" <accelerator modifiers="GDK_CONTROL_MASK|GDK_SHIFT_MASK"/>
キー= "1" <accelerator modifiers="GDK_CONTROL_MASK"/>
その後、共感と出来上がりを再起動します!
私は、直接ステップを決定するためにあなたが私の設定ファイルを残す:
<?XMLのバージョン= "1.0"> <! - * - モード:XML - * - > <オブジェクトのクラス= "GtkUIManager"の<interface> ID = "ui_manager"> <child> <オブジェクトのクラス= "GtkActionGroup" ID = "actiongroup1"> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_conv"> <property name="name">をmenu_conv </プロパティ> <property name="label" translatable="yes"> _Conversation < /プロパティ> </ OBJECT> </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_conv_clear"> <property name="stock_id">のgtk-クリア</プロパティ> <property name="name">をmenu_conv_clear </プロパティ> <property name="label" translatable="yes"> C_lear </プロパティ> </ OBJECT> <accelerator key="L" modifiers="GDK_CONTROL_MASK"/> </子> <child> <オブジェクトクラス= "GtkAction" ID = "menu_conv_insert_smiley"> <property name="icon-name">顔笑顔</プロパティ> <property name="name">をmenu_conv_insert_smiley </プロパティ> <プロパティ名= "ラベル"の翻訳= "はい">挿入_smiley </プロパティ> </ OBJECT> </子> <オブジェクトのクラス= "GtkToggleAction" <child> ID = "menu_conv_favorite"> <property name="name">をmenu_conv_favorite </プロパティ> <プロパティ名= "ラベル"の翻訳= "yes"を> _Favoriteチャットルーム</プロパティ> </ OBJECT> </子> <オブジェクトのクラス= "GtkToggleAction" <child> ID = "menu_conv_always_urgent"> <property name="name">をmenu_conv_always_urgent </プロパティ> <property name="label"すべてのメッセージのためにtranslatable="yes">を受け取る</プロパティ> </ OBJECT> </子> <オブジェクトのクラス= "GtkToggleAction" <child> ID = "menu_conv_toggle_contacts"> <プロパティ名= "名前"> menu_conv_toggle_contacts </プロパティ> <property name="active"> TRUE </プロパティ> <property name="label" translatable="yes"> _Showの連絡先リスト</プロパティ> </オブジェクト> < /子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_conv_invite_participant"> <property name="name">をmenu_conv_invite_participant </プロパティ> <property name="label" translatable="yes"> _Participant招待... </プロパティー> </ OBJECT> </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_conv_close"> <property name="stock_id">のgtk-閉じる</プロパティ> <property name="name">をmenu_conv_close </プロパティ> </ OBJECT> <accelerator key="Escape"/> </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_contact"> <property name="name">をmenu_contact </プロパティ> <property name="label" translatable="yes"> C_ontact </プロパティ> </ OBJECT> </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_edit"> <property name="name">をmenu_edit </プロパティ> <property name="label" translatable="yes"> _edit </プロパティ> </ OBJECT> </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_edit_cut"> <プロパティ名= "stock_id">のgtk-カット</プロパティ> <property name="name">をmenu_edit_cut </プロパティ> </ OBJECT> <accelerator key="X" modifiers="GDK_CONTROL_MASK"/> </子> <child> <object class="GtkAction" id="menu_edit_copy"> <property name="stock_id">のgtk-コピー</プロパティ> <property name="name">をmenu_edit_copy </プロパティ> </オブジェクト> <アクセラレータキー= " C "修飾子=" GDK_CONTROL_MASK "/> </子> <オブジェクトのクラス=" GtkAction "<child> ID =" menu_edit_paste "> <property name="stock_id">のgtk-貼り付け</プロパティ> <プロパティ名="名前"> menu_edit_paste </プロパティ> </ OBJECT> <accelerator key="V" modifiers="GDK_CONTROL_MASK"/> </子> <オブジェクトのクラス=" GtkAction "<child> ID =" menu_edit_find "> <プロパティ名=" stock_id ">のgtk-見つける</プロパティ> <property name="name">をmenu_edit_find </プロパティ> </ OBJECT> <accelerator key="F" modifiers="GDK_CONTROL_MASK"/> </子> <child> <オブジェクトクラス= "GtkAction" ID = "menu_tabs"> <property name="name">をmenu_tabs </プロパティ> <property name="label" translatable="yes"> _Tabs </プロパティ> </ OBJECT> </子> <オブジェクト<child>クラス= "GtkAction" ID = "menu_tabs_prev"> <property name="name">をmenu_tabs_prev </プロパティ> <property name="label" translatable="yes"> _Previousタブ</プロパティ> </オブジェクト> <accelerator key="a" modifiers="GDK_CONTROL_MASK|GDK_SHIFT_MASK"/> </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_tabs_next"> <property name="name">をmenu_tabs_next </プロパティ> <property name="label" translatable="yes"> _NEXTタブ</プロパティ> </ OBJECT> <accelerator key="a" modifiers="GDK_CONTROL_MASK"/> </子> <child> <オブジェクトクラス= " GtkActionの "id =" menu_tabs_undo_close_tab "> <property name="name">をmenu_tabs_undo_close_tab </プロパティ> <property name="label" translatable="yes"> _Undoタブを閉じる</プロパティ> </オブジェクト> <アクセラレータキー=" T "修飾子=" GDK_SHIFT_MASK | GDK_CONTROL_MASK "/> </子> <オブジェクトのクラス=" GtkAction "<child> ID =" menu_tabs_left "> <property name="name">をmenu_tabs_left </プロパティ> <プロパティ名="ラベル"翻訳=" yes "を>移動タブ_Left </プロパティ> </ OBJECT> <accelerator key="Page_Up" modifiers="GDK_CONTROL_MASK|GDK_SHIFT_MASK"/> </子> <child> <オブジェクトのクラス=" GtkAction "ID = "menu_tabs_right"> <property name="name">をmenu_tabs_right </プロパティ>移動タブ<property translatable="yes">名= "ラベル" _Right </プロパティ> </オブジェクト> <アクセラレータキー= "PAGE_DOWN"修飾子= "GDK_CONTROL_MASK | GDK_SHIFT_MASK" /> </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_tabs_detach"> <property name="name">をmenu_tabs_detach </プロパティ> <プロパティ名= "ラベル"の翻訳= "はい "> _Detachタブ</プロパティ> </ OBJECT> </子> <オブジェクトのクラス=" GtkAction "<child> ID =" menu_help "> <property name="name">をmenu_help </プロパティ> <プロパティ名= "ラベル"の翻訳= "yes"を> _Help </プロパティ> </ OBJECT> </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_help_contents"> <property name="stock_id">のgtk-助ける< /プロパティ> <property name="name">をmenu_help_contents </プロパティ> <property name="label" translatable="yes"> _Contents </プロパティ> </オブジェクト> <アクセラレータキー= "F1"修飾子= "" / > </子> <オブジェクトのクラス= "GtkAction" <child> ID = "menu_help_about"> <propertyのgtk-約name="stock_id"> </プロパティ> <property name="name">をmenu_help_about </プロパティ> < / OBJECT> </子> </ OBJECT> </子> <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 action="menu_contact" /> <menu action="menu_edit"> <menuitem action="menu_edit_cut"/> <menuitem action="menu_edit_copy"/> <menuitem action="menu_edit_paste"/> <セパレータ/> <menuitem action="menu_edit_find"/> </メニュー> <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 action="menu_help"> <のMenuItemでaction = "menu_help_contents "/> <placeholder name="LaunchpadItems"/> <menuitem action="menu_help_about"/> </メニュー> </メニューバー> </ U> </オブジェクト> <object class="GtkWindow" id="chat_window"> <property name="title" translatable="yes">チャット</プロパティ> <property name="role">チャット</プロパティ> <property name="default_width"> 580 </プロパティ> <プロパティ名= "default_height "> 480 </プロパティ> <オブジェクトのクラス=" GtkVBox "<child> ID =" chat_vbox "> <property name="visible"> TRUE </プロパティ> <child> <オブジェクトのクラス=" GtkMenuBar "ビルダー=" ui_manager "ID =" chats_menubar "> <property name="visible"> TRUE </プロパティ> </ OBJECT> <property name="expand"> <packing>偽</プロパティ> <property name="fill">偽< /プロパティ> </パッキン> </子> <child> <placeholder/> </子> </ OBJECT> </子> </ OBJECT> </インターフェース>
続きを読む