View Single Post
daperl's Avatar
Posts: 2,427 | Thanked: 2,986 times | Joined on Dec 2007
#64
Originally Posted by qwerty12 View Post
Hacked applet to have right click menu with "left" mouse button
Here's some basic code to simulate tap-and-hold:

Code:
class whatever(...):
    ...
    tah_timeout = 1000 # milliseconds
    tah_max_dist = 5 # pixels
    ...
    def __init__(self...):
        ...
        self.press_event = None
        self.button_is_down = False
        self.connect('button-press-event', self.on_button_press)
        self.connect('button-release-event', self.on_button_release)
        ...

    def tap_and_hold(self):
        if self.button_is_down:
            x, y = self.get_pointer()
            dx = abs(x - self.press_event.x)
            dy = abs(y - self.press_event.y)
            if dy <= self.tah_max_dist and dx <= self.tah_max_dist:
                self.press_event.button = 3
                self.press_event.time = gtk.get_current_event_time()
                gtk.main_do_event(self.press_event)
        return False

    def on_button_press(self, widget, event):
        self.button_is_down = True
        self.press_event = event.copy()
        gobject.timeout_add(self.tah_timeout, self.tap_and_hold)

    def on_button_release(self, widget, event):
        self.button_is_down = False
__________________
N9: Go white or go home
 

The Following 5 Users Say Thank You to daperl For This Useful Post: