diff options
author | Tom Schoonjans <Tom.Schoonjans@diamond.ac.uk> | 2017-07-31 21:26:47 +0100 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2017-08-23 10:45:49 -0400 |
commit | bc2f125f1cc2bed03c04b1787b17dad947b62fbc (patch) | |
tree | 28d87b3132600cd1f509b0196e16521a538da989 | |
parent | 798ea02440c00be6851e79fa8a9a65c77fbfd8e9 (diff) | |
download | gtk+-bc2f125f1cc2bed03c04b1787b17dad947b62fbc.tar.gz |
GtkFileChooserNativeQuartz: improve support for file filters
Instead of using conditional compilation, use respondsToSelector to
check at runtime for setAccessoryViewDisclosed.
https://bugzilla.gnome.org/show_bug.cgi?id=785306
-rw-r--r-- | gtk/gtkfilechoosernativequartz.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/gtk/gtkfilechoosernativequartz.c b/gtk/gtkfilechoosernativequartz.c index d573248210..f210c1db94 100644 --- a/gtk/gtkfilechoosernativequartz.c +++ b/gtk/gtkfilechoosernativequartz.c @@ -208,6 +208,10 @@ filechooser_quartz_data_free (FileChooserQuartzData *data) g_free (data); } +@protocol CanSetAccessoryViewDisclosed +- (void)setAccessoryViewDisclosed:(BOOL)val; +@end + static gboolean filechooser_quartz_launch (FileChooserQuartzData *data) { @@ -325,14 +329,11 @@ filechooser_quartz_launch (FileChooserQuartzData *data) } [data->filter_combo_box setToolTip:[NSString stringWithUTF8String:_("Select which types of files are shown")]]; [data->panel setAccessoryView:data->filter_combo_box]; -#ifdef AVAILABLE_MAC_OS_X_VERSION_10_11_AND_LATER - if (!data->save) + if ([data->panel isKindOfClass:[NSOpenPanel class]] && [data->panel respondsToSelector:@selector(setAccessoryViewDisclosed:)]) { - [(NSOpenPanel *) data->panel setAccessoryViewDisclosed:YES]; + [(id<CanSetAccessoryViewDisclosed>) data->panel setAccessoryViewDisclosed:YES]; } -#endif } - data->response = GTK_RESPONSE_CANCEL; |