qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v4 12/13] ui/cocoa: Remove allowedFileTypes restriction in Sa


From: Cameron Esfahani
Subject: Re: [PATCH v4 12/13] ui/cocoa: Remove allowedFileTypes restriction in SavePanel
Date: Sun, 13 Feb 2022 19:26:53 -0800

Reviewed-by: Cameron Esfahani <dirty@apple.com>


On Feb 11, 2022, at 8:34 AM, Philippe Mathieu-Daudé via <qemu-devel@nongnu.org> wrote:

setAllowedFileTypes is deprecated in macOS 12.

Per Akihiko Odaki [*]:

 An image file, which is being chosen by the panel, can be a
 raw file and have a variety of file extensions and many are not
 covered by the provided list (e.g. "udf"). Other platforms like
 GTK can provide an option to open a file with an extension not
 listed, but Cocoa can't. It forces the user to rename the file
 to give an extension in the list. Moreover, Cocoa does not tell
 which extensions are in the list so the user needs to read the
 source code, which is pretty bad.

Since this code is harming the usability rather than improving it,
simply remove the [NSSavePanel allowedFileTypes:] call, fixing:

 [2789/6622] Compiling Objective-C object libcommon.fa.p/ui_cocoa.m.o
 ui/cocoa.m:1411:16: error: 'setAllowedFileTypes:' is deprecated: first deprecated in macOS 12.0 - Use -allowedContentTypes instead [-Werror,-Wdeprecated-declarations]
     [openPanel setAllowedFileTypes: supportedImageFileTypes];
                ^
 /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSSavePanel.h:215:49: note: property 'allowedFileTypes' is declared deprecated here
 @property (nullable, copy) NSArray<NSString *> *allowedFileTypes API_DEPRECATED("Use -allowedContentTypes instead", macos(10.3,12.0));
                                                 ^
 /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSSavePanel.h:215:49: note: 'setAllowedFileTypes:' has been explicitly marked deprecated here
 FAILED: libcommon.fa.p/ui_cocoa.m.o

[*] https://lore.kernel.org/qemu-devel/4dde2e66-63cb-4390-9538-c032310db3e3@gmail.com/

Suggested-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Tested-by: Roman Bolshakov <r.bolshakov@yadro.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
ui/cocoa.m | 6 ------
1 file changed, 6 deletions(-)

diff --git a/ui/cocoa.m b/ui/cocoa.m
index ac18e14ce0..7a1ddd4075 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -100,7 +100,6 @@ static int gArgc;
static char **gArgv;
static bool stretch_video;
static NSTextField *pauseLabel;
-static NSArray * supportedImageFileTypes;

static QemuSemaphore display_init_sem;
static QemuSemaphore app_started_sem;
@@ -1168,10 +1167,6 @@ QemuCocoaView *cocoaView;
        [pauseLabel setTextColor: [NSColor blackColor]];
        [pauseLabel sizeToFit];

-        // set the supported image file types that can be opened
-        supportedImageFileTypes = [NSArray arrayWithObjects: @"img", @"iso", @"dmg",
-                                 @"qcow", @"qcow2", @"cloop", @"vmdk", @"cdr",
-                                  @"toast", nil];
        [self make_about_window];
    }
    return self;
@@ -1414,7 +1409,6 @@ QemuCocoaView *cocoaView;
    openPanel = [NSOpenPanel openPanel];
    [openPanel setCanChooseFiles: YES];
    [openPanel setAllowsMultipleSelection: NO];
-    [openPanel setAllowedFileTypes: supportedImageFileTypes];
    if([openPanel runModal] == NSModalResponseOK) {
        NSString * file = [[[openPanel URLs] objectAtIndex: 0] path];
        if(file == nil) {
--
2.34.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]