vlc | branch: master | Felix Paul Kühne <[email protected]> | Sat Apr 13 19:37:34 2019 +0200| [63e84a0635b69c1e48a6b9cfc1ccc2852d049a53] | committer: Felix Paul Kühne
macosx: fix intf variable callbacks > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=63e84a0635b69c1e48a6b9cfc1ccc2852d049a53 --- modules/gui/macosx/coreinteraction/VLCClickerManager.m | 17 ++++++++--------- .../gui/macosx/coreinteraction/VLCCoreInteraction.m | 18 +++++++++--------- modules/gui/macosx/main/VLCMain.m | 11 ++++++----- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/modules/gui/macosx/coreinteraction/VLCClickerManager.m b/modules/gui/macosx/coreinteraction/VLCClickerManager.m index 44611bab84..e3cccd7fe2 100644 --- a/modules/gui/macosx/coreinteraction/VLCClickerManager.m +++ b/modules/gui/macosx/coreinteraction/VLCClickerManager.m @@ -66,15 +66,14 @@ selector:@selector(coreChangedAppleRemoteSetting:) name:VLCAppleRemoteSettingChangedNotification object:nil]; - [[NSNotificationCenter defaultCenter] addObserver:self - selector:@selector(startListeningWithAppleRemote) - name:NSApplicationDidBecomeActiveNotification - object:nil]; - - [[NSNotificationCenter defaultCenter] addObserver:self - selector:@selector(stopListeningWithAppleRemote) - name:NSApplicationDidResignActiveNotification - object:nil]; + [notificationCenter addObserver:self + selector:@selector(startListeningWithAppleRemote) + name:NSApplicationDidBecomeActiveNotification + object:nil]; + [notificationCenter addObserver:self + selector:@selector(stopListeningWithAppleRemote) + name:NSApplicationDidResignActiveNotification + object:nil]; /* init Apple Remote support */ _remote = [[AppleRemote alloc] init]; diff --git a/modules/gui/macosx/coreinteraction/VLCCoreInteraction.m b/modules/gui/macosx/coreinteraction/VLCCoreInteraction.m index 4d511161ae..c4297b0b7d 100644 --- a/modules/gui/macosx/coreinteraction/VLCCoreInteraction.m +++ b/modules/gui/macosx/coreinteraction/VLCCoreInteraction.m @@ -81,20 +81,19 @@ static int BossCallback(vlc_object_t *p_this, const char *psz_var, { self = [super init]; if (self) { - intf_thread_t *p_intf = getIntf(); - NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter]; [notificationCenter addObserver:self - selector:@selector(applicationWillTerminate:) - name:NSApplicationWillTerminateNotification - object:nil]; + selector:@selector(applicationWillTerminate:) + name:NSApplicationWillTerminateNotification + object:nil]; _clickerManager = [[VLCClickerManager alloc] init]; _playlistController = [[VLCMain sharedInstance] playlistController]; _playerController = [_playlistController playerController]; - // FIXME: this variable will live on the current libvlc instance now. Depends on a future patch - var_AddCallback(p_intf, "intf-boss", BossCallback, (__bridge void *)self); + intf_thread_t *p_intf = getIntf(); + libvlc_int_t* libvlc = vlc_object_instance(p_intf); + var_AddCallback(libvlc, "intf-boss", BossCallback, (__bridge void *)self); } return self; } @@ -102,8 +101,9 @@ static int BossCallback(vlc_object_t *p_this, const char *psz_var, - (void)applicationWillTerminate:(NSNotification *)notification { // Dealloc is never called because this is a singleton, so we should cleanup manually before termination - // FIXME: this variable will live on the current libvlc instance now. Depends on a future patch - var_DelCallback(getIntf(), "intf-boss", BossCallback, (__bridge void *)self); + intf_thread_t *p_intf = getIntf(); + libvlc_int_t* libvlc = vlc_object_instance(p_intf); + var_DelCallback(libvlc, "intf-boss", BossCallback, (__bridge void *)self); [[NSNotificationCenter defaultCenter] removeObserver: self]; _clickerManager = nil; _usedHotkeys = nil; diff --git a/modules/gui/macosx/main/VLCMain.m b/modules/gui/macosx/main/VLCMain.m index cdcec49a57..4f1f66c857 100644 --- a/modules/gui/macosx/main/VLCMain.m +++ b/modules/gui/macosx/main/VLCMain.m @@ -243,9 +243,9 @@ static VLCMain *sharedInstance = nil; _mainWindowController = [[NSWindowController alloc] initWithWindowNibName:@"MainWindow"]; _libraryWindowController = [[VLCLibraryWindowController alloc] initWithLibraryWindow]; - // FIXME: those variables will live on the current libvlc instance now. Depends on a future patch - var_AddCallback(p_intf, "intf-toggle-fscontrol", ShowController, (__bridge void *)self); - var_AddCallback(p_intf, "intf-show", ShowController, (__bridge void *)self); + libvlc_int_t *libvlc = vlc_object_instance(p_intf); + var_AddCallback(libvlc, "intf-toggle-fscontrol", ShowController, (__bridge void *)self); + var_AddCallback(libvlc, "intf-show", ShowController, (__bridge void *)self); // Load them here already to apply stored profiles _videoEffectsPanel = [[VLCVideoEffectsWindowController alloc] init]; @@ -337,8 +337,9 @@ static VLCMain *sharedInstance = nil; [[self videoEffectsPanel] saveCurrentProfileAtTerminate]; [[self audioEffectsPanel] saveCurrentProfileAtTerminate]; - var_DelCallback(p_intf, "intf-toggle-fscontrol", ShowController, (__bridge void *)self); - var_DelCallback(p_intf, "intf-show", ShowController, (__bridge void *)self); + libvlc_int_t *libvlc = vlc_object_instance(p_intf); + var_DelCallback(libvlc, "intf-toggle-fscontrol", ShowController, (__bridge void *)self); + var_DelCallback(libvlc, "intf-show", ShowController, (__bridge void *)self); [[NSNotificationCenter defaultCenter] removeObserver: self]; _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
