Terry J. Reedy added the comment:

I experimented more with 3.5.1, Win 10 and formulated a question and hypothesis.

In a text widget, pressing button 1 (usually the left) moves the cursor to the 
nearest between-character slice line.  Hold the button down allows selecting 
text.  Releasing and pressing again selects a word after moving the cursor.  
Pretty standard behavior, independent of IDLE.  I believe the bindings are Text 
class rather than instance bindings.

When a completion box is present, button 1 down outside the box dismiss the box 
and moves the cursor.  I believe this is intended.  I don't know how general 
this behavior is.

The IDLE completion box binds the button *release* to, I believe, "move cursor 
to line clicked and display line in text".  A double click is supposed to do 
something more.  So the button1 press event goes to the Text, which dismisses 
the popup and moves the cursor.

Question: does the text widget freezes on button down or not until button up.  
The experiment is to press and hold the button while moving the mouse.  Does 
the cursor move and select text while the button is down, or does it freeze 
immediately.  Paul, could you try this?

Hypothesis (cause): a delicate timing issue? Is the button-up event somehow 
'half-caught'?

Hypothesis (fix): prevent the text from seeing or acting on the button down 
event.  It should be possible to have the completion box catch the down event 
first and return 'break'.  My first attempt failed but I was too tired to 
continue.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue15786>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to