Example #1
0
    def _register_atspi_focus_listeners(self, register):
        if "Atspi" not in globals():
            return

        if self._focus_listeners_registered != register:

            if register:
                self.atspi_connect("_listener_focus", "focus",
                                   self._on_atspi_global_focus)
                self.atspi_connect("_listener_object_focus",
                                   "object:state-changed:focused",
                                   self._on_atspi_object_focus)

                # private asynchronous events
                for name in self._async_event_names:
                    handler = "_on_" + name.replace("-", "_")
                    EventSource.connect(self, name, getattr(self, handler))
            else:
                self.atspi_disconnect("_listener_focus", "focus")
                self.atspi_disconnect("_listener_object_focus",
                                      "object:state-changed:focused")

                for name in self._async_event_names:
                    handler = "_on_" + name.replace("-", "_")
                    EventSource.disconnect(self, name, getattr(self, handler))

            self._focus_listeners_registered = register
Example #2
0
    def _register_atspi_focus_listeners(self, register):
        if "Atspi" not in globals():
            return

        if self._focus_listeners_registered != register:

            if register:
                self.atspi_connect("_listener_focus",
                                   "focus",
                                   self._on_atspi_global_focus)
                self.atspi_connect("_listener_object_focus",
                                   "object:state-changed:focused",
                                   self._on_atspi_object_focus)

                # private asynchronous events
                for name in self._async_event_names:
                    handler = "_on_" + name.replace("-", "_")
                    EventSource.connect(self, name, getattr(self, handler))
            else:
                self.atspi_disconnect("_listener_focus",
                                      "focus")
                self.atspi_disconnect("_listener_object_focus",
                                      "object:state-changed:focused")

                for name in self._async_event_names:
                    handler = "_on_" + name.replace("-", "_")
                    EventSource.disconnect(self, name, getattr(self, handler))

            self._focus_listeners_registered = register
 def _begin_mapping(self, event_source, button, click_type):
     # remap button
     if button != self.PRIMARY_BUTTON and \
        click_type == self.CLICK_TYPE_SINGLE:
         # "grab" the pointer so we can detect button-release
         # anywhere on screen. Works only with XInput as InputEventSource.
         self._grab_event_source = event_source
         event_source.grab_xi_pointer(True)
         EventSource.connect(event_source, "button-release",
                         self._on_xi_button_release)
         self._osk_cm.map_pointer_button(button)
         self._osk_cm.button = button
         self._osk_cm.click_type = click_type
     else:
         self._set_next_mouse_click(button, click_type)
Example #4
0
 def _begin_mapping(self, event_source, button, click_type):
     # remap button
     if button != self.PRIMARY_BUTTON and \
        click_type == self.CLICK_TYPE_SINGLE:
         # "grab" the pointer so we can detect button-release
         # anywhere on screen. Works only with XInput as InputEventSource.
         self._grab_event_source = event_source
         event_source.grab_xi_pointer(True)
         EventSource.connect(event_source, "button-release",
                         self._on_xi_button_release)
         self._osk_cm.map_pointer_button(button)
         self._osk_cm.button = button
         self._osk_cm.click_type = click_type
     else:
         self._set_next_mouse_click(button, click_type)
Example #5
0
 def connect(self, event_name, callback):
     EventSource.connect(self, event_name, callback)
     self._update_listeners()
Example #6
0
 def connect(self, event_name, callback):
     EventSource.connect(self, event_name, callback)
     self.update_sensor_sources()
Example #7
0
 def connect(self, event_name, callback):
     EventSource.connect(self, event_name, callback)
     self._update_listeners()
Example #8
0
 def connect(self, event_name, callback):
     EventSource.connect(self, event_name, callback)
     self._update_registered_events()