What I was pointing out is that the breakpoint cannot cause the window focus to change if it is never hit. However, the breakpoint had been hit previously, and I assume that this prior change in focus caused a change that prevented to bug. Thanks again for helping fix it.
On Tue, Mar 24, 2015 at 12:33 AM, Leif Theden <[email protected]> wrote: > As I noted before, the breakpoint causes window focus to change and due to > some circumstance of the window losing focus, the odd behavior seems to be > avoided. The cause of the ALT key bug is related to windows and pyglet not > correctly handling the ALT key (which will open a window menu bar in some > situations): when the alt key is pressed, windows sends a special event to > pyglet. The event is handled but the return value back to windows was > never correct (source of the bug). The default behavior in this case is to > display a window menu bar, which windows attempts to do, but it is not > implemented in pyglet and this condition puts the window and pyglet's event > queue into an undefined state, and causes some events to be dropped. In > this case there events are key presses/releases. Nothing cosmic about it. > Please see the link I previously posted for more information. > > > On Sunday, March 22, 2015 at 12:45:49 PM UTC-5, pyglet_has_bugs wrote: >> >> Thank you very much for your thorough reply. Your guess about the >> breakpoints doesn't make sense to me, because the order of causality does >> not flow in that order. When my program is in a state in which pressing A >> will not trigger a key press event (because I've just pressed and released >> ALT), and I press A, then no key pressed event fires--unless there is a >> break point in on_key_press. So you see, the breakpoint can only be hit if >> the code *has already performed correctly in the place that it normally >> fails*. This indicates to me that something horrible is going on. I am >> amazed. >> >> On Sun, Mar 22, 2015 at 1:52 AM, Leif Theden <[email protected]> wrote: >> >>> I fixed it a while ago, but the fix was never merged. Tonight I applied >>> an old patch I made and made a pull request. It may be a few days until >>> this is fixed in bitbucket. In the mean time, don't assign anything to the >>> ALT key. This bug has been known for a long time, but only affects windows >>> users, and is related to the ALT key, which not many people use anyway. >>> >>> I can't say how the breakpoints affects it for certain, but my guess is >>> that the breakpoints are causing the pyglet window to lose focus, which >>> interferes with key events in windows, and those side effects don't cause >>> the behavior that was causing erratic input after pressing ALT. A debugger >>> should never cause functions to work differently. In this case it is more >>> related to the windows window manager more than anything. >>> >>> >>> On Saturday, March 21, 2015 at 8:54:06 PM UTC-7, pyglet_has_bugs wrote: >>> >>>> Wow, so this has been known for a while, and you just finally fixed it? >>>> Just for me? :o :D >>>> >>>> On Saturday, March 21, 2015 at 8:31:02 PM UTC-4, Leif Theden wrote: >>>>> >>>>> Please, your nick 'pyglet_has_bugs' is a bit excessive; 99.999% >>>>> software projects have bugs. In any case, thank you for the detailed bug >>>>> report. In the future please submit bug reports to >>>>> https://bitbucket.org/pyglet/pyglet/issues. Finally, I've fixed the >>>>> problem on my branch and submitted a pull request. >>>>> >>>>> In case anyone is interested, the issue is documented here: >>>>> https://code.google.com/p/pyglet/issues/detail?id=462&q=leif >>>>> &colspec=ID%20Stars%20Type%20Status%20OpSys%20Modified%20Summary >>>>> >>>>> >>>>> On Saturday, March 21, 2015 at 5:19:02 PM UTC-5, pyglet_has_bugs wrote: >>>>>> >>>>>> Someone on reddit.com/r/learnpython says they couldn't reproduce the >>>>>> bug with Pyglet 1.2.2 and Python 3 on Linux. >>>>>> >>>>>> http://redd.it/2zqtyf >>>>>> >>>>> -- >>> You received this message because you are subscribed to a topic in the >>> Google Groups "pyglet-users" group. >>> To unsubscribe from this topic, visit https://groups.google.com/d/ >>> topic/pyglet-users/DuHs6HxXSm0/unsubscribe. >>> To unsubscribe from this group and all its topics, send an email to >>> [email protected]. >>> To post to this group, send email to [email protected]. >>> Visit this group at http://groups.google.com/group/pyglet-users. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> -- > You received this message because you are subscribed to a topic in the > Google Groups "pyglet-users" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/pyglet-users/DuHs6HxXSm0/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/pyglet-users. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "pyglet-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/pyglet-users. For more options, visit https://groups.google.com/d/optout.
