3030# pylint: disable=import-error,wrong-import-position
3131import gi
3232
33- from qrexec .server import SocketService
34- from qrexec .utils import sanitize_domain_name
35- from qubesadmin .device_protocol import DeviceSerializer
36-
3733gi .require_version ("Gtk" , "3.0" )
38- from gi .repository import Gtk , Gdk
39- from qrexec .tools .qrexec_policy_agent import (
40- VMListModeler , RPCConfirmationWindow )
34+ from gi .repository import Gtk
4135
4236# pylint: enable=import-error
4337
4640
4741# pylint: enable=wrong-import-position
4842
43+ from qrexec .server import SocketService
44+ from qrexec .utils import sanitize_domain_name
45+ from qrexec .tools .qrexec_policy_agent import (
46+ VMListModeler , RPCConfirmationWindow )
47+ from qubesadmin .device_protocol import DeviceSerializer
48+
49+
4950DEVICE_AGENT_SOCKET_PATH = "/var/run/qubes/device-agent.GUI"
5051
5152
@@ -75,11 +76,10 @@ def _override_entries(self, options):
7576
7677 def apply_icon (self , entry , qube_name ):
7778 if isinstance (entry , Gtk .Entry ):
78- for key , vm_info in self ._entries .items ():
79+ for vm_info in self ._entries .values ():
7980 if qube_name == vm_info ['api_name' ]:
8081 entry .set_icon_from_pixbuf (
81- Gtk .EntryIconPosition .PRIMARY ,
82- self ._entries [key ]["icon" ],
82+ Gtk .EntryIconPosition .PRIMARY , vm_info ["icon" ],
8383 )
8484 break
8585 else :
@@ -107,8 +107,12 @@ class AttachmentConfirmationWindow(RPCConfirmationWindow):
107107 "error_message" : "ErrorMessage" ,
108108 }
109109
110+ # We reuse most parts of superclass, but we need custom init,
111+ # so we DO NOT call super().__init__()
112+ # pylint: disable=super-init-not-called
110113 def __init__ (
111- self , entries_info , source , device_name , argument , targets_list , target = None
114+ self ,
115+ entries_info , source , device_name , argument , targets_list , target = None
112116 ):
113117 # pylint: disable=too-many-arguments
114118 sanitize_domain_name (source , assert_sanitized = True )
@@ -153,7 +157,7 @@ def __init__(
153157
154158 options = {name : " " + options for vm_data in targets_list
155159 for name , _ , options in (vm_data .partition (" " ),)}
156- list_modeler = self ._new_vm_list_modeler (options )
160+ list_modeler = self ._new_vm_list_modeler_overridden (options )
157161
158162 list_modeler .apply_model (
159163 self ._rpc_combo_box ,
@@ -171,7 +175,7 @@ def __init__(
171175
172176 self ._connect_events ()
173177
174- def _new_vm_list_modeler (self , options ):
178+ def _new_vm_list_modeler_overridden (self , options ):
175179 return VMAndPortListModeler (options , self ._entries_info )
176180
177181
0 commit comments