I figured this would be a handy feature to add to foobar.

Features:
- native support of all main, context, and context/now playing commands
- gesture learning
- cancels gesture if no mouse motion detected for a specified time
- configuration of minimum gesture length
- allows key modifiers in combination with gestures (i.e., Ctrl/Shift/Alt)
Gestures are performed via middle-click-drag in any foobar window (or left/right-click drag in combination with key modifiers: ctrl, alt, or shift). Uses
libstroke for gesture recognition. If you're wondering how the "gesture code" (in the interface) works, see
standard strokes.
I hope somebody else finds this useful.

Latest version:
Plugin: foo_gestures-0.4.zipSource: foo_gestures-0.4-src.zip (GPL)
Please post any bugs, suggestions, or feature requests to this thread or feel free to send me a PM.
-phi
EDIT: updated description for v0.4
please allow an option for right-click-drag because that's what i use in all my other mouse gesture apps (unless there's some reason you can't?) great idea for a plug! will try it later.
sdbarker
Mar 8 2004, 05:24
Awesome Phi! It's working like a charm! As mentioned before, could you make the gestures work with some other mouse button, like right or left button?
sdbarker
Mar 8 2004, 06:46
Siku, if you check the
link I posted, you'll find an application that'll add mouse gestures to ANY application that you want, to do anything you want, and it's not limited to the predefined 20 gestures. You can also configure it to work with your other mouse button.
-Scott
Andreasvb
Mar 8 2004, 06:51
Very cool plugin Phi, thanks.
As i'm using MyIE2, Mouse Gestures is very welcome =)
And I would like right button too, I'm sure StrokeIt is good too, but a plugin is better IMO. Thanks again.
sdbarker, I'm aware of that app but I don't want to use any external app to make mouse gestures. I prefer 'build-in' gestures like this plugin. But thanks anyway
-Siku
Great! Please make global mouse gestures!!!
I too know of StrokeIt but I find is applicability limited. If this plugin can do Opera like gestures, especially: double click on playlist bar -> create new playlist, that'll be great.
gwaihir
Mar 8 2004, 11:56
QUOTE(atici @ Mar 8 2004, 10:55 PM)
I too know of StrokeIt but I find is applicability limited. If this plugin can do Opera like gestures, especially: double click on playlist bar -> create new playlist, that'll be great.
Unless, i didn't understand you correctly, the gesture is available in 0.8 by default.
foosion
Mar 8 2004, 11:57
QUOTE(atici @ Mar 8 2004, 06:25 PM)
If this plugin can do Opera like gestures, especially: double click on playlist bar -> create new playlist, that'll be great.
I seriously doubt that this will be possible with an arbitrary user interface, unless the user interface itself supports this.
Cool plugin. I use mouse gestures all the time for browsing the internet, but never even thought about it for media players. Pretty interesting.

Being able to assign the mouse button would make this perfect.
QUOTE
Unless, i didn't understand you correctly, the gesture is available in 0.8 by default.
Hey thanks. I never realized my wish has been granted. I checked it out and it works.
I am not so much a fan of StrokeIt to be honest, somehow its gesture recognition is not as smooth as Opera (sometimes it misses my gestures). I don't know how good libstroke is, but it's good to have alternatives.
QUOTE(Smiff @ Mar 8 2004, 10:23 PM)
please allow an option for right-click-drag because that's what i use in all my other mouse gesture apps (unless there's some reason you can't?) great idea for a plug! will try it later.
Right click drag (and left-click, for that matter) is already used in the core for drag and drop operations in the playlist. It may or may not be possible to override this, but I don't think its a very good idea anyway, so you will just have to get used to it
I would prefer right-click myself too, but middle integrates into foobar a lot better.
QUOTE(Radion @ Mar 9 2004, 01:22 AM)
Great! Please make global mouse gestures!!!
I think StrokeIt would be more suitable for global gestures, but I might look into adding this anyway.
skwire
Mar 10 2004, 15:16
Unfortunately, the gestures don't work when tried on the secondary monitor of a dual-monitor setup. They work fine in the primary, though. If you want to fix this, I'd be more than happy to test it out for you as I run duals at both home and work.
QUOTE(skwire @ Mar 11 2004, 08:16 AM)
Unfortunately, the gestures don't work when tried on the secondary monitor of a dual-monitor setup. They work fine in the primary, though. If you want to fix this, I'd be more than happy to test it out for you as I run duals at both home and work.
Thanks for the report and offer to test. I
think I've fixed the problem, I'll post a new version soon.
Okay, new version posted (see first post).
New in version 0.2:
- Fixed multi-monitor support (hopefully)
- Added gesture learning
- Will now cancel gestures if the mouse isn't moved for a certain amount of time
I'm pretty sure the multi-monitor support is fixed, if not feel free to post here and abuse me about it

