Stop button activates immediately on mousedown

Bug #596732 reported by Johannes Sasongko
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Exaile
Fix Released
Medium
Ernest Mashele

Bug Description

1. Play a track.
2. Mousedown on the Stop button.

Expected:
Nothing happens (yet).

Actual:
Playback stops.

Description:
GTK+ does not allow the "clicked" signal to identify modifiers. Yay. We need to check for shift-clicks for SPAT. As a workaround, we do this on button-press-event, with the aforementioned result. Doing this on button-release-event doesn't work either, because it will fire no matter where we mouseup (even if we try to cancel the click by doing mouseup outside the button).

Possible solution:
Do this on mouseup, but check whether the mouse is inside the button.

Targetting 0.3.2, but I'm a bit loath to wrestle with yet another GTK+ annoyance, so probably won't make it to the release.

Related branches

Changed in exaile:
milestone: 0.3.2.0 → 0.3.3
Ernest Mashele (mashern)
Changed in exaile:
assignee: nobody → Ernest Mashele (mashern)
Revision history for this message
Ernest Mashele (mashern) wrote :

Hi,

I sorry for the last post. I have changed the patch to use the Rectangle class and the mouse position relative to the widget.

patch for file: exaile/xlgui/main.py

Changed in exaile:
status: Confirmed → Fix Committed
Ernest Mashele (mashern)
Changed in exaile:
status: Fix Committed → In Progress
Revision history for this message
Johannes Sasongko (sjohannes) wrote :

Thanks, Ernest. It's a bit hard to understand the patch (because of the format), but it seems good.

Could you re-create the patch as a unified diff? If you're using bzr, just run `bzr diff (filename)`; otherwise you can also use `diff -u (original) (new)`.

Revision history for this message
Ernest Mashele (mashern) wrote :

Updated patch

Revision history for this message
Johannes Sasongko (sjohannes) wrote :

Thanks. Committed with minor style change.

Changed in exaile:
status: In Progress → Fix Committed
Changed in exaile:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.