aboutsummaryrefslogtreecommitdiff
path: root/core/os/os.h
Commit message (Collapse)AuthorAgeFilesLines
* IME context detection.Saracen2018-06-111-0/+1
|
* Merge pull request #14622 from bruvzg/non-rectangular-windowsHein-Pieter van Braam2018-05-081-0/+13
|\ | | | | Experimental support for windows with per-pixel transparency.
| * Experimental support for windows with per-pixel transparency (macOS, X11 and ↵bruvzg2018-04-071-0/+13
| | | | | | | | Windows).
* | Local debugger fixes and extensionsBlazej Floch2018-05-071-0/+1
| | | | | | | | | | | | | | | | | | - Adds q/quit option to console debugging - Adds options (variable_prefix) - Breaks into debugger with Ctrl-C in local debug mode (Unix/Windows) - Added option to list all breakpoints - Fixes add/remove breakpoint bug (invalid path parsing) - Minor cleanup
* | iPhone X support and iOS-related fixesRuslan Mustakov2018-04-111-0/+12
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Starting from April 2018 Apple no longer accepts apps that do not support iPhone X. For games this mainly means respecting the safe area, unobstructed by notch and virtual home button. UI controls must be placed within the safe area so that users can interact with them. This commit: - Adds OS::get_window_safe_area method that returns unobscured area of the window, where interactive controls should be rendered. - Reorganizes how launch screens are exported - the previous way was incorrect and modern iPhones did not pick up the correct screens and because of that used a non-native resolution to render the game. - Adds launch screen options for iPhone X. - Makes launch screens optional in the export template. If not specified, a white screen will be used. - Adds App Store icon (1024x1024) export option as it now has to be bundled with the app instead of being provided in iTunes Connect. - Fixes crash when launching games in iOS Simulator. It happened because controllerWasConnected callback came before the engine was initialized. Now in such case the controllers will be queued up and registered after initialization is done. - Fixes issue with the virtual keyboard where for some reason autocorrection panel would intersect with the keyboard itself and not allow you to use the top row of the keyboard. This is fixed by disabling autocorrection altogether. Closes #17358. Fixes #17428. Fixes #17331.
* Reinstate WebGL 1.0 driver in HTML5 platformLeon Krause2018-03-071-1/+2
|
* Clean and expose get_audio/video_driver_* funcs on OS classMarcelo Fernandez2018-03-041-6/+11
|
* Merge pull request #15564 from RandomShaper/adpod-topmostRémi Verschelde2018-02-141-1/+5
|\ | | | | Add new window setting: always on top
| * Add new window setting: always on topPedro J. Estébanez2018-01-051-1/+5
| | | | | | | | Implemented for Windows and Linux.
* | Added OS::center_window to center the window precisely on desktop platformsMarcelo Fernandez2018-02-121-0/+2
|/
* Add missing copyright headers and fix formattingRémi Verschelde2018-01-051-0/+1
| | | | | | Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
* Change OS::initialize signature to return Error (fix segfault on x11)Emmanuel Leblond2018-01-041-1/+1
|
* Merge pull request #12814 from guilhermefelipecgs/add_hardware_custom_cursorRémi Verschelde2018-01-031-0/+1
|\ | | | | Custom hardware-accelerated mouse cursor
| * Add implementation for custom hardware cursorGuilherme Silva2017-12-171-0/+1
| |
* | Update copyright statements to 2018Rémi Verschelde2018-01-011-2/+2
|/ | | | Happy new year to the wonderful Godot community!
* Add epic hack so vsync can be toggled in run-time from script. Fixes #14458.Juan Linietsky2017-12-161-2/+11
| | | | Call needs to be routed via visual server to reach the proper thread.
* Remove get_stack_bottomRuslan Mustakov2017-12-161-7/+0
| | | | | It's not used in godot-nim any longer and there were no other uses for it.
* Fix type mismatch in OS::set_borderless_windowRémi Verschelde2017-12-141-1/+1
| | | | Closes #14663.
* -Add lightmapperJuan Linietsky2017-12-141-0/+1
| | | | | | -Fixes to unwrapper (remove degenerates), makes Thekla not crash -Added optional cancel button in EditorProgress -Added function to force processing of events (needed for cancel button)
* Fixes vsync setting ignored when using a separate thread for renderingStefano Bonicatti2017-12-091-1/+3
| | | | | | | | | Setting the vsync in the main thread, after the rendering thread starts and takes the OpenGL context fails, so we need to do that before. Also, for some reason, the main thread cannot make current the context anymore. Fixes #13447
* Style: Apply clang-format again on all filesRémi Verschelde2017-12-071-1/+1
| | | | | Fixes issues introduced by newer clang-format versions or commits pushed directly without using the clang-format pre-commit hook.
* Changed the dynamic library open function to allow setting the path of the ↵Juan Linietsky2017-11-301-1/+1
| | | | library to open extra libraries.
* Allow customizing user:// path (folder in OS::get_data_path())Rémi Verschelde2017-11-261-1/+1
| | | | | | | | This allows to specify any valid folder name (including with subfolders) to use as user:// on all platforms. The folder is constrained to the platform-specific OS::get_data_path() (typically what `XDG_DATA_HOME` resolves to). Fixes #13236.
* Modified low processor sleep to 8000 and made it customizable (should be ↵Juan Linietsky2017-11-221-0/+3
| | | | customizable for editor too)
* Return and repair file loggingRuslan Mustakov2017-11-211-3/+4
| | | | And make it configurable, too.
* Merge pull request #12387 from santouits/x1111Rémi Verschelde2017-11-201-1/+3
|\ | | | | Fix x11 boot logo position in fullscreen and in maximized
| * Fix x11 boot logo position in fullscreen and in maximizedsantouits2017-10-261-1/+3
| |
* | Add initial support for the XDG Base Directory specRémi Verschelde2017-11-191-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Spec version 0.7 from https://standards.freedesktop.org/basedir-spec/basedir-spec-0.7.html (latest as of this commit). Three virtual methods are added to OS for the various XDG paths we will use: - OS::get_data_path gives XDG_DATA_HOME, or if missing: ~/.local/share on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows - OS::get_config_path gives XDG_CONFIG_HOME, or if missing: ~/.config on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows - OS::get_cache_path gives XDG_CACHE_HOME, or if missing: ~/.cache on X11, ~/Library/Caches on macOS and %APPDATA% on Windows So for Windows there are no changes, for Linux we follow the full split spec and for macOS stuff will move from ~/.godot to ~/Library/Application Support/Godot. Support for system-wide installation of templates on Unix was removed for now, as it's a bit hackish and I don't think anyone uses it. user:// will still be OS::get_data_path() + "/godot/app_userdata/$name" by default, but when using the application/config/use_shared_user_dir option it will now use XDG_DATA_HOME/$name, e.g. ~/.local/share/MyGame. For now everything still goes in EditorSettings::get_settings_dir(), but this will be changed in a later commit to make use of the new splitting where relevant. Part of #3513.
* | Rename OS::get_data_dir to OS::get_user_data_dirRémi Verschelde2017-11-171-2/+2
| | | | | | | | | | Will be needed to avoid confusion with system data path (XDG_DATA_HOME) and editor data dir in upcoming refactoring.
* | Remove get_default_video_mode definition on OSX/iOSRémi Verschelde2017-11-091-1/+1
| | | | | | | | | | | | | | | | It had been missed in d09160a8b67fdc60e8108962c4e9bd4c0bc7f13e and broke compilation for those platforms. Took the opportunity to run clang-format on the code base to fix some corner cases that went through our static tests/were overlooked recently.
* | Make video mode initialization more intuitive, fixes #12022Juan Linietsky2017-11-091-3/+1
| |
* | Add Colemak keybindings to editor for osxN0hbdy2017-10-301-0/+1
|/
* Merge pull request #11810 from marcelofg55/osx_export_improvRémi Verschelde2017-10-091-1/+1
|\ | | | | OS X export code improvements
| * OS::execute can now read from stderr too when executing with a pipeMarcelo Fernandez2017-10-031-1/+1
| |
* | Merge pull request #11823 from endragor/virtual-keyboard-heightGilles Roudiere2017-10-041-0/+3
|\ \ | | | | | | Allow to obtain virtual keyboard height
| * | Allow to obtain virtual keyboard heightRuslan Mustakov2017-10-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | On mobile platforms virtual keyboards take up significant amount of screen space and UI containing a text box may need to be adjusted after the keyboard appears to keep the text box visible to user. This commit adds a way to obtain virtual keyabord height so that controls are aware of how much they need to move.
* | | fixed the OS.has_feature() API, and added support for 32 and 64.Juan Linietsky2017-10-031-1/+1
| |/ |/|
* | Merge pull request #11782 from eska014/persistent-userfs-testHein-Pieter van Braam2017-10-031-0/+2
|\ \ | |/ |/| Add OS::is_userfs_persistent, allow starting HTML5 platform in private mode
| * Add OS::is_userfs_persistent to check user:// persistenceLeon Krause2017-10-021-0/+2
| | | | | | | | Allows starting HTML5 export when IndexedDB is not available.
* | Merge pull request #11568 from endragor/loggersAndreas Haas2017-10-021-11/+10
|\ \ | | | | | | Extract logging logic
| * | Extract logging logicRuslan Mustakov2017-09-251-11/+10
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously logging logic was scattered over OS class implementations with plenty of duplication. Major changes in this commit: - Extracted logging logic into a separate Logger hierarchy. It allows easy configuration of logging mechanism depending on compile-time or run-time configuration. - Implemented RotatedFileLogger which is usually used with StdLogger, providing persistency of logs. It is often important to be able to obtain logs of the game even in production to be able to understand what happened prior to some problem. On mobile there previously was no way to obtain the logs aside from having the device connected to your machine. - flush() is not performed in release mode for every logged line. It is only performed for errors.
* / FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trashMarcelo Fernandez2017-09-251-0/+2
|/
* Rename pos to position in user facing methods and variablesletheed2017-09-201-1/+1
| | | | | | | | | | | Rename user facing methods and variables as well as the corresponding C++ methods according to the folloming changes: * pos -> position * rot -> rotation * loc -> location C++ variables are left as is.
* Merge pull request #11230 from maxim-sheronov/fix_enum_bindingsThomas Herzog2017-09-151-3/+10
|\ | | | | Fix enums bindings
| * Fix enums bindingsMaxim Sheronov2017-09-131-3/+10
| | | | | | | | | | Add missed bindings for enums Move some enums to class to have correct output of api.json
* | Added a crash handler to dump the backtrace on Windows, Linux and OS XMarcelo Fernandez2017-09-131-0/+3
|/
* Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-271-1/+1
|
* p_screen param from get_screen_* funcs now default to the current screenMarcelo Fernandez2017-08-211-3/+3
|
* Implement NSTextInputClient protocol for IMEbruvzg2017-08-091-0/+3
|
* Makes all Godot API's methods Lower CaseIndah Sylvia2017-08-071-2/+2
|