summaryrefslogtreecommitdiff
path: root/platform/osx
AgeCommit message (Collapse)Author
2019-06-15Adding a new Camera Server implementation to Godot.BastiaanOlij
This is a new singleton where camera sources such as webcams or cameras on a mobile phone can register themselves with the Server. Other parts of Godot can interact with this to obtain images from the camera as textures. This work includes additions to the Visual Server to use this functionality to present the camera image in the background. This is specifically targetted at AR applications.
2019-06-12Merge pull request #29481 from bruvzg/macos_fix_dvorak_qwerty_cmd_hotkeysRémi Verschelde
Fixes hotkeys on "Dvorak - QWERTY ⌘" keyboard layout.
2019-06-12Merge pull request #29465 from bruvzg/per_pixel_transp_imprRémi Verschelde
Removes redundant "splash" setting, improves per pixel transparency documentation.
2019-06-04[macOS] Fixes hotkeys on "Dvorak - QWERTY ⌘" keyboard layout.bruvzg
2019-06-04[macOS] Fixes unicode input with IME mode inactive, Improves IME mode ↵bruvzg
documentation.
2019-06-04Removes redundant "display/window/per_pixel_transparency/splash" setting, ↵bruvzg
improves per pixel transparency documentation.
2019-05-27Merge pull request #29119 from bruvzg/native_icon_supportRémi Verschelde
Add native window/taskbar icon support for Windows and macOS.
2019-05-24Add native window/taskbar icon support for Windows and macOS.bruvzg
Co-authored-by: Markus Törnqvist <mjt@nysv.org>
2019-05-23Check project settings live before lookup in crash handlerIbrahn Sahir
In x11, windows and osx crash handlers, check project settings exists before looking up the crash handler message setting. Avoids crashing the crash handler when handling a crash outside project settings lifetime. Instead omitting the configurable message and continuing with trace dump.
2019-05-21added a const keyword for a methods that return constant literal...hbina085
2019-05-18Allow project export to be canceledGeorge Marques
2019-05-17[macOS] Allow using user provided `.icns` files for exported app icons.bruvzg
2019-05-01Merge pull request #27676 from qarmin/small_fixes_2Rémi Verschelde
Small fixes to static analyzer bugs
2019-04-30SCons: Always use env.Prepend for CPPPATHRémi Verschelde
Include paths are processed from left to right, so we use Prepend to ensure that paths to bundled thirdparty files will have precedence over system paths (e.g. `/usr/include` should have lowest priority).
2019-04-29Merge pull request #28061 from guilhermefelipecgs/fix_19137Rémi Verschelde
[Input] Release keys/actions pressed if window loses focus
2019-04-29Merge pull request #28185 from KLee1248/key_remappingRémi Verschelde
Re-maps KEY_BRACELEFT/RIGHT for OSX users
2019-04-27[Input] Release keys/actions pressed if window loses focusGuilherme Felipe
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com> Co-authored-by: Marcelo Fernandez <marcelofg55@gmail.com>
2019-04-24SCons: Review uses of CCFLAGS, CXXFLAGS and CPPFLAGSRémi Verschelde
Many contributors (me included) did not fully understand what CCFLAGS, CXXFLAGS and CPPFLAGS refer to exactly, and were thus not using them in the way they are intended to be. As per the SCons manual: https://www.scons.org/doc/HTML/scons-user/apa.html - CCFLAGS: General options that are passed to the C and C++ compilers. - CFLAGS: General options that are passed to the C compiler (C only; not C++). - CXXFLAGS: General options that are passed to the C++ compiler. By default, this includes the value of $CCFLAGS, so that setting $CCFLAGS affects both C and C++ compilation. - CPPFLAGS: User-specified C preprocessor options. These will be included in any command that uses the C preprocessor, including not just compilation of C and C++ source files [...], but also [...] Fortran [...] and [...] assembly language source file[s]. TL;DR: Compiler options go to CCFLAGS, unless they must be restricted to either C (CFLAGS) or C++ (CXXFLAGS). Preprocessor defines go to CPPFLAGS.
2019-04-19Re-maps KEY_BRACELEFT/RIGHT for OSX usersKLee1248
Should fix #28098.
2019-04-15Add Input::get_current_cursor_shapeGuilherme Felipe
[Clean up] Removed unused/unnecessary methods.
2019-04-09Merge pull request #27490 from bruvzg/macos_non_resizable_fullscreenRémi Verschelde
Allow non-resizeable windows to enter full-screen mode.
2019-04-07Add FileAccess::set_unix_permissions for Unix platformsJuan Linietsky
2019-04-06Remove unused importsHendrikto
2019-04-04Small fixes to static analyzer bugsqarmin
2019-03-28[macOS] Allow non-resizeable windows to enter fullscreen mode.bruvzg
2019-03-12[macOS] Fix hiDPI scaling support in `OS.get_real_window_size` and ↵bruvzg
`OS.set_window.size` functions.
2019-03-07osx: update mouse position on mouse pressPhilip Whitfield
2019-03-06[macOS] Fixes NumPad keys detection, adds some missing key mappings.bruvzg
2019-03-06Merge pull request #26707 from bruvzg/fix_macos_mscrollRémi Verschelde
Fix macOS accumulated mouse scroll events.
2019-03-06Fix macOS accumulated mouse scroll events.bruvzg
2019-03-06Fix directory check when exporting projectvolzhs
Fix #26702
2019-03-06Merge pull request #26633 from akien-mga/driver-fallback-etcRémi Verschelde
Disable driver fallback to GLES2 by default
2019-03-05Fixes misleading error message when trying to exportRicardo Lüders
This patch fixes the misleading error message when users try to "export all" into an invalid destination path. Closes #26539
2019-03-05Disable driver fallback to GLES2 by defaultRémi Verschelde
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.
2019-03-04More style cleanup...Rémi Verschelde
2019-03-03Add support for event accumlation (off by default, on for editor), fixes #26536Juan Linietsky
2019-02-26-Remove harcoded opengl extension testing from OS, ask rasterizer instead.Juan Linietsky
-Fixed a bug where etc textures were imported broken
2019-02-23[macOS] Make `move_window_to_foreground` to take focus in addition to moving ↵bruvzg
window to front.
2019-02-12Platform: Ensure classes match their header filenameRémi Verschelde
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`
2019-02-12Drivers, main, servers: Ensure classes match their header filenameRémi Verschelde
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`
2019-01-31[macOS] Fix rendering on retina displays with HiDPI support disabled.bruvzg
2019-01-29Using DisplayLink to emulate vsync on OSXBastiaan Olij
2019-01-22Avoid cyclic iteration check, fixes #24969Juan Linietsky
2019-01-21ExportDialog: Make error messages translatableRémi Verschelde
Also fix missing newlines that caused #24202.
2019-01-11[macOS] Fix missing mouse move event speed.bruvzg
2019-01-09Don't use -ffast-math or other unsafe math optimizationsHein-Pieter van Braam
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
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-12-22SCons: Allow building Mono module with OSXCrossRémi Verschelde
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.
2018-12-14Merge pull request #20063 from moiman100/fix-button-maskRémi Verschelde
Unified button mask behavior across platforms
2018-12-11Merge pull request #23923 from bruvzg/ime_gdscriptRémi Verschelde
Changes IME to make it possible to use it from gdscript/gdnative