PS:
I didn't think ahead in the initial version, so when you upgrade you will lose any gestures you had previously defined. Future versions won't have this problem though.
neoufo51
Mar 13 2004, 06:48
Love the new mouse gesture learning.
Replaygaining tracks doesnt seem to work, however. Is the Playback/Replaygain/Track command mean that it will replaygain whatever is highlighted in the playlist? Its not working for me.
Keep up the good work though.
QUOTE(neoufo51 @ Mar 13 2004, 11:48 PM)
Love the new mouse gesture learning.
Replaygaining tracks doesnt seem to work, however. Is the Playback/Replaygain/Track command mean that it will replaygain whatever is highlighted in the playlist? Its not working for me.
Keep up the good work though.
Thats something I need to add to my todo list. At the moment I've only added support for the "main" commands (i.e., commands found on the main menu). I'll add the playlist commands sometime soon so that will get replaygain (and any other context command) working properly for you. I'm not exactly sure what the Playback/Replaygain/* commands are for.
Oh and thanks for the positive comments!
Andreasvb
Mar 13 2004, 07:20
Thanks Phi.
Just a small bug I think, I can't get it to be Enabled, it resets all the time.
QUOTE(Andreasvb @ Mar 14 2004, 12:20 AM)
Thanks Phi.
Just a small bug I think, I can't get it to be Enabled, it resets all the time.
Fixed. Re-download from first link.
Thanks for the report!
Version 0.3 uploaded.
- Added support for context and context/now playing commands
O.k. I give in. What's a Mouse Gesture?
Andreasvb
Mar 14 2004, 06:58
For a example, if you hold the middle button and then drag the mouse let say UP then RIGHT and then release the button you have performed a gesture. That gesture can you bind to an action, let say Next Playlist. So when you perform your gesture it changes playlist =)
Hold middle > Up > Right > Release > voila
Hope that cleared it up
Radion
Mar 17 2004, 10:11
Version 0.3 dont work with my foobra 0.8.When i start foo window appears with:
' Failed to find main FooBar2000 window '
what happend?
working great
although i'd love the ability for them to be made global, ideally so that i can skip tracks using the mouse while i am browsing the web
that seems like the best use i can think of for it, but if it's not possible then i understand
did i mention 'great work'
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
Version 0.3 dont work with my foobra 0.8.When i start foo window appears with:
' Failed to find main FooBar2000 window '
what happend?
Are you using the default user interface for foobar or something else?
QUOTE(tk32 @ Mar 18 2004, 03:29 AM)
although i'd love the ability for them to be made global, ideally so that i can skip tracks using the mouse while i am browsing the web
that seems like the best use i can think of for it, but if it's not possible then i understand
I've been looking into this lately. Its definitely possible (I have it working already), but it will take some work before I have anything reliable to release.
QUOTE
did i mention 'great work'

Thanks

