The former delegate approach had some drawbacks as one class could
be only delegate for one panel. This commit replaces it with a
completion handler block which moves the result handling code
closer to the actual creation of the dialog.
Also fixes crash for eq panels.
Splits PopupPanel and TextfieldPanel into two xib files and
creates NSWindowController subclasses for each panel.
Each user of the panel gets its own window controller instance.
This is needed as the same kind of window can be shown multiple
times simultaneously (e.g. both in video and audio effects).
This also did not work with the previous implementation of the
2.2 branch and fixes broken behaviour.
All black-syle panels should get the floating window level.
This is normal behaviour of panels and has the positive side effect
that the panel also stays in front while vout window reconfigurations.
This level is also used for the preferences window, as this is sort
of a modal window which needs to be closed (in order to get settings
saved).
close#12063
This reverts commit 00b2fcce88.
[__MNSArray objectAtIndexedSubscript] isn't part of the OS X 10.7 ObjC runtime and in turn, we can't use this feature of the modern ObjC syntax until we drop support for 10.7 some day
- fix behavior of video-on-top by adapting to vout windows handling changes
- set all windows to status level if one vout window has this level:
This avoids that video effects panel, audio efffects panel etc. pp. are opened behind
a vout window. Now they can be used as usual.
Please note, that due to the type of these panels they do not remain visible
when VLC gets inactive.
This way, you can keep multiple sets of filters with their respective values.
This implementation goes beyond custom EQ presets, which can be configured separately.
create as many presets as you want based upon the respective current selection and remove any (including the defaults), if you don't like them. Reset VLC's preferences to get the original set back. There is no way to edit existing presets and this isn't scheduled for now.