summaryrefslogtreecommitdiff
path: root/platform/x11/os_x11.cpp
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-04-09Fix custom cursor when it's hiddenGuilherme Felipe
[Linux] Ensures that the custom cursor will be used when changing to MOUSE_MODE_VISIBLE. Fix #3086 [Windows] Fix cursor flickering when MOUSE_MODE_HIDDEN. [Mac] Fix possible cursor flicker when MOUSE_MODE_HIDDEN.
2018-04-05Remove size restriction for mouse cursorGuilherme Felipe
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-03-01add GLES 2 renderer for 2Dkarroffel
This commit adds a new rendering backend, GLES2, and adds a project setting to enable it. Currently this backend can only be used on the X11 platform, but integrating into other platforms is planned.
2018-02-28Fix various valgrind reported uninitialized variable usesHein-Pieter van Braam
2018-02-21Fix typos with codespellluz.paz
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt` Whitelist consists of: ``` ang doubleclick lod nd que te unselect ```
2018-02-19Merge pull request #16675 from ↵Rémi Verschelde
Iskustvo/improved_error_detectioin_in_move-to-trash_for_Linux [X11] Improving error detection in move_to_trash
2018-02-18[X11] Improving error detection in move_to_trashIskustvo
2018-02-16Remove window decorations for fullscreen on X11Pedro J. Estébanez
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-01-31X11: implement OS.get_unique_idgeequlim
2018-01-29Fix Copy/Paste problems on X11Hein-Pieter van Braam
The target of the TARGETS type should be XA_ATOM and not XA_TARGETS when requested. Since we are sending a number of ATOMS the size should be set to the integer size and not the char size. The size field of the atoms is also the number of atoms and not the size of the array. This caused some clients to wrongly interpret the data and read garbage in the X11 packet. I also add the more modern representation for UTF-8 and clarify the error message if a client attempts to request a type we don't know about. This fixes #10431
2018-01-24Silence verbose stderr info message on X11Rémi Verschelde
2018-01-05Add new window setting: always on topPedro J. Estébanez
Implemented for Windows and Linux.
2018-01-05X11: Add missing return in OS_X11::initialize().Andreas Haas
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-24x11: Fix maximized splash-boot screen bug.Enzo Nocera
Fixes #14336
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-10Fix no mouse if touch device present in X11Pedro J. Estébanez
Plus several improvements in this area. Sadly, grabbing has been disabled until a better solution is found. Fixes #14427.
2017-12-09X11: Process entire event queue at startup.Andreas Haas
Should fix #14336
2017-12-09Fixes vsync setting ignored when using a separate thread for renderingStefano Bonicatti
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
2017-12-07Style: Apply new clang-format 5.0 style to all filesRémi Verschelde
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-17Rename OS::get_data_dir to OS::get_user_data_dirRémi Verschelde
Will be needed to avoid confusion with system data path (XDG_DATA_HOME) and editor data dir in upcoming refactoring.
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-30Add Colemak keybindings to editor for osxN0hbdy
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-17Fix BSD compile issuesMarcelo Fernandez
2017-10-13Use binary names instead of absolute paths in calls to OS::execute.J08nY
Now that #12009 is merged, we should let the system find the binary on the users $PATH and don't assume we know where to look for them in different distributions.
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-21Merge pull request #11141 from fcobos/x11_borderless_switch_fixRémi Verschelde
X11 - Adding borders back to a borderless window was not working.
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.