summaryrefslogtreecommitdiff
path: root/platform/osx/display_server_osx.mm
AgeCommit message (Collapse)Author
2021-05-17Merge pull request #48168 from LightningAA/control-to-ctrl-4.0Rémi Verschelde
2021-05-17Make all file access 64-bit (uint64_t)Pedro J. Estébanez
This changes the types of a big number of variables. General rules: - Using `uint64_t` in general. We also considered `int64_t` but eventually settled on keeping it unsigned, which is also closer to what one would expect with `size_t`/`off_t`. - We only keep `int64_t` for `seek_end` (takes a negative offset from the end) and for the `Variant` bindings, since `Variant::INT` is `int64_t`. This means we only need to guard against passing negative values in `core_bind.cpp`. - Using `uint32_t` integers for concepts not needing such a huge range, like pages, blocks, etc. In addition: - Improve usage of integer types in some related places; namely, `DirAccess`, core binds. Note: - On Windows, `_ftelli64` reports invalid values when using 32-bit MinGW with version < 8.0. This was an upstream bug fixed in 8.0. It breaks support for big files on 32-bit Windows builds made with that toolchain. We might add a workaround. Fixes #44363. Fixes godotengine/godot-proposals#400. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-05-07Rename "Control" key to "Ctrl" and add "_pressed" suffix to all ↵Lightning_A
InputEventWithModifiers properties/methods
2021-05-04Rename `doubleclick` to `double_click`Aaron Franke
2021-04-29Replace remaining uses of `NULL` with `nullptr`Rémi Verschelde
Follow-up to #38736 (these uses were likely added after this PR was merged).
2021-03-28Rename Texture.get_data() to get_image()Marcel Admiraal
2021-03-23Rename ButtonList enum and members to MouseButtonAaron Franke
2021-02-15[macOS] Ignore mouse move event caused by mouse mode switch.bruvzg
2021-01-09Split OS::execute into two methodsMarcel Admiraal
1. execute(): Executes a command and returns the results. 2. create_process(): Creates a new process and returns the new process' id.
2021-01-01Update copyright statements to 2021Rémi Verschelde
Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
2020-12-23[4.0] Fix file drag-drop on M1 Macs.bruvzg
2020-12-04RenderingServer reorganizationreduz
2020-11-26[Complex Text Layouts] Refactor Font class, default themes and controls to ↵bruvzg
use Text Server interface. Implement interface mirroring. Add TextLine and TextParagraph classes. Handle UTF-16 input on macOS and Windows.
2020-10-13[macOS] Suppress momentum scrolling after key press or modifier change to ↵bruvzg
prevent unexpected change of action.
2020-10-01Fix `screen_get_dpi` on macOS for non fractional display scales and restore ↵bruvzg
documentation.
2020-09-25[macOS] Fix mouse position in captured mode.bruvzg
2020-09-17Add window click-through support.bruvzg
2020-09-03Merge pull request #41456 from nekomatata/x11-fix-popupsRémi Verschelde
Popup fixes for X11 display server
2020-08-25[macOS] Fix heap use-after-free in DisplayServer.bruvzg
2020-08-22Re-apply "Fixes for windows in X11 tiling WMs"PouleyKetchoupp
From PR #38727 which was reverted in #41373 because of regressions in Ubuntu with Gnome. Co-authored-by: Lorenzo Cerqua <lorenzocerqua@tutanota.com>
2020-08-19Revert "Fixes for windows in X11 tiling WMs"Juan Linietsky
2020-08-15Fix "on top" incorrectly set on init (all platforms).bruvzg
Fix "on top" reseting on window update. (macOS).
2020-08-13Remove obsolete GLES2 backend codeRémi Verschelde
This code currently isn't compiled (and cannot compile). We plan to re-add OpenGL ES-based renderer(s) in Godot 4.0 alongside Vulkan (probably ES 3.0, possibly also a low-end ES 2.0), but the code will be quite different so it's not relevant to keep this old Godot 3.2 code. The `drivers/gles2` code from the `3.2` branch can be used as a reference for a potential new implementation.
2020-07-26[macOS] Refocus last key window after `DisplayServer::alert` is closed.bruvzg
2020-07-26Merge pull request #38727 from Riteo/tiling-wm-issues-testsRémi Verschelde
Fixes for windows in X11 tiling WMs
2020-07-26[macOS] Prevent setting `BORDERLESS` flag and calling ↵bruvzg
`window_move_to_foreground` from giving focus to window with `NO_FOCUS` flag.
2020-07-23DisplayServer: separate window showing into another functionLorenzo Cerqua
When creating a window, Godot would first register it to the WM(show it) and then set its flags. This works fine on a floating WM, but on tiling WMs as soon as a window gets registered the WM immediately acts on the window by scaling it up and treating it as a generic window, being registered without any special flags. This commit separates the showing of the window into another function and calls it after the most important flags are set, making windows with special flags(eg. all popups) work again on tiling WMs. Fixes #37930
2020-07-21Merge pull request #40450 from asmaloney/spellingRémi Verschelde
Fix spelling & grammar in comments, docs, and messages
2020-07-21Fix spelling & grammar in comments, docs, and messagesAndy Maloney
2020-07-21Fix MoltenVK layer creation when compiling with OSXCrossPouleyKetchoupp
2020-07-15Merge pull request #40268 from DanielZTing/masterRémi Verschelde
Fix cancel/OK button order on macOS
2020-07-14[macOS] Fix window size on macOS Big Sur (title bar height is no longer same ↵bruvzg
as menu height), use top-left corner as resize origin instead of bottom-left.
2020-07-13Add error messages if Vulkan init failed, prevent Vulkan context freeing ↵bruvzg
uninitialized device and instance.
2020-07-10Fix cancel/OK button order on macOSDaniel Ting
The macOS platform convention regarding button order is cancel on left, OK on right.
2020-07-09[macOS] Fix transient windows.bruvzg
2020-07-04[macOS] Implement seamless display scaling.bruvzg
2020-07-03Improve the situation of DND on X11Juan Linietsky
2020-07-02[macOS] Implement confined mouse mode.bruvzg
2020-07-01Merge pull request #39788 from bruvzg/macos_apple_siliconRémi Verschelde
[macOS] Add support for the Apple Silicon (ARM64) build target.
2020-06-30[macOS] Add application become/resign active notifications.bruvzg
2020-06-29[macOS] Add support for the Apple Silicon (ARM64) build target.bruvzg
2020-06-22macOS, prevent multiple CGDisplayHideCursor calls unpaired with ↵bruvzg
CGDisplayShowCursor.
2020-06-13Add keyboard layout enumeration / set / get functions (macOS, Windows, ↵bruvzg
Linux/X11), remove latin variant function.
2020-05-16Fix popup positions on multiple screens (with same scaling only).bruvzg
2020-05-14Style: Enforce separation line between function definitionsRémi Verschelde
I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-10Style: clang-format: Disable AllowShortCaseLabelsOnASingleLineRémi Verschelde
Part of #33027.
2020-05-10Style: clang-format: Disable AllowShortIfStatementsOnASingleLineRémi Verschelde
Part of #33027, also discussed in #29848. Enforcing the use of brackets even on single line statements would be preferred, but `clang-format` doesn't have this functionality yet.
2020-04-29Merge pull request #37802 from ThakeeNathees/window-position-bug-osx-x11Rémi Verschelde
display server window position bug fix
2020-04-28Rename InputFilter back to InputRémi Verschelde
It changed name as part of the DisplayServer and input refactoring in #37317, with the rationale that input no longer goes through the main loop, so the previous Input singleton now only does filtering. But the gains in consistency are quite limited in the renaming, and it breaks compatibility for all scripts and tutorials that access the Input singleton via the scripting language. A temporary option was suggested to keep the scripting singleton named `Input` even if its type is `InputFilter`, but that adds inconsistency and breaks C#. Fixes godotengine/godot-proposals#639. Fixes #37319. Fixes #37690.