@@ -87,7 +87,7 @@ def __init__(self, font):
87
87
self ._font_size = font [1 ]
88
88
self ._attrs = None
89
89
self ._busy = False
90
- self ._mouse_enabled = False
90
+ self ._mouse_enabled = True
91
91
self ._insert_cursor = False
92
92
self ._blink = False
93
93
self ._blink_timer_id = None
@@ -115,10 +115,10 @@ def create_drawing_area(self, handle):
115
115
window .connect ('delete-event' , self ._gtk_quit )
116
116
window .connect ('key-press-event' , self ._gtk_key )
117
117
window .connect ('key-release-event' , self ._gtk_key_release )
118
- window .connect ('button-press-event' , self ._gtk_button_press )
119
- window .connect ('button-release-event' , self ._gtk_button_release )
120
- window .connect ('motion-notify-event' , self ._gtk_motion_notify )
121
- window .connect ('scroll-event' , self ._gtk_scroll )
118
+ window .connect ('button-press-event' , partial ( self ._gtk_button_press , self . g ) )
119
+ window .connect ('button-release-event' , partial ( self ._gtk_button_release , self . g ) )
120
+ window .connect ('motion-notify-event' , partial ( self ._gtk_motion_notify , self . g ) )
121
+ window .connect ('scroll-event' , partial ( self ._gtk_scroll , self . g ) )
122
122
window .connect ('focus-in-event' , self ._gtk_focus_in )
123
123
window .connect ('focus-out-event' , self ._gtk_focus_out )
124
124
window .show_all ()
@@ -404,7 +404,7 @@ def _gtk_key(self, widget, event, *args):
404
404
def _gtk_key_release (self , widget , event , * args ):
405
405
self ._im_context .filter_keypress (event )
406
406
407
- def _gtk_button_press (self , widget , event , * args ):
407
+ def _gtk_button_press (self , g , widget , event , * args ):
408
408
if not self ._mouse_enabled or event .type != Gdk .EventType .BUTTON_PRESS :
409
409
return
410
410
button = 'Left'
@@ -415,24 +415,25 @@ def _gtk_button_press(self, widget, event, *args):
415
415
col = int (math .floor (event .x / self ._cell_pixel_width ))
416
416
row = int (math .floor (event .y / self ._cell_pixel_height ))
417
417
input_str = _stringify_key (button + 'Mouse' , event .state )
418
- input_str += '<{0},{1}>' .format (col , row )
418
+ input_str += '<{},{},{}>' .format (g .handle , col , row )
419
+ print (input_str ,file = sys .stderr )
419
420
self ._bridge .input (input_str )
420
421
self ._pressed = button
421
422
return True
422
423
423
- def _gtk_button_release (self , widget , event , * args ):
424
+ def _gtk_button_release (self , g , widget , event , * args ):
424
425
self ._pressed = None
425
426
426
- def _gtk_motion_notify (self , widget , event , * args ):
427
+ def _gtk_motion_notify (self , g , widget , event , * args ):
427
428
if not self ._mouse_enabled or not self ._pressed :
428
429
return
429
430
col = int (math .floor (event .x / self ._cell_pixel_width ))
430
431
row = int (math .floor (event .y / self ._cell_pixel_height ))
431
432
input_str = _stringify_key (self ._pressed + 'Drag' , event .state )
432
- input_str += '<{0 },{1} >' .format (col , row )
433
+ input_str += '<{},{},{} >' .format (g . handle , col , row )
433
434
self ._bridge .input (input_str )
434
435
435
- def _gtk_scroll (self , widget , event , * args ):
436
+ def _gtk_scroll (self , g , widget , event , * args ):
436
437
if not self ._mouse_enabled :
437
438
return
438
439
col = int (math .floor (event .x / self ._cell_pixel_width ))
@@ -444,7 +445,7 @@ def _gtk_scroll(self, widget, event, *args):
444
445
else :
445
446
return
446
447
input_str = _stringify_key (key , event .state )
447
- input_str += '<{0 },{1} >' .format (col , row )
448
+ input_str += '<{},{},{} >' .format (g . handle , col , row )
448
449
self ._bridge .input (input_str )
449
450
450
451
def _gtk_focus_in (self , * a ):
0 commit comments