summaryrefslogtreecommitdiff
path: root/platform/x11/os_x11.h
AgeCommit message (Collapse)Author
2018-04-30Implement universal translation of touch to mousePedro J. Estébanez
Now generating mouse events from touch is optional (on by default) and it's performed by `InputDefault` instead of having each OS abstraction doing it. (*) The translation algorithm waits for a touch index to be pressed and tracks it translating its events to mouse events until it is raised, while ignoring other pointers. Furthermore, to avoid an stuck "touch mouse", since not all platforms may report touches raised when the window is unfocused, it checks if touches are still down by the time it's focused again and if so it resets the state of the emulated mouse. *: In the case of Windows, since it already provides touch-to-mouse translation by itself, "echo" mouse events are filtered out to have it working like the rest. On X11 a little hack has been needed to avoid a case of a spurious mouse motion event that is generated during touch interaction. Plus: Improve/fix tracking of current mouse position. ** Summary of changes to settings: ** - `display/window/handheld/emulate_touchscreen` becomes `input/pointing_devices/emulate_touch_from_mouse` - New setting: `input/pointing_devices/emulate_mouse_from_touch`
2018-03-04Clean and expose get_audio/video_driver_* funcs on OS classMarcelo Fernandez
2018-03-02Fix `--help` output, allow renderer override from command line ↵bruvzg
(`--video-driver`).
2018-02-14Merge pull request #15564 from RandomShaper/adpod-topmostRémi Verschelde
Add new window setting: always on top
2018-02-14Merge pull request #15864 from GodotExplorer/pr-get_unique_id-desktop-implRémi Verschelde
Implement more methods for OS on Desktop platforms
2018-02-12Added OS::center_window to center the window precisely on desktop platformsMarcelo Fernandez
2018-02-01Fix inconsistencies and typos in argument namesPaolo Perkovic
2018-01-31X11: implement OS.get_unique_idgeequlim
2018-01-05Add new window setting: always on topPedro J. Estébanez
Implemented for Windows and Linux.
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
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.
2018-01-04Change OS::initialize signature to return Error (fix segfault on x11)Emmanuel Leblond
2018-01-03Merge pull request #15092 from ↵Rémi Verschelde
guilhermefelipecgs/fix_infinite_loop_on_splash_screen Fix infinite loop on splash screen on tiling windows managers
2018-01-03Merge pull request #12814 from guilhermefelipecgs/add_hardware_custom_cursorRémi Verschelde
Custom hardware-accelerated mouse cursor
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-12-27Fix infinite loop introduced by 6f3486c4 on tiling windows managersGuilherme Silva
2017-12-17Add implementation for custom hardware cursorGuilherme Silva
2017-12-16Add epic hack so vsync can be toggled in run-time from script. Fixes #14458.Juan Linietsky
Call needs to be routed via visual server to reach the proper thread.
2017-12-14Fix type mismatch in OS::set_borderless_windowRémi Verschelde
Closes #14663.
2017-12-14-Add lightmapperJuan Linietsky
-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)
2017-12-09X11: Process entire event queue at startup.Andreas Haas
Should fix #14336
2017-12-06Implement multitouch on X11Pedro J. Estébanez
2017-11-20Merge pull request #12387 from santouits/x1111Rémi Verschelde
Fix x11 boot logo position in fullscreen and in maximized
2017-11-19Add initial support for the XDG Base Directory specRémi Verschelde
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.
2017-11-09Make video mode initialization more intuitive, fixes #12022Juan Linietsky
2017-11-03Merge pull request #12262 from AndreaCatania/pplugJuan Linietsky
Physics server plug
2017-11-04Implemented physics plugAndreaCatania
Moved init_physics Implemented physics 2D plug Fix clang Fix clang Fix static check Fix clang Fix static check Moved physics server initialization Moved physics server settings initialization
2017-10-30Implemented OS get_latin_keyboard_variant on x11Marcelo Fernandez
2017-10-26Fix x11 boot logo position in fullscreen and in maximizedsantouits
2017-10-13Drop unusued LEGACYGL_ENABLED checkRémi Verschelde
[ci skip]
2017-09-25FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trashMarcelo Fernandez
2017-09-20Rename pos to position in user facing methods and variablesletheed
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.
2017-09-17Merge pull request #11252 from marcelofg55/fix_noaudio_crashRémi Verschelde
Fix crash when no audio driver is available
2017-09-15Merge pull request #11230 from maxim-sheronov/fix_enum_bindingsThomas Herzog
Fix enums bindings
2017-09-13Fix crash when no audio driver is availableMarcelo Fernandez
2017-09-13Fix enums bindingsMaxim Sheronov
Add missed bindings for enums Move some enums to class to have correct output of api.json
2017-09-13Added a crash handler to dump the backtrace on Windows, Linux and OS XMarcelo Fernandez
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde
2017-08-21p_screen param from get_screen_* funcs now default to the current screenMarcelo Fernandez
2017-07-19-Renamed GlobalConfig to ProjectSettings, makes more sense.Juan Linietsky
-Added system for feature overrides, it's pretty cool :)
2017-07-11IME window follow the input cursor.geequlim
Abstruct set_ime_position to OS class. Update ime position for LineEdit and TextEdit.
2017-07-05Implemented borderless window functions on Linux.Marcelo Fernandez
2017-06-29Workaround for IME and echo events on Linux:Jia Wang
Request detectable auto-repeat (Require XKB extension) to support echo events and IME at the same time. Fixes #29, #7106 and #9381.
2017-06-25Revert "Workaround for IME on Linux."Juan Linietsky
2017-06-25Workaround for IME on Linux(fixes #29 #7106):Jia Wang
Workaround for supporting input method frameworks like SCIM, IBus, Fcitx, etc. The locale is set when the application starts. Workaround for input when the input context within the specified input method is not available.
2017-05-20Removal of InputEvent as built-in Variant type..Juan Linietsky
this might cause bugs I haven't found yet..
2017-05-17Removal of Image from Variant, converted to a Resource.Juan Linietsky
2017-04-10Rename [gs]et_pos to [gs]et_position for ControlsSergey Pusnei
Control set_pos -> set_position Control set_global_pos -> set_global_position [gs]et_mouse_pos -> [gs]et_mouse_position [gs]et_global_mouse_pos -> [gs]et_global_mouse_position fixes #8005
2017-04-08Add "Godot Engine contributors" copyright lineRémi Verschelde
2017-03-26Input: Remove usage of platform dependent event IDs.Andreas Haas
The ID property for InputEvents is set by `SceneTree` when sending the event down the tree. So there's no need for the platform specific code to set this value when it will later be overriden anyway...
2017-03-05A Whole New World (clang-format edition)Rémi Verschelde
I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code