diff options
author | Michael Lutz <michi@icosahedron.de> | 2021-01-07 22:09:43 +0100 |
---|---|---|
committer | Michael Lutz <michi@icosahedron.de> | 2021-02-14 11:50:18 +0100 |
commit | e5c325364285b1e6e93afa2a0a79b1ec437f238e (patch) | |
tree | 8e2b58ad6cb1ff9b6bff8bb8f69308d72ff5d5b2 | |
parent | 0fc763bc5597e04ee528a34ca2730f780d25fb5e (diff) | |
download | openttd-e5c325364285b1e6e93afa2a0a79b1ec437f238e.tar.xz |
Add: [OSX] Setting to disable HiDPI graphics rendering.
-rw-r--r-- | src/table/misc_settings.ini | 10 | ||||
-rw-r--r-- | src/video/cocoa/cocoa_wnd.mm | 6 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/table/misc_settings.ini b/src/table/misc_settings.ini index d46ebe9bb..edc779caf 100644 --- a/src/table/misc_settings.ini +++ b/src/table/misc_settings.ini @@ -9,6 +9,10 @@ extern std::string _config_language_file; static const char *_support8bppmodes = "no|system|hardware"; +#ifdef WITH_COCOA +extern bool _allow_hidpi_window; +#endif + static const SettingDescGlobVarList _misc_settings[] = { [post-amble] }; @@ -317,5 +321,11 @@ min = ZOOM_LVL_MIN max = ZOOM_LVL_OUT_4X cat = SC_BASIC +[SDTG_BOOL] +ifdef = WITH_COCOA +name = ""allow_hidpi"" +var = _allow_hidpi_window +def = true + [SDTG_END] diff --git a/src/video/cocoa/cocoa_wnd.mm b/src/video/cocoa/cocoa_wnd.mm index cd194f712..afe2cece6 100644 --- a/src/video/cocoa/cocoa_wnd.mm +++ b/src/video/cocoa/cocoa_wnd.mm @@ -46,6 +46,8 @@ * Read http://developer.apple.com/releasenotes/Cocoa/Objective-C++.html for more information. */ +bool _allow_hidpi_window = true; // Referenced from table/misc_settings.ini + @interface OTTDMain : NSObject <NSApplicationDelegate> @end @@ -417,13 +419,13 @@ void CocoaDialog(const char *title, const char *message, const char *buttonLabel float _current_magnification; NSUInteger _current_mods; bool _emulated_down; - bool _use_hidpi; + bool _use_hidpi; ///< Render content in native resolution? } - (instancetype)initWithFrame:(NSRect)frameRect { if (self = [ super initWithFrame:frameRect ]) { - self->_use_hidpi = [ self respondsToSelector:@selector(convertRectToBacking:) ] && [ self respondsToSelector:@selector(convertRectFromBacking:) ]; + self->_use_hidpi = _allow_hidpi_window && [ self respondsToSelector:@selector(convertRectToBacking:) ] && [ self respondsToSelector:@selector(convertRectFromBacking:) ]; } return self; } |