mixxxdj / mixxx

Mixxx is Free DJ software that gives you everything you need to perform live mixes.
http://mixxx.org
Other
4.25k stars 1.24k forks source link

Dual screen Skin #6940

Open mixxxbot opened 1 year ago

mixxxbot commented 1 year ago

Reported by: daschuer Date: 2013-03-08T12:01:48Z Status: Confirmed Importance: Wishlist Launchpad Issue: lp1152575 Tags: hackathon, skin, usability


It would be nice if we can optional split the Mixxx GUI into two Windows.

I think actually now one has a dual screen setup but this can gain room for new functions even on a singe Netbook setup by switching between the two windows.

mixxxbot commented 1 year ago

Commented by: esbrandt Date: 2013-03-08T12:26:52Z


Can you express this idea in more detail?

Dual screens are pretty common but also i see the usability of a single screen split. I believe we already have a WISHLIST bug (cant find atm) for a detachable library window, something like e.g. Deckadance has for quite some time. Is something like that the reason for your idea?

mixxxbot commented 1 year ago

Commented by: daschuer Date: 2013-03-09T15:14:35Z


Could not find a bug like this too, so here is a new one.

A simple and easy to achieve solution would be an independent library window.

A High End solution would be to have two single skin-able windows to allow setups like this: http://www.youtube.com/watch?v=P3QhZuHbAUY

mixxxbot commented 1 year ago

Commented by: thomas-8 Date: 2013-03-31T22:49:20Z


Today you get nearly only Widescreen-Displays, so could be a real benefit for pre-mixing, radio, etc.

Another Idea: Left Display: 4 Decks with 4 horizontally Waveforms like "Latenight"-Skin Right Display: 8-12 "full-featured" SampleDecks at top and the library at bottom

mixxxbot commented 1 year ago

Commented by: rryan Date: 2015-12-07T04:46:08Z


I would propose supporting this with a tag in the skin that acts like a except has no parent (this way it would show as its own window rather than be rooted in the parent).

<Window>
  <Children>
    .. skin widgets as normal ..
  </Children>
</Window>

Getting that working would be pretty easy. But then making it interact well with other windows (i.e. letting the master window show/hide other windows) would be teh bulk of the project. I think it could be done with a skin-created CO connected to the Window 'visible' property.

mixxxbot commented 1 year ago

Commented by: sblaisot Date: 2015-12-07T06:43:39Z


The way you propose to do this is probably an intermediate quick solution, but not what I have in mind when talking about multiple-windows interface.

Ideally, the multiple windows interface is not hardcoded by the skin but rather each section of the skin can be assigned to whatever window the user want. by section I mean "library", "deck1" to "deck4", "mixer", "effects", "mic/aux" and "sampler".

This way, there is only one skin for mono and multi window and this is suitable to each use-case, the user choose its layout.

mixxxbot commented 1 year ago

Commented by: rryan Date: 2015-12-07T07:27:32Z


That would be nice... In the current skin/widget system however I predict that is going to be pretty difficult. It's kind of at a breaking point and probably needs replacing.

mixxxbot commented 1 year ago

Commented by: ywwg Date: 2015-12-07T14:56:23Z


(and eventually we'd want to use this type of system for advanced controllers that have built-in displays, too)

sesoho commented 10 months ago

has anyone found a solution to this? would love to have 2 screens

daschuer commented 10 months ago

I am not aware of a solution. Do you have interest to work on that?

ronso0 commented 10 months ago

FYI this thread contains some ideas/hacks to get it done with existing skins by arranging (virtual) desktops appropriately https://mixxx.zulipchat.com/#narrow/stream/109171-development/topic/Multiple.20monitors.20support/near/201857845

fwcd commented 5 months ago

Another vote for floating windows. Would be incredibly cool if you could e.g. just drag out a library pane or the waveforms into a separate window, i.e. (very roughly) something like this: