Skip to content

LateNight PaleMoon: Improve TrackMenu and CueMenuPopup styles#9

Merged
ronso0 merged 4 commits into
ronso0:lateupdatefrom
Holzhaus:lateupdate-menu
Aug 24, 2020
Merged

LateNight PaleMoon: Improve TrackMenu and CueMenuPopup styles#9
ronso0 merged 4 commits into
ronso0:lateupdatefrom
Holzhaus:lateupdate-menu

Conversation

@Holzhaus
Copy link
Copy Markdown

I think the menus don't really fit well right now, I think this is much more consistent with the rest of the skin. What do you think?

Comment thread res/skins/LateNight/style_palemoon.qss Outdated
Comment thread res/skins/LateNight/style_palemoon.qss Outdated
@ronso0
Copy link
Copy Markdown
Owner

ronso0 commented Aug 23, 2020

For the menus in decks and spinboxes I apreciate the change.
In the library the menu blends in too much IMO, and the bottom border is almost invisible:
image

Different borders for menus in the library vs in the decks could help, but then we'd have to apply that also to tooltips in vrious places. I doubt the effort is worth it, I'd rather keep the plain style for popups.
But the WCueMenu button style is nice, also that of CueLabelEdit (except the black groove around it).

btw: inactive menu items are not greyed out properly, maybe you can fix that while you're at it:
image
And I wonder why active icons are darker than inactive ones.

@Holzhaus Holzhaus requested a review from ronso0 August 23, 2020 12:52
@Holzhaus
Copy link
Copy Markdown
Author

Holzhaus commented Aug 23, 2020

I improved the contrast and fixed the disabled menu items, please have another look:
Screenshot from 2020-08-23 15-52-48

@ronso0
Copy link
Copy Markdown
Owner

ronso0 commented Aug 23, 2020

In general I'd rather stick with a constant border for all popups; right now it looks broken with the almost invisble borders at the right/bottom.

The only way to style the CueMenu color buttons somewhat like those in DlgAutoDJ or QHeaderView or any WPushButton is to use a dedicated btn_colorpicker image. For the label editor I'd pick the recessed style of OverviewBox.
(still trying to figure why the checked button is smaller)
image

#DeckSizeButton[hover="true"],
#SkinSettingsMixerToggle[hover="true"],
#SkinSettingsLabelButton[hover="true"] {
color: #777;
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let's make this mixxxdj#555, and remove all selectors that are not ...:disabled as it renders some hovered buttons unreadable.

Comment on lines +3028 to +3029
border-width: 2px 2px 2px 1px;
border-image: url(skin:/palemoon/buttons/btn_embedded_library.svg) 2 2 2 1;
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
border-width: 2px 2px 2px 1px;
border-image: url(skin:/palemoon/buttons/btn_embedded_library.svg) 2 2 2 1;
border-width: 2px 2px 2px 2px;
border-image: url(skin:/palemoon/buttons/btn_embedded_library.svg) 2 2 2 2;

Comment on lines +3035 to +3036
border-width: 2px 2px 2px 1px;
border-image: url(skin:/palemoon/buttons/btn_embedded_library_active.svg) 2 2 2 1;
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
border-width: 2px 2px 2px 1px;
border-image: url(skin:/palemoon/buttons/btn_embedded_library_active.svg) 2 2 2 1;
border-width: 2px 2px 2px 2px;
border-image: url(skin:/palemoon/buttons/btn_embedded_library_active.svg) 2 2 2 2;

@ronso0
Copy link
Copy Markdown
Owner

ronso0 commented Aug 23, 2020

Even though I started a review, I think it makes more sense to adopt your proposals individually and add the button images myself. Reviewing and applying the changes back and forth etc. takes much longer than discussing some screenshots.

I'll post some further experiments here and I'd appreciate if we continue discussing those, so I'll keep this PR open.

@ronso0
Copy link
Copy Markdown
Owner

ronso0 commented Aug 23, 2020

A minor bug with the color picker in the library track menu when overwriting the Fusion style:
on first invocation it looks oversized, after that the size adjusted to the button grid.
image

@ronso0 ronso0 merged commit 93485af into ronso0:lateupdate Aug 24, 2020
@ronso0
Copy link
Copy Markdown
Owner

ronso0 commented Aug 24, 2020

