summaryrefslogtreecommitdiffstats
path: root/platform/osx
Commit message (Collapse)AuthorAgeFilesLines
* Fix directory check when exporting projectvolzhs2019-03-061-1/+1
| | | | Fix #26702
* Merge pull request #26633 from akien-mga/driver-fallback-etcRémi Verschelde2019-03-061-1/+1
|\ | | | | Disable driver fallback to GLES2 by default
| * Disable driver fallback to GLES2 by defaultRémi Verschelde2019-03-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GLES2 is not designed to be a drop-in replacement for the GLES3 backend, so the fallback mode has to be used knowingly. It *can* make sense for simple projects which make sure to handle the differences between both rendering backends, but most users should stick to one supported backend. By making it opt-in, we can now use this parameter to define whether to export ETC textures to Android and iOS when using GLES3 + Fallback. When using GLES3 without Fallback on Android, set the proper min GLES version in the AndroidManifest. Also made the option boolean and renamed it for clarity and to avoid conflict with the previous String option (which would always evaluate as "true" otherwise). Fixes #26569.
* | Fixes misleading error message when trying to exportRicardo Lüders2019-03-051-0/+4
|/ | | | | | | This patch fixes the misleading error message when users try to "export all" into an invalid destination path. Closes #26539
* More style cleanup...Rémi Verschelde2019-03-041-1/+0
|
* Add support for event accumlation (off by default, on for editor), fixes #26536Juan Linietsky2019-03-031-1/+4
|
* -Remove harcoded opengl extension testing from OS, ask rasterizer instead.Juan Linietsky2019-02-261-1/+1
| | | | -Fixed a bug where etc textures were imported broken
* [macOS] Make `move_window_to_foreground` to take focus in addition to moving ↵bruvzg2019-02-231-1/+2
| | | | window to front.
* Platform: Ensure classes match their header filenameRémi Verschelde2019-02-129-26/+31
| | | | | | | | | | | | | | | | | | | | Also drop some unused files. Renamed: - `platform/iphone/sem_iphone.h` -> `semaphore_iphone.h` (same for `osx`) - `platform/uwp/gl_context_egl.h` -> `context_egl_uwp.h` - in `platform/windows`: `context_gl_win.h`, `crash_handler_win.h`, `godot_win.cpp`, `joypad.h` and `key_mapping_win.h` all renamed to use `windows`. Some classes renamed accordingly too. - `EditorExportAndroid` and `EditorExportUWP` renamed to `EditorExportPlatformAndroid` and `EditorExportPlatformUWP` - `power_android` and `power_osx` renamed to `PowerAndroid` and `PowerOSX` - `OSUWP` renamed to `OS_UWP` Dropped: - `platform/windows/ctxgl_procaddr.h`
* Drivers, main, servers: Ensure classes match their header filenameRémi Verschelde2019-02-121-1/+1
| | | | | | | | Renamed: - `drivers/alsamidi/alsa_midi.h` -> `midi_driver_alsamidi.h` (same for `coremidi` and `winmidi`) - `main/timer_sync.h` -> `main_timer_sync.h` - `servers/visual/visual_server_global.h` -> `visual_server_globals.h`
* [macOS] Fix rendering on retina displays with HiDPI support disabled.bruvzg2019-01-311-1/+3
|
* Using DisplayLink to emulate vsync on OSXBastiaan Olij2019-01-293-15/+60
|
* Avoid cyclic iteration check, fixes #24969Juan Linietsky2019-01-221-1/+3
|
* ExportDialog: Make error messages translatableRémi Verschelde2019-01-211-2/+2
| | | | Also fix missing newlines that caused #24202.
* [macOS] Fix missing mouse move event speed.bruvzg2019-01-111-1/+3
|
* Don't use -ffast-math or other unsafe math optimizationsHein-Pieter van Braam2019-01-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Godot supports many different compilers and for production releases we have to support 3 currently: GCC8, Clang6, and MSVC2017. These compilers all do slightly different things with -ffast-math and it is causing issues now. See #24841, #24540, #10758, #10070. And probably other complaints about physics differences between release and release_debug builds. I've done some performance comparisons on Linux x86_64. All tests are ran 20 times. Bunnymark: (higher is better) (bunnies) min max stdev average fast-math 7332 7597 71 7432 this pr 7379 7779 108 7621 (102%) FPBench (gdscript port http://fpbench.org/) (lower is better) (ms) fast-math 15441 16127 192 15764 this pr 15671 16855 326 16001 (99%) Float_add (adding floats in a tight loop) (lower is better) (sec) fast-math 5.49 5.78 0.07 5.65 this pr 5.65 5.90 0.06 5.76 (98%) Float_div (dividing floats in a tight loop) (lower is better) (sec) fast-math 11.70 12.36 0.18 11.99 this pr 11.92 12.32 0.12 12.12 (99%) Float_mul (multiplying floats in a tight loop) (lower is better) (sec) fast-math 11.72 12.17 0.12 11.93 this pr 12.01 12.62 0.17 12.26 (97%) I have also looked at FPS numbers for tps-demo, 3d platformer, 2d platformer, and sponza and could not find any measurable difference. I believe that given the issues and oft-reported (physics) glitches on release builds I believe that the couple of percent of tight-loop floating point performance regression is well worth it. This fixes #24540 and fixes #24841
* Update copyright statements to 2019Rémi Verschelde2019-01-0116-32/+32
| | | | Happy new year to the wonderful Godot community!
* SCons: Allow building Mono module with OSXCrossRémi Verschelde2018-12-221-1/+5
| | | | | | | Improve the test logic to only assume that we're building for macOS if OSXCROSS_ROOT is defined *and* we requested p=osx. Supersedes #24480.
* Merge pull request #20063 from moiman100/fix-button-maskRémi Verschelde2018-12-141-0/+6
|\ | | | | Unified button mask behavior across platforms
| * Fixed button mask behaviormm2018-07-111-0/+6
| |
* | Merge pull request #23923 from bruvzg/ime_gdscriptRémi Verschelde2018-12-112-17/+29
|\ \ | | | | | | Changes IME to make it possible to use it from gdscript/gdnative
| * | Changes IME input to use notification instead of callback, exposes IME ↵bruvzg2018-11-232-17/+29
| | | | | | | | | | | | methods to gdscript/gdnative.
* | | Fix macOS icon export (add 1024px PNG icon and 32px/16px RLE icons).bruvzg2018-11-261-25/+141
|/ /
* | Merge pull request #21339 from Placinta/masterRémi Verschelde2018-11-201-0/+6
|\ \ | | | | | | Fix regular macOS build by passing -isysroot to compiler so correct system headers are found
| * | Pass -isysroot to compiler / linker when doing a macOS buildAlexandru Croitor2018-08-271-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the compiler would use system headers located at /System/Library/Frameworks, which could result in compilation failures due to the headers not always being up-to-date in regards to the latest installed macOS SDK headers that come with Xcode. Fix the issue by passing the SDK path via the -isysroot option to the compiler and linker invocations. If no custom SDK path is given, the build system queries the SDK path via xcrun --show-sdk-path, which returns something similar to /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/ /Developer/SDKs/MacOSX.sdk/ Querying via xcrun is now also done for iphone (and simulator) platforms as well. Here is an example of a compilation failure message due to outdated headers: platform/osx/os_osx.mm:1421:41: error: use of undeclared identifier 'NSAppKitVersionNumber10_12'; did you mean 'NSAppKitVersionNumber'? if (floor(NSAppKitVersionNumber) >= NSAppKitVersionNumber10_12) { ^~~~~~~~~~~~~~~~~~~~~~~~~~ NSAppKitVersionNumber /System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:26:28: note: 'NSAppKitVersionNumber' declared here
* | | [macOS] Change runtime OS version checks to allow build with MacOS 10.9 SDK,bruvzg2018-11-191-9/+12
| | |
* | | [macOS] Disable setWantsLayer on macOS < 10.14bruvzg2018-11-181-1/+3
| | |
* | | [macOS] Fix blank splash screenbruvzg2018-11-091-1/+1
| | |
* | | Fix initial blank screen on macOS Mojave (except splash).bruvzg2018-11-041-0/+10
| | |
* | | Fix .app bundle crash on macOSbruvzg2018-11-041-5/+5
| | |
* | | Merge pull request #23389 from marcelofg55/multiple_extRémi Verschelde2018-11-021-4/+12
|\ \ \ | | | | | | | | Export for OS X on OS X now lets you select .dmg or .zip
| * | | Export for OS X on OS X now lets you select .dmg or .zipMarcelo Fernandez2018-11-011-4/+12
| | | |
* | | | Merge pull request #23431 from buresu/fix-keycodeRémi Verschelde2018-11-021-1/+1
|\ \ \ \ | | | | | | | | | | Fix keycode problem on OSX
| * | | | Fix keycode problem on OSXNaoto Kondo2018-11-011-1/+1
| | | | |
* | | | | Fix init of VisualServerRasterRémi Verschelde2018-11-011-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Contrarily to what #23434 assumed, this is not a memory leak, the VisualServerRaster instance is passed as a parameter to VisualServerWrapMT's constructor. Fixes #23437.
* | | | | Fix initialization of visual server in all platformsGeorge Marques2018-11-011-1/+2
|/ / / / | | | | | | | | | | | | | | | | Avoid leaking an extra instance when using threads. Also fix threaded loading issues on Android and iOS.
* / / / Fix OS X crash when running as .appMarcelo Fernandez2018-10-291-1/+2
|/ / /
* | | Merge pull request #23279 from marcelofg55/osx_serverRémi Verschelde2018-10-292-0/+8
|\ \ \ | | | | | | | | Server platform works on OS X too
| * | | Server platform works on OS X tooMarcelo Fernandez2018-10-292-0/+8
| | | |
* | | | Dont use equality operators with None singleton in python fileslupoDharkael2018-10-271-1/+1
|/ / /
* | | Update mouse location on background scroll and window focus in macOSColin Kinloch2018-10-241-8/+18
| | |
* | | Call -update when window becomes the key windowPatrick Beard2018-10-231-0/+1
| | |
* | | Merge pull request #22685 from remmah/patch-1Rémi Verschelde2018-10-051-10/+12
|\ \ \ | | | | | | | | Modernized copy/paste APIs on macOS #7185
| * | | Modernized copy/paste APIs on macOS #7185remmah2018-10-031-10/+12
| | | |
* | | | Fix some OSX and iOS Clang warningsRémi Verschelde2018-10-041-7/+2
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes the following XCode 9.4.1 warnings: ``` core/os/memory.cpp:175:13: warning: unused variable 's' [-Wunused-variable] drivers/coremidi/core_midi.cpp:68:14: warning: comparison between NULL and non-pointer ('MIDIEndpointRef' (aka 'unsigned int') and NULL) [-Wnull-arithmetic] drivers/gles2/rasterizer_gles2.cpp:77:24: warning: unused function '_gl_debug_print' [-Wunused-function,34] drivers/unix/thread_posix.cpp:106:12: warning: unused variable 'running_thread' [-Wunused-variable,34] modules/gdnative/nativescript/nativescript.h:371:16: warning: in-class initialization of non-static data member is a C++11 extension [-Wc++11-extensions] platform/iphone/gl_view.mm:56:14: warning: unused variable 'video_previous_volume' [-Wunused-variable,34] platform/iphone/gl_view.mm:251:12: warning: unused function 'get_first_id' [-Wunused-function,34] platform/iphone/main.m:45:15: warning: unused variable 'app' [-Wunused-variable,34] platform/osx/os_osx.mm:79:15: warning: unused function 'convertRectToBacking' [-Wunused-function] ```
* | | SCons: Remove avoidable defines from main env's CPPPATHRémi Verschelde2018-10-011-2/+2
| | | | | | | | | | | | | | | | | | Also finally move freetype to its own env and disable warnings for it. Still needs some work to fix the awkward situation of the freetype and svg modules used in scene/ and editor/ respectively.
* | | SCons: Build thirdparty code in own env, disable warningsRémi Verschelde2018-09-281-1/+1
| | | | | | | | | | | | | | | Also remove unnecessary `Export('env')` in other SCsubs, Export should only be used when exporting *new* objects.
* | | Fix warnings about set but unused variables [-Wunused-but-set-variable]Rémi Verschelde2018-09-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes the following GCC 5 warnings: ``` drivers/gles2/rasterizer_canvas_gles2.cpp:814:8: warning: variable 'rt_size' set but not used [-Wunused-but-set-variable] drivers/gles2/rasterizer_scene_gles2.cpp:2270:11: warning: variable 'vp_height' set but not used [-Wunused-but-set-variable] drivers/gles2/rasterizer_scene_gles2.cpp:2673:22: warning: variable 'e' set but not used [-Wunused-but-set-variable] drivers/gles2/rasterizer_scene_gles2.cpp:715:7: warning: variable 'no_cull' set but not used [-Wunused-but-set-variable] drivers/gles2/shader_gles2.cpp:693:14: warning: variable 'cc' set but not used [-Wunused-but-set-variable] drivers/gles3/rasterizer_canvas_gles3.cpp:1226:8: warning: variable 'rt_size' set but not used [-Wunused-but-set-variable] drivers/gles3/rasterizer_scene_gles3.cpp:3039:10: warning: variable 'contrib' set but not used [-Wunused-but-set-variable] drivers/gles3/rasterizer_scene_gles3.cpp:4504:32: warning: variable 'vp_height' set but not used [-Wunused-but-set-variable] editor/editor_inspector.cpp:272:9: warning: variable 'guide_color' set but not used [-Wunused-but-set-variable] editor/editor_themes.cpp:1067:14: warning: variable 'alpha3' set but not used [-Wunused-but-set-variable] editor/editor_themes.cpp:263:8: warning: variable 'script_bg_color' set but not used [-Wunused-but-set-variable] editor/plugins/collision_shape_2d_editor_plugin.cpp:326:11: warning: variable 'cpoint' set but not used [-Wunused-but-set-variable] editor/plugins/mesh_editor_plugin.cpp:72:9: warning: variable 'size' set but not used [-Wunused-but-set-variable] editor/plugins/shader_editor_plugin.cpp:471:12: warning: variable 'mpos' set but not used [-Wunused-but-set-variable] editor/plugins/shader_editor_plugin.cpp:89:8: warning: variable 'basetype_color' set but not used [-Wunused-but-set-variable] editor/plugins/shader_editor_plugin.cpp:90:8: warning: variable 'type_color' set but not used [-Wunused-but-set-variable] editor/plugins/shader_editor_plugin.cpp:92:8: warning: variable 'string_color' set but not used [-Wunused-but-set-variable] modules/visual_script/visual_script_editor.cpp:2521:7: warning: variable 'seq_connect' set but not used [-Wunused-but-set-variable] platform/android/export/export.cpp:580:12: warning: variable 'styles_count' set but not used [-Wunused-but-set-variable] platform/android/export/export.cpp:584:12: warning: variable 'styles_offset' set but not used [-Wunused-but-set-variable] platform/osx/export/export.cpp:464:9: warning: variable 'zerr' set but not used [-Wunused-but-set-variable] scene/2d/tile_map.cpp:260:10: warning: variable 'tcenter' set but not used [-Wunused-but-set-variable] scene/3d/light.cpp:166:7: warning: variable 'editor_ok' set but not used [-Wunused-but-set-variable] scene/3d/navigation.cpp:566:11: warning: variable 'closest_navmesh' set but not used [-Wunused-but-set-variable] scene/gui/rich_text_label.cpp:869:8: warning: variable 'size' set but not used [-Wunused-but-set-variable] scene/main/viewport.cpp:705:14: warning: variable 'xform' set but not used [-Wunused-but-set-variable] scene/main/viewport.cpp:706:8: warning: variable 'ss' set but not used [-Wunused-but-set-variable] scene/main/viewport.cpp:726:14: warning: variable 'xform' set but not used [-Wunused-but-set-variable] scene/main/viewport.cpp:727:8: warning: variable 'ss' set but not used [-Wunused-but-set-variable] scene/resources/material.cpp:430:7: warning: variable 'using_world' set but not used [-Wunused-but-set-variable] servers/visual/shader_language.cpp:2026:7: warning: variable 'all_const' set but not used [-Wunused-but-set-variable] servers/visual/visual_server_scene.cpp:1383:28: warning: variable 'z_max_cam' set but not used [-Wunused-but-set-variable] ``` Also fixes two [-Wunused-value] warnings: ``` scene/gui/text_edit.cpp:4405:20: warning: statement has no effect [-Wunused-value] servers/visual/visual_server_scene.cpp:905:48: warning: value computed is not used [-Wunused-value] ``` Some of those are bugs and need further work, they are identified with `// FIXME` comments.
* | | Fixed hang when segfaulting after OS object destroyed (OSX and X11)Ibrahn Sahir2018-09-241-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | The two POSIX style crash handlers (OSX and X11) now remove their signal handlers when they are destroyed. Additonally if they are called while no OS singleton is set, they will simply abort(). This should not happen now that they remove themselves, but if a future change seperates OS object and crash handler lifetimes, this may be easier to report/debug than hanging on SIGSEGV.
* | | Fix Input::set_custom_mouse_cursor showing cursor when it's invisibleGuilherme Felipe2018-09-171-1/+3
| | |