Change per VM keyboard layout from manager.
This commit is contained in:
parent
2f81711fc2
commit
c2179d9234
BIN
icons/kbd-layout.png
Normal file
BIN
icons/kbd-layout.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.5 KiB |
@ -278,6 +278,7 @@
|
|||||||
<addaction name="action_editfwrules"/>
|
<addaction name="action_editfwrules"/>
|
||||||
<addaction name="action_appmenus"/>
|
<addaction name="action_appmenus"/>
|
||||||
<addaction name="action_updatevm"/>
|
<addaction name="action_updatevm"/>
|
||||||
|
<addaction name="action_set_keyboard_layout"/>
|
||||||
<addaction name="separator"/>
|
<addaction name="separator"/>
|
||||||
<addaction name="action_global_settings"/>
|
<addaction name="action_global_settings"/>
|
||||||
<addaction name="action_backup"/>
|
<addaction name="action_backup"/>
|
||||||
@ -571,6 +572,18 @@
|
|||||||
<string>Kill selected VM</string>
|
<string>Kill selected VM</string>
|
||||||
</property>
|
</property>
|
||||||
</action>
|
</action>
|
||||||
|
<action name="action_set_keyboard_layout">
|
||||||
|
<property name="icon">
|
||||||
|
<iconset resource="resources.qrc">
|
||||||
|
<normaloff>:/kbd-layout.png</normaloff>:/kbd-layout.png</iconset>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Set keyboard layout</string>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>Set keyboard layout per VM</string>
|
||||||
|
</property>
|
||||||
|
</action>
|
||||||
</widget>
|
</widget>
|
||||||
<resources>
|
<resources>
|
||||||
<include location="resources.qrc"/>
|
<include location="resources.qrc"/>
|
||||||
|
@ -659,6 +659,7 @@ class VmManagerWindow(Ui_VmManagerWindow, QMainWindow):
|
|||||||
self.context_menu.addAction(self.action_appmenus)
|
self.context_menu.addAction(self.action_appmenus)
|
||||||
self.context_menu.addAction(self.action_editfwrules)
|
self.context_menu.addAction(self.action_editfwrules)
|
||||||
self.context_menu.addAction(self.action_updatevm)
|
self.context_menu.addAction(self.action_updatevm)
|
||||||
|
self.context_menu.addAction(self.action_set_keyboard_layout)
|
||||||
|
|
||||||
self.table_selection_changed()
|
self.table_selection_changed()
|
||||||
|
|
||||||
@ -959,6 +960,7 @@ class VmManagerWindow(Ui_VmManagerWindow, QMainWindow):
|
|||||||
self.action_appmenus.setEnabled(not vm.is_netvm())
|
self.action_appmenus.setEnabled(not vm.is_netvm())
|
||||||
self.action_editfwrules.setEnabled(vm.is_networked() and not (vm.is_netvm() and not vm.is_proxyvm()))
|
self.action_editfwrules.setEnabled(vm.is_networked() and not (vm.is_netvm() and not vm.is_proxyvm()))
|
||||||
self.action_updatevm.setEnabled(vm.is_updateable() or vm.qid == 0)
|
self.action_updatevm.setEnabled(vm.is_updateable() or vm.qid == 0)
|
||||||
|
self.action_set_keyboard_layout.setEnabled(vm.qid != 0 and vm.last_running)
|
||||||
else:
|
else:
|
||||||
self.action_settings.setEnabled(False)
|
self.action_settings.setEnabled(False)
|
||||||
self.action_removevm.setEnabled(False)
|
self.action_removevm.setEnabled(False)
|
||||||
@ -969,6 +971,7 @@ class VmManagerWindow(Ui_VmManagerWindow, QMainWindow):
|
|||||||
self.action_appmenus.setEnabled(False)
|
self.action_appmenus.setEnabled(False)
|
||||||
self.action_editfwrules.setEnabled(False)
|
self.action_editfwrules.setEnabled(False)
|
||||||
self.action_updatevm.setEnabled(False)
|
self.action_updatevm.setEnabled(False)
|
||||||
|
self.action_set_keyboard_layout.setEnabled(False)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1310,6 +1313,14 @@ class VmManagerWindow(Ui_VmManagerWindow, QMainWindow):
|
|||||||
return
|
return
|
||||||
thread_monitor.set_finished()
|
thread_monitor.set_finished()
|
||||||
|
|
||||||
|
|
||||||
|
@pyqtSlot(name='on_action_set_keyboard_layout_triggered')
|
||||||
|
def action_set_keyboard_layout_triggered(self):
|
||||||
|
print "change layout!"
|
||||||
|
vm = self.get_selected_vm()
|
||||||
|
subprocess.Popen( ['qvm-run', vm.name, 'qubes-change-keyboard-layout'])
|
||||||
|
|
||||||
|
|
||||||
@pyqtSlot(name='on_action_showallvms_triggered')
|
@pyqtSlot(name='on_action_showallvms_triggered')
|
||||||
def action_showallvms_triggered(self):
|
def action_showallvms_triggered(self):
|
||||||
self.show_inactive_vms = self.action_showallvms.isChecked()
|
self.show_inactive_vms = self.action_showallvms.isChecked()
|
||||||
|
@ -11,6 +11,7 @@
|
|||||||
<file alias="show-all-running.png">icons/on-icon/show-all-running.png</file>
|
<file alias="show-all-running.png">icons/on-icon/show-all-running.png</file>
|
||||||
<file alias="mount.png">icons/mount.png</file>
|
<file alias="mount.png">icons/mount.png</file>
|
||||||
<file alias="log.png">icons/log.png</file>
|
<file alias="log.png">icons/log.png</file>
|
||||||
|
<file alias="kbd-layout.png">icons/kbd-layout.png</file>
|
||||||
<file alias="pencil.png">icons/pencil.png</file>
|
<file alias="pencil.png">icons/pencil.png</file>
|
||||||
<file alias="redfirewall.png">icons/redfirewall.png</file>
|
<file alias="redfirewall.png">icons/redfirewall.png</file>
|
||||||
<file alias="edit.png">icons/edit.png</file>
|
<file alias="edit.png">icons/edit.png</file>
|
||||||
|
Loading…
Reference in New Issue
Block a user