mavak / linux-track

Automatically exported from code.google.com/p/linux-track
MIT License
0 stars 0 forks source link

Mickey focus tracking mode? #59

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Mickey is nice for moving the cursor, but it's hard to use accurately for 
clicking on small things, because you have to very precisely hold your head. It 
would be nice if Mickey had a mode where instead of moving the cursor directly 
it only changed which X window had input focus. Internally Mickey would still 
track where it would normally put the cursor, and then whenever the cursor 
would cross a window boundary it would change focus to the new window, and 
perhaps optionally then warp the cursor just once to the center of the new 
window. Then a user can use a touchpad or other higher precision device for 
moving the cursor within the window.

My setup is sort of like this already when I use Mickey, because my window 
manager has focus follows mouse turned on. So if I'm only concerned with using 
keyboard input in my windows everything works great. But when I need to 
precisely click something I have to toggle Mickey on and off, and meanwhile the 
cursor constantly jittering due to my head movement is very distracting.

Along these lines, it might be nice to have an API call that just gives X/Y 
coordinates for where Mickey would normally put the cursor, for those of us 
that mostly care about 2D tracking, so we don't have to figure out the math for 
getting that out of yaw/pitch/roll.

Original issue reported on code.google.com by k04j...@gmail.com on 2 Mar 2014 at 5:00

GoogleCodeExporter commented 9 years ago
Hi,
I just wander - have you tried the relative mode? There it shouldn't be that 
hard to make small precise movements... What I might try to add some control to 
switch absolute and relative mode. Would that help?

As for the API, it is an interesting idea; may I ask you, how would you used 
that information?

As for the first idea, I'm afraid that it would be a long long run...
I'm not saying that I wont try it, but for now I have way too much on my 
plate...
Kind regards,

Michal

Original comment by f.jo...@email.cz on 2 Mar 2014 at 7:48

GoogleCodeExporter commented 9 years ago
I should probably explain my use case. I have wrist tendonitis but I'm not 
actually disabled, I just need to find ways to use the keyboard and mouse 
*less*. The only 'problem' with relative mode is that if you have at least one 
working hand using the mouse is way easier. What I really want the head 
tracking for is automatically giving the window I'm looking at focus, because 
switching with the keyboard involves lots of keypresses and switching with the 
mouse involves a lot of wrist movement. I use a tiling window manager and most 
of what I do is keyboard driven so moving the cursor around is not what I need 
most of the time. I do however type into a lot of different windows. In 
absolute mode with focus follows mouse the effect is magical, the computer 
automatically knows what window I want to type into. In relative mode I have to 
cock my head and wait for the cursor to move. 

A toggle between relative and absolute mode would help, but the cursor would 
still be a jittery distraction just due to my own natural 'idle' head 
movements. Since focus-follows-my-head is all I really want, it'd be nice to 
have an app/mode for just that case that didn't interfere with the cursor. If 
the 2D API existed it'd be easier for someone to make their own variation on 
mickey themselves, like the one I'm describing. I'm not sure what other use 
cases their could be, but who knows? :)

Original comment by k04j...@gmail.com on 2 Mar 2014 at 10:18

GoogleCodeExporter commented 9 years ago
Hi,
I did a bit of thinking and here is the result...

As far as the switching windows when cursor enters them, I'm affraid that it is 
a functionality that is best left to the window manager; I can't think of a 
reasonable solution of getting window placement information (that would work 
across different window managers)... All in all, I'm affraid that this is 
definitely outside of the Linuxtrack's scope...

Let me try one more thing - I'll try and add a filter to the absolute mode, 
that will increase precision of small movement without compromising the overall 
responsiveness for bigger movement.

As for some external interface, it is deffinitely doable. May I ask you what 
kind of interface would you prefer (socket, fifo, ...)?
Kind regards,

Michal

Original comment by f.jo...@email.cz on 5 Mar 2014 at 9:29

GoogleCodeExporter commented 9 years ago
If your feet are OK may I suggest foot switches to click the mouse. If you 
would like details of mine please ask.

Original comment by a...@geoff.kelsall.name on 30 May 2014 at 2:02

GoogleCodeExporter commented 9 years ago
Ah on rereading I see perhaps you do not need to click the mouse. However 
possibly the foot switches I use could be adapted to control the tab key or 
another key if that would be useful for switching between windows.

Original comment by a...@geoff.kelsall.name on 30 May 2014 at 2:17