I picked your changes and tweaked them a bit, like the constant border.
Please keep testing and let me know if it works for you. Thx!

ronso0 pushed a commit that referenced this pull request Dec 17, 2020
ColumnCache: Verify consistency of all column maps
ronso0 pushed a commit that referenced this pull request Mar 16, 2022
…h sync

When loading a track that is not yet present in the library (and thus
doesn't have any BPM because it hasn't been analyzed yet) while another
deck is playing and both decks have sync enabled, a debug assertion is
triggered:

    DEBUG ASSERT: "isValid()" in function double mixxx::Bpm::value() const at src/track/bpm.h:53
    Aborted (core dumped)

The backtrace looks as follows:

    #0  0x00007f175c87234c in __pthread_kill_implementation () at /usr/lib/libc.so.6
    #1  0x00007f175c8254b8 in raise () at /usr/lib/libc.so.6
    #2  0x00007f175c80f534 in abort () at /usr/lib/libc.so.6
    #3  0x00007f175cf05ee4 in qt_assert(char const*, char const*, int) () at /usr/lib/libQt5Core.so.5
    #4  0x000055deb2e67e1c in mixxx::(anonymous namespace)::handleMessage(QtMsgType, QMessageLogContext const&, QString const&) (type=<optimized out>, context=<optimized out>, input=<optimized out>) at src/util/logging.cpp:355
    #5  0x00007f175cf47128 in  () at /usr/lib/libQt5Core.so.5
    #6  0x00007f175cf3fd8a in  () at /usr/lib/libQt5Core.so.5
    #7  0x00007f175cf06526 in QMessageLogger::critical(char const*, ...) const () at /usr/lib/libQt5Core.so.5
    #8  0x000055deb2e5c720 in mixxx_debug_assert(char const*, char const*, int, char const*) (assertion=assertion@entry=0x55deb39bd0db "isValid()", file=file@entry=0x55deb39bbf30 "src/track/bpm.h", line=line@entry=53, function=function@entry=0x55deb39bbf08 "double mixxx::Bpm::value() const") at gsrc/util/assert.h:9
    #9  0x000055deb2ee7e7e in mixxx_debug_assert_return_true(char const*, char const*, int, char const*) (function=0x55deb39bbf08 "double mixxx::Bpm::value() const", line=53, file=0x55deb39bbf30 "src/track/bpm.h", assertion=0x55deb39bd0db "isValid()") at gsrc/util/assert.h:18
    #10 mixxx::Bpm::value() const (this=<synthetic pointer>) at src/track/bpm.h:53
    #11 mixxx::operator*(mixxx::Bpm, double) (multiple=1, bpm=...) at src/track/bpm.h:160
    #12 SyncControl::setLocalBpm(mixxx::Bpm) (this=<optimized out>, localBpm=...) at src/engine/sync/synccontrol.cpp:567
    #13 0x000055deb34c7ba3 in EngineBuffer::postProcess(int) (this=0x55deb56eb060, iBufferSize=2048) at src/engine/enginebuffer.cpp:1318
    #14 0x000055deb3139023 in EngineMaster::processChannels(int) (this=0x55deb5449440, iBufferSize=<optimized out>) at src/engine/enginemaster.cpp:383
    #15 0x000055deb31394f7 in EngineMaster::process(int) (this=0x55deb5449440, iBufferSize=iBufferSize@entry=2048) at src/engine/enginemaster.cpp:410
    #16 0x000055deb2f91d0b in SoundManager::onDeviceOutputCallback(long) (this=<optimized out>, iFramesPerBuffer=iFramesPerBuffer@entry=1024) at src/soundio/soundmanager.cpp:596
    #17 0x000055deb32dd794 in SoundDevicePortAudio::callbackProcessClkRef(long, float*, float const*, PaStreamCallbackTimeInfo const*, unsigned long) (this=0x55deb553e6b0, framesPerBuffer=1024, out=<optimized out>, in=<optimized out>, timeInfo=<optimized out>, statusFlags=<optimized out>) at src/soundio/sounddeviceportaudio.cpp:965

This happens because `newLocalBpm` is invalid when `localBpm` is
invalid. Trying to do sync decks while no tempo information is available
does not make sense, so we only synchronize decks if the local BPM is
available.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants