Browse Source

macosx/main window: add dark mode dropzone icon

pull/135/head
Felix Paul Kühne 8 years ago
parent
commit
2da573174e
  1. 2
      modules/gui/macosx/Makefile.am
  2. BIN
      modules/gui/macosx/Resources/mainwindow_mojave_dark/mj-dropzone-dark.png
  3. BIN
      modules/gui/macosx/Resources/mainwindow_mojave_dark/mj-dropzone-dark@2x.png
  4. 32
      modules/gui/macosx/VLCMainWindow.m

2
modules/gui/macosx/Makefile.am

@ -567,6 +567,8 @@ libmacosx_plugin_la_RES = \
gui/macosx/Resources/mainwindow_dark_yosemite/ys-volume-high_dark@2x.png \
gui/macosx/Resources/mainwindow_dark_yosemite/ys-volume-low_dark.png \
gui/macosx/Resources/mainwindow_dark_yosemite/ys-volume-low_dark@2x.png \
gui/macosx/Resources/mainwindow_mojave_dark/mj-dropzone-dark.png \
gui/macosx/Resources/mainwindow_mojave_dark/mj-dropzone-dark@2x.png \
gui/macosx/Resources/mainwindow_yosemite/ys-backward-3btns-pressed.png \
gui/macosx/Resources/mainwindow_yosemite/ys-backward-3btns-pressed@2x.png \
gui/macosx/Resources/mainwindow_yosemite/ys-backward-3btns.png \

BIN
modules/gui/macosx/Resources/mainwindow_mojave_dark/mj-dropzone-dark.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
modules/gui/macosx/Resources/mainwindow_mojave_dark/mj-dropzone-dark@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

32
modules/gui/macosx/VLCMainWindow.m

@ -135,6 +135,9 @@ static const float f_min_window_height = 307.;
- (void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver: self];
if (@available(macOS 10_14, *)) {
[[NSApplication sharedApplication] removeObserver:self forKeyPath:@"effectiveAppearance"];
}
}
- (void)awakeFromNib
@ -189,7 +192,20 @@ static const float f_min_window_height = 307.;
// Dropzone
[_dropzoneLabel setStringValue:_NS("Drop media here")];
[_dropzoneImageView setImage:imageFromRes(@"dropzone")];
if (@available(macOS 10.14, *)) {
NSApplication *app = [NSApplication sharedApplication];
if ([app.effectiveAppearance.name isEqualToString:NSAppearanceNameDarkAqua]) {
[_dropzoneImageView setImage:[NSImage imageNamed:@"mj-dropzone-dark"]];
} else {
[_dropzoneImageView setImage:imageFromRes(@"dropzone")];
}
[app addObserver:self
forKeyPath:@"effectiveAppearance"
options:0
context:nil];
} else {
[_dropzoneImageView setImage:imageFromRes(@"dropzone")];
}
[_dropzoneButton setTitle:_NS("Open media...")];
[_dropzoneButton.cell accessibilitySetOverrideValue:_NS("Open a dialog to select the media to play")
forAttribute:NSAccessibilityDescriptionAttribute];
@ -730,6 +746,20 @@ static const float f_min_window_height = 307.;
[self.fspanel setVolumeLevel:[[VLCCoreInteraction sharedInstance] volume]];
}
- (void)observeValueForKeyPath:(NSString *)keyPath
ofObject:(id)object
change:(NSDictionary<NSKeyValueChangeKey,id> *)change
context:(void *)context
{
if (@available(macOS 10_14, *)) {
if ([[[NSApplication sharedApplication] effectiveAppearance].name isEqualToString:NSAppearanceNameDarkAqua]) {
[_dropzoneImageView setImage:[NSImage imageNamed:@"mj-dropzone-dark"]];
} else {
[_dropzoneImageView setImage:imageFromRes(@"dropzone")];
}
}
}
#pragma mark -
#pragma mark Video Output handling

Loading…
Cancel
Save