[banshee] NowPlayingContents: Handle ButtonRelease events for DVD navigation



commit be8f01a187e2f23c3e8891254bc63f366183cf4c
Author: Bertrand Lorentz <bertrand lorentz gmail com>
Date:   Wed Nov 2 16:34:35 2011 +0100

    NowPlayingContents: Handle ButtonRelease events for DVD navigation
    
    We need to handle the ButtonRelease event to actually get this type of
    event and pass it along to the DVD navigation. Fixes bgo#660080.

 .../Banshee.NowPlaying/NowPlayingContents.cs       |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying/NowPlayingContents.cs b/src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying/NowPlayingContents.cs
index 84f3821..0b89c4a 100644
--- a/src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying/NowPlayingContents.cs
+++ b/src/Extensions/Banshee.NowPlaying/Banshee.NowPlaying/NowPlayingContents.cs
@@ -72,6 +72,7 @@ namespace Banshee.NowPlaying
 
             //TODO stop tracking mouse when no more in menu
             video_event.ButtonPressEvent += OnButtonPress;
+            video_event.ButtonReleaseEvent += OnButtonRelease;
             video_event.MotionNotifyEvent += OnMouseMove;
             video_event.KeyPressEvent += OnKeyPress;
 
@@ -112,6 +113,7 @@ namespace Banshee.NowPlaying
         public override void Dispose ()
         {
             video_event.ButtonPressEvent -= OnButtonPress;
+            video_event.ButtonReleaseEvent -= OnButtonRelease;
             video_event.MotionNotifyEvent -= OnMouseMove;
             video_event.KeyPressEvent -= OnKeyPress;
 
@@ -196,6 +198,13 @@ namespace Banshee.NowPlaying
                         ServiceManager.PlayerEngine.NotifyMouseButtonPressed ((int)args.Event.Button, args.Event.X, args.Event.Y);
                     }
                     break;
+            }
+        }
+
+        [GLib.ConnectBefore]
+        void OnButtonRelease (object o, ButtonReleaseEventArgs args)
+        {
+            switch (args.Event.Type) {
                 case Gdk.EventType.ButtonRelease:
                     if (ServiceManager.PlayerEngine.InDvdMenu) {
                         ServiceManager.PlayerEngine.NotifyMouseButtonReleased ((int)args.Event.Button, args.Event.X, args.Event.Y);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]