After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 569748 - problem when move-cursor called from bind-keys
problem when move-cursor called from bind-keys
Status: RESOLVED NOTABUG
Product: Sawfish
Classification: Deprecated
Component: Window Manager
1.3.x
Other All
: Normal normal
: 1.5.x
Assigned To: Christopher Roy Bratusek
sawfish-maint
Depends on:
Blocks:
 
 
Reported: 2009-01-29 23:20 UTC by klok000
Modified: 2009-07-03 16:20 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
ugly fix for the move-cursor issue described above (890 bytes, patch)
2009-06-10 16:54 UTC, Christopher Roy Bratusek
none Details | Review
updated patch (5.70 KB, patch)
2009-06-10 19:25 UTC, Christopher Roy Bratusek
none Details | Review

Description klok000 2009-01-29 23:20:11 UTC
Please describe the problem:

I have key strokes bound to moving the cursor.  The problem happens if you quickly press one keystroke than the other (before you lift your fingers from teh first), the cursor movement of the first keystroke is canceled by the second keystroke.

So for instance I have the following in my .sawfishrc:

(bind-keys global-keymap "M-S-Up" '(move-cursor 0 -128))
(bind-keys global-keymap "M-S-Down" '(move-cursor 0 128))
(bind-keys global-keymap "M-S-Left" '(move-cursor -128 0))
(bind-keys global-keymap "M-S-Right" '(move-cursor 128 0))

If I quickly press M-S-Up than depress the Left arrow button before I have a chance to release the Up button, a problem will occur.  The cursor will move up, but than instead of traveling left a the new upward position, it will move diagonally left and down.  This is because it seems that the move-cursor command is not using the new up position, it is traveling left from the original cursor position.

It's almost as if there's a queueing problem, or something about the cursor is not finalized until the keystroke is lifted.

This is kind of annoying because a lot of times you want to move around the screen pretty quickly, and many of your cursor moves get lost.

Any help would be much appreciated.  Thanks!



Steps to reproduce:
1. Use keybinding to move cursor up, keep buttons depressed
2. Depress left key to move cursor left
3. 


Actual results:
Cursor first goes up, then diagonally down and left.

Expected results:
Cursor goes up, then directly left.

Does this happen every time?
Yes, as long as the up key is held down, this happens every time.

Other information:
Comment 1 Christopher Roy Bratusek 2009-02-01 23:00:40 UTC
I posted a link to this bug in my recent [NEWS] mail to the Sawfish-ML. I'm sure this to be fixed for 1.5.0.
Comment 2 Christopher Roy Bratusek 2009-06-10 16:54:33 UTC
Created attachment 136279 [details] [review]
ugly fix for the move-cursor issue described above

this is a ugly but (for me working) fix for your issue, could you try it?
Comment 3 Christopher Roy Bratusek 2009-06-10 16:59:47 UTC
well it does not move diagonally when pressing two keys ... I guess it's the easiest to add commands for moving diagonally ... going to do that right now
Comment 4 klok000 2009-06-10 17:12:04 UTC
I actually found that for me this problem went away in Ubuntu 9.04.  I thought it was because I had gotten a new version of sawfish, but maybe the problem/solution was in another package?
Comment 5 Christopher Roy Bratusek 2009-06-10 18:38:48 UTC
... ok, does that patch make any different for you then?
Comment 6 klok000 2009-06-10 18:48:34 UTC
My laptop is out of commission for a few days, but when I get it back I can test the patch then to see if the patch breaks something (since in 9.04 things are magically working).
Comment 7 Christopher Roy Bratusek 2009-06-10 19:25:57 UTC
Created attachment 136298 [details] [review]
updated patch

added several new commands:

move-cursor-

northweast
northeast
southwest
southeast

plus a -fine from each

and a move-cursor-center (middle of the screen)
Comment 8 Christopher Roy Bratusek 2009-07-03 16:20:19 UTC
commiting parts now, NOTABUG