@@ -990,17 +990,27 @@ Item {
990 Component {
990 Component {
991 id: keymapMenu;
991 id: keymapMenu;
993− Menus.CheckableMenu {
993+ // FIXME this should use a "radio button" menu, once we have it in the SDK
994 id: checkItem
995 id: checkItem
995 objectName: "keymapMenu"
996 objectName: "keymapMenu"
996 property QtObject menuData: null
997 property QtObject menuData: null
997 property int menuIndex: -1
998 property int menuIndex: -1
998 readonly property bool serverChecked: menuData && menuData.isToggled || false
999 readonly property bool serverChecked: menuData && menuData.isToggled || false
1000− text: menuData && menuData.label || ""
1001 enabled: menuData && menuData.sensitive || false
1001 enabled: menuData && menuData.sensitive || false
1002− checked: serverChecked
1003 highlightWhenPressed: false
1002 highlightWhenPressed: false
1003+ __acceptEvents: !serverChecked
1007+ __acceptEvents: !checkItem.serverChecked
1010+ leftMargin: checkItem.__contentsMargins
1011+ verticalCenter: parent.verticalCenter
1005 ServerPropertySynchroniser {
1015 ServerPropertySynchroniser {
1006 objectName: "sync"
1016 objectName: "sync"
@@ -1008,13 +1018,28 @@ Item {
1009 serverTarget: checkItem
1019 serverTarget: checkItem
1010 serverProperty: "serverChecked"
1020 serverProperty: "serverChecked"
1011− userTarget: checkItem
1021+ userTarget: checkbox
1012 userProperty: "checked"
1022 userProperty: "checked"
1014 onSyncTriggered: {
1024 onSyncTriggered: {
1015 menuModel.activate(checkItem.menuIndex);
1025 menuModel.activate(checkItem.menuIndex);
1032+ left: checkbox.right
1033+ leftMargin: checkItem.__contentsMargins
1034+ right: parent.right
1035+ rightMargin: checkItem.__contentsMargins
1036+ verticalCenter: parent.verticalCenter
1038+ elide: Text.ElideRight
1039+ text: checkItem.menuData && checkItem.menuData.label || ""
1042+ onClicked: menuModel.activate(menuIndex);