mirror of
https://github.com/electron/electron.git
synced 2026-04-10 03:01:51 -04:00
fix: prevent PopUpButtonHandler premature dealloc (#40346)
fix: prevent PopUpButtonHandler dealloc Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
This commit is contained in:
@@ -66,14 +66,18 @@
|
||||
|
||||
// Manages the PopUpButtonHandler.
|
||||
@interface ElectronAccessoryView : NSView
|
||||
@property(nonatomic, strong) PopUpButtonHandler* popUpButtonHandler;
|
||||
@end
|
||||
|
||||
@implementation ElectronAccessoryView
|
||||
|
||||
@synthesize popUpButtonHandler;
|
||||
|
||||
- (void)dealloc {
|
||||
auto* popupButton =
|
||||
static_cast<NSPopUpButton*>([[self subviews] objectAtIndex:1]);
|
||||
popupButton.target = nil;
|
||||
popUpButtonHandler = nil;
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -149,6 +153,7 @@ void SetAllowedFileTypes(NSSavePanel* dialog, const Filters& filters) {
|
||||
|
||||
[accessoryView addSubview:label];
|
||||
[accessoryView addSubview:popupButton];
|
||||
[accessoryView setPopUpButtonHandler:popUpButtonHandler];
|
||||
|
||||
[dialog setAccessoryView:accessoryView];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user