Allow edit star rating in unselected rows

Bug #1002330 reported by Daniel Schürmann
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Low
Max Linke

Bug Description

Our star rating does not act a smooth as one might expect.
Compared to Clementine it is notchy. They allow to change star rating on unselected rows.

Related branches

Revision history for this message
Max Linke (max-linke) wrote :

I've enabled this in my previewdeck branch.

Changed in mixxx:
assignee: nobody → Max Linke (max-linke)
Revision history for this message
Max Linke (max-linke) wrote :

I've included a patch to add this

Changed in mixxx:
status: New → In Progress
RJ Skerry-Ryan (rryan)
Changed in mixxx:
milestone: none → 1.11.0
importance: Undecided → Low
Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Hi Max,

I looked at your patch and it seems to do some mass-reformatting of the files you've touched. Could you check your editor settings to make sure you're following our style guide here: http://mixxx.org/wiki/doku.php/coding_guidelines

Also, the patch doesn't apply cleanly against trunk.. could you please re-generate it, ideally using a bzr diff or bzr merge directive (see the "bzr send -o filename" command) against trunk?

Thanks,
RJ

Revision history for this message
Max Linke (max-linke) wrote :

new and better patch

Revision history for this message
RJ Skerry-Ryan (rryan) wrote : Re: [Bug 1002330] Re: Allow edit star rating in unselected rows

Much better! Thanks. It's a shame that this requires mouse-tracking for the
entire track-table since I think general wisdom it's somewhat taxing on the
Qt main loop. I tried thinking of another way to do it though and I
couldn't. Maybe if we could somehow get ahold of the cell widgets for the
specific rating column and enable mouse-tracking for those only? I poked
around a little bit and didn't find a way to do that.

On Wed, May 23, 2012 at 6:13 PM, Max Linke <email address hidden>wrote:

> new and better patch
>
> ** Patch added: "starrating.patch"
>
> https://bugs.launchpad.net/mixxx/+bug/1002330/+attachment/3160205/+files/starrating.patch
>
> --
> You received this bug notification because you are a member of Mixxx
> Development Team, which is subscribed to Mixxx.
> https://bugs.launchpad.net/bugs/1002330
>
> Title:
> Allow edit star rating in unselected rows
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/mixxx/+bug/1002330/+subscriptions
>

Revision history for this message
Max Linke (max-linke) wrote :

Did you notice any performanc losses with this patch?

We could set a custom widget for each cell but that would be slower then just to do the tracking on the whole table.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

If you move your mouse rapidly across the library the waveforms stutter -- that's the main thing I noticed. I love the way they work with the patch though so I think we should commit it.

RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: In Progress → Fix Committed
Revision history for this message
Max Linke (max-linke) wrote :

I think you accidently broke my patch by calling WLibraryTableView::mouseMoveEvent()

drag a song into a deck and then move the mouse back to the library.
Then there is a dragEvent happening until you drag that second Event into a deck.
The Event happens on the same index and it looks's like it's done be WLibraryTableView::mouseMoveEvent().

Another thing that I've noticed when I move rapidly over the starratings they are changed without clicking them.
This is also true for my original patch.

Revision history for this message
Max Linke (max-linke) wrote :

I've noticed that if you move the mouse quickly over the starrating column sometimes the stars will stay altough I havn't clicked the column. These false ratings stay until you click on a starrating column. Another issue was that if you have already set a rating for a track and then tried to edit it, the old stars are still show so it's hard to see if you actually reduced the starrating

The patch fixes these two issues.

Another issue is that we open the editor with openPersistenEditor(index). This calls createEditor() with the wrong options that always say that the row is not selected. So when you are editing a cell it will always use 'painter->setBrush(palette.text());' in
starrating::paint(...) regardless if the row is actually selected or not. Right now I don't know how this could be fixed.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

patch from #9 committed, thanks!

RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/6471

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

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