diff --git a/src/app/pref/preferences.cpp b/src/app/pref/preferences.cpp index 6382e6e05..92f3c1b83 100644 --- a/src/app/pref/preferences.cpp +++ b/src/app/pref/preferences.cpp @@ -1,5 +1,5 @@ // Aseprite -// Copyright (C) 2018-2022 Igara Studio S.A. +// Copyright (C) 2018-2023 Igara Studio S.A. // Copyright (C) 2001-2018 David Capello // // This program is distributed under the terms of @@ -16,6 +16,7 @@ #include "app/tools/ink.h" #include "app/tools/tool.h" #include "base/fs.h" +#include "base/platform.h" #include "doc/sprite.h" #include "os/system.h" #include "ui/system.h" @@ -52,9 +53,16 @@ Preferences::Preferences() // doesn't exist. const bool firstTime = (!base::is_file(fn)); -#if LAF_LINUX - // Don't use native dialogs on Linux by default - experimental.useNativeFileDialog.setDefaultValue(false); + // Don't use native dialogs on Linux or macOS 10.11 by default +#if LAF_MACOS || LAF_LINUX + // We've received several bug reports about macOS 10.11 where the + // native file selector throws an unknown exception (probably we're + // using an API that wasn't yet supported in 10.11). So we disable + // the native file selector in this platform. + #if LAF_MACOS + if (base::get_osx_version() < base::Version(10, 11, 0, 0)) + #endif + experimental.useNativeFileDialog.setDefaultValue(false); #endif load();