Preferences Controller: false positive detection of pending mapping changes

Bug #1920844 reported by ronso0
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
High
ronso0

Bug Description

Clicking Okay in Preferences > Interface or Normalization should only apply changes on that specific page, not on unrelated and UNCHANGED pages like controller mappings.

I did this during a set recently and it caused some trouble because in my mapping init I set some defaults like setting deck Volumes to zero and beatjump_size to 16, for example.

This happened with a branch based on main, no changes related to preferences though.

EDIT
(APPLY +) OKAY causes the described behaviour.
APPLY + CANCEL does not.
both ways store the changed settings.

Tags: preferences
Revision history for this message
ronso0 (ronso0) wrote :

should be tested with 2.3

Revision history for this message
mevsme (mevsme) wrote :

This is a good idea. I would like that too.

Revision history for this message
ronso0 (ronso0) wrote :

not reproducible with 2.3

Changed in mixxx:
milestone: none → 2.4.0
Revision history for this message
ronso0 (ronso0) wrote (last edit ):

appearantly the root cause is the same as for
https://bugs.launchpad.net/mixxx/+bug/1803580
https://bugs.launchpad.net/mixxx/+bug/1922854

(APPLY +) OKAY causes the described behaviour.
APPLY + CANCEL does not.
both ways store the changed settings.

EDIT fx are unrelated.

ronso0 (ronso0)
summary: - don't re-initialize controller scripts when unrelated preferences are
- applied
+ Preferences: don't reload controller scripts when clicking Okay
description: updated
description: updated
summary: - Preferences: don't reload controller scripts when clicking Okay
+ Preferences: don't reload controller scripts when clicking Okay in any
+ other page
Revision history for this message
ronso0 (ronso0) wrote : Re: Preferences: don't reload controller scripts when clicking Okay in any other page

okay, by now I suspect that in the main branch an unchanged controller mapping is setDirty(true) for no reason, because otherwise that mapping reload part would be skipped.

ronso0 (ronso0)
summary: - Preferences: don't reload controller scripts when clicking Okay in any
- other page
+ Preferences: don't re-init unchanged controller scripts when clicking
+ Okay in any other page
Revision history for this message
ronso0 (ronso0) wrote (last edit ): Re: Preferences: don't re-init unchanged controller scripts when clicking Okay in any other page

Can't reproduce anymore with main, using MIDI through-port.

Will try to confirm with a real controller.

Be (be.ing)
Changed in mixxx:
status: New → Incomplete
Revision history for this message
ronso0 (ronso0) wrote (last edit ):

Still happening. Not 100% reproducible, but it happened when clicking Okay when I opened the preferecences for the first time after starting Mixxx.

Like if the mapping was considered dirty.

description: updated
Changed in mixxx:
status: Incomplete → New
ronso0 (ronso0)
summary: - Preferences: don't re-init unchanged controller scripts when clicking
- Okay in any other page
+ Preferences Controller: false positive detection of pending mapping
+ changes
Revision history for this message
ronso0 (ronso0) wrote :
Changed in mixxx:
milestone: 2.4.0 → 2.3.3
status: New → In Progress
assignee: nobody → ronso0 (ronso0)
ronso0 (ronso0)
Changed in mixxx:
status: In Progress → Fix Committed
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/10365

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

Remote bug watches

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