PS. A global hide/show foobar command is also very handy
QUOTE(Phi @ Mar 17 2004, 07:37 PM)
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
Version 0.3 dont work with my foobra 0.8.When i start foo window appears with:
' Failed to find main FooBar2000 window '
what happend?
Are you using the default user interface for foobar or something else?
For getting a handle to the main window, it's really better to use core_api::get_main_window() than FindWindow(). That should make it work with other user interfaces (though, to be honest, I haven't bothered to compile the source with that modification and check).
lightbulb
Mar 17 2004, 19:43
How bout that... a plugin author on the BB4win crew just released a gesture plug for their win32 alternate shell.
Optimoz, what have you started? Someday we won't need keyboards :-p
QUOTE(bleh @ Mar 18 2004, 12:29 PM)
For getting a handle to the main window, it's really better to use core_api::get_main_window() than FindWindow().
Ahh yes, I'm suprised I missed that function in the SDK. I only knew about the FindWindow + GUID method from the foo_lirc plugin, so I'll add this in to foo_gestures as soon as I can. Thanks for the tip.
Radion
Mar 18 2004, 01:32
QUOTE(Phi @ Mar 17 2004, 04:37 PM)
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
Version 0.3 dont work with my foobra 0.8.When i start foo window appears with:
' Failed to find main FooBar2000 window '
what happend?
Are you using the default user interface for foobar or something else?
I'm usign the newest Columns plugin!
RedSaint
Mar 18 2004, 11:56
I'm waaaitiiing

i'm looking forward to global mouse gestures. this is such a cool plugin - damn! with this and opera, and, and.. wow.. before I know it theres a shortcut to moving the mouse - which would be cool too
keep up the work.
Andreasvb
Mar 18 2004, 18:43
You can move the mouse, with the builtin mouse helper in Windows

It's not great, but it works. No idea for the gestures though, it's slow but you can hold shift to make it faster. And I doubt it's good with gestures haha
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
' Failed to find main FooBar2000 window '
0.3.1 Uploaded.
- Should work with all user interfaces now
Radion
Mar 19 2004, 05:41
QUOTE(Phi @ Mar 19 2004, 12:22 AM)
QUOTE(Radion @ Mar 18 2004, 03:11 AM)
' Failed to find main FooBar2000 window '
0.3.1 Uploaded.
- Should work with all user interfaces now
BIG THX!!
i'm waiting now for global mouse gestures!
nice swissknife tool ... it would be nice to put a configuration part where people could set their way to activate gesture caption ... i.e. its not nobody that has a middle button, hell, this computer doesnt - some other gesture programs uses different methods and somebody could want to immitate his/her favorite gesture program ...
so something like ctrl+alt+left button, ctrl+alt+right button, etc. you get my point
QUOTE(nIRV @ Mar 20 2004, 02:31 AM)
so something like ctrl+alt+left button, ctrl+alt+right button, etc. you get my point
Nice idea, thanks.
In the
new version, just hold down whatever keys (combinations of Ctrl, Alt and Shift) you want when you first define the gesture in the preferences, and it will remember the keys used for each gesture individually. I've also added support for the left and right mouse buttons, but only in certain combinations with the modifier keys I describe above.
The following combinations are the ones I've
disallowed (as they conflict with the default interface):
Left mouse (without a key)
Ctrl+Left mouse
Shift+Left mouse
Right mouse (without a key)
Shift+Right mouse
Everything else is fair game

Plugin:
foo_gestures-0.4.zipSource:
foo_gestures-0.4-src.zipI've also added foo_gestures to the
3rd-party plugins site.
PS. No globals yet, give me a few weeks
very good

.. I think you should enable the ctrl+left key ... suppose I'm ctrl+left draggin items and I want to create a new playlist to put in, it would be cool with gesture to make a specific gesture while dragging and pop, a new playlist to drop the stuff

thanks
Rogacz
Mar 20 2004, 08:28
nice1
skwire
Mar 20 2004, 20:36
QUOTE
I'm pretty sure the multi-monitor support is fixed, if not feel free to post here and abuse me about it
Apologies for the delay in getting back to you on this. Yep, they're working just fine in the secondary. Thanks a bunch. =]
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please
click here.