summaryrefslogtreecommitdiff
path: root/servers/display_server.h
AgeCommit message (Collapse)Author
2023-01-12Add framework for avoidance of color flash in new windowsPedro J. Estébanez
2023-01-08Use BitField<> in core type masksJuan Linietsky
* All core types masks are now correctly marked as bitfields. * The enum hacks in MouseButtonMask and many other types are gone. This ensures that binders to other languages non C++ can actually implement type safe bitmasks. * Most bitmask operations replaced by functions in BitField<> * Key is still a problem because its enum and mask at the same time. While it kind of works in C++, this most likely can't be implemented safely in other languages and will have to be changed at some point. Mostly left as-is. * Documentation and API dump updated to reflect bitfields in core types.
2023-01-07Add support for the custom initial screen for the main window, fix primary ↵bruvzg
screen detection.
2023-01-05One Copyright Update to rule them allRémi Verschelde
As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
2022-12-29Improve `window_set_current_screen` and fix secondary window initial mode ↵bruvzg
and positions.
2022-12-07Merge pull request #69712 from bruvzg/real_sizeRémi Verschelde
Rename `window_get_real_size`, add position counterpart.
2022-12-07Rename `window_get_real_size` to `window_get_size_with_decorations`, add ↵bruvzg
`window_get_position_with_decorations`.
2022-12-07Fix Determining Window for TouchscreenMarkus Sauermann
DisplayServer::screen_is_touchscreen will likely never utilize its parameter p_screen. This PR replaces this function by DisplayServer::is_touchscreen_available() with the same functionality. This solves the problem, that a SubViewport was used for determining the screen, which resulted in error messages.
2022-11-08Add support for OpenGL to OpenXRDavid Snopek
2022-10-24Make window creation with custom position do not flashWei Guo
2022-10-10[macOS] Fix window button position and title bar size when editor scale do ↵bruvzg
not match OS UI scale.
2022-09-22[macOS extend-to-title] Add scene/project name to the editor title, fix ↵bruvzg
incorrect window button position/order when system primary language is RTL.
2022-09-20[macOS] Add an option to align window buttons in "extend to title" mode.bruvzg
2022-09-02Merge pull request #65026 from bruvzg/dark_modeRémi Verschelde
2022-09-01[macOS] Handle accelerator and click events of the global menu items separately.bruvzg
2022-08-31Add support for system dark mode and accent color detection (macOS and ↵bruvzg
Windows). Add support for dark mode title bar on Windows.
2022-08-26[macOS] Extend editor contents to the window titlebar for better space usage.bruvzg
2022-08-22Replace Array return types with TypedArraykobewi
2022-08-18Implement `MenuBar` control to wrap `PopupMenu`s or native menu, use native ↵bruvzg
menu for editor.
2022-08-04Add support for multiple virtual keyboard typesBrian Semrau
2022-05-03Merge pull request #60714 from Calinou/typedef-remove-refRémi Verschelde
Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`
2022-05-03Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`Hugo Locurcio
These typedefs don't save much typing compared to the full `Ref<Resource>` and `Ref<RefCounted>`, yet they sometimes introduce confusion among new contributors.
2022-05-02Fix screen_get_usable_rect returning display safe areaMarcel Admiraal
2022-05-02Merge pull request #60551 from madmiraal/implement-3466Rémi Verschelde
Add a method for obtaining display cutouts on Android
2022-04-28Implement text-to-speech support on Android, iOS, HTML5, Linux, macOS and ↵bruvzg
Windows. Implement TextServer word break method.
2022-04-26Add a method for obtaining display cutouts on AndroidMarcel Admiraal
2022-03-27Rename warp mouse functions to warp_mouseMarkus Sauermann
2022-03-22[macOS] Add missing global menu features.bruvzg
2022-02-25Improve popup window handling.bruvzg
Add window FLAG_POPUP and a platform specific routines to control popup auto-hiding and event forwarding.
2022-02-12Merge pull request #56953 from bruvzg/ex_wndRémi Verschelde
2022-02-12Add exclusive window handling to DisplayServer (on macOS and Windows).bruvzg
2022-02-11Change SCREEN_GET_REFRESH_RATE_FALLBACK to -1.0jordi
2022-02-04Merge pull request #57341 from bruvzg/win_multiwin_fsRémi Verschelde
2022-02-04Merge pull request #57335 from jordigcs/display-refresh-rateRémi Verschelde
2022-02-04[Windows] Add WS_BORDER flag to windows in WINDOW_MODE_FULLSCREEN mode to ↵bruvzg
allow multi-window interface in full-screen. [Windows] Add WINDOW_MODE_EXCLUSIVE_FULLSCREEN without WS_BORDER flag enabled (no multi-window support).
2022-02-03Add screen_get_refresh_rate to DisplayServerjordi
2022-01-27Merge pull request #56785 from bruvzg/nat_handles_4Rémi Verschelde
2022-01-19Add `DisplayServer.clipboard_has()` to check clipboard contentHaoyu Qiu
2022-01-18Window management improvements.bruvzg
[macOS] Fix transient windows not working in the full-screen mode. [macOS] Fix moving transient windows to the other screen than parent window. [macOS] Fix popup menu switch on hover. [macOS] Use content origin rect for windows position (to ensure `DS.mouse_get_position` is equal to `DS.window_get_position` + mouse position from the input events). [macOS] Fix incorrect input coordinates, when external display with different scaling in connected/disconnected. [macOS/Windows] Fix moving fullscreen windows between the screens. Add auto refocusing of the parent window, when the focused transient window is closed. Remove redundant `DS.mouse_get_absolute_position` function (returns mouse position in the screen coordinates, same as `DS.mouse_get_position`).
2022-01-17Merge pull request #56012 from bruvzg/wt🤎4Rémi Verschelde
2022-01-14Add support for getting native display, window, and view handles.bruvzg
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-18[Windows] Improve console handling and execute/create_process.bruvzg
Always build with the GUI subsystem. Redirect stdout and stderr output to the parent process console. Use CreateProcessW for blocking `execute` calls with piped stdout and stderr (prevent console windows for popping up when used with the GUI subsystem build, and have more consistent behavior with `create_process`). Add `open_console` argument to the `execute` and `create_process` to open a new console window. Remove `interface/editor/hide_console_window` editor setting. Remove `Toggle System Console` menu option. Remove `set_console_visible` and `is_console_visible` functions.
2021-10-30Add GLES2 2D renderer + Linux display managerlawnjelly
First implementation with Linux display manager. - Add single-threaded mode for EditorResourcePreview (needed for OpenGL). Co-authored-by: clayjohn <claynjohn@gmail.com> Co-authored-by: Fabio Alessandrelli <fabio.alessandrelli@gmail.com>
2021-10-23Fix primary clipboard warningConteZero
2021-10-18Added primary clipboard for LinuxConteZero
2021-09-21Allow for mapping keycodes to current layoutFrixuu
2021-07-22Move `alert` function from `DisplayServer` to `OS`.bruvzg
2021-07-12Change VSync mode project setting enum type from string to integerHendrik Brucker
2021-07-06Restructure and reimplement vsync optionsHendrik Brucker
-Add a v-sync mode setting which allows to choose between DISABLED, ON, ADAPTIVE and MAILBOX -Removed the V-Sync via Compositor option