Commit Graph

248 Commits

Author SHA1 Message Date
eca105f075 [Windows] Do not force redraw window background on mouse pass-through region change.
(cherry picked from commit b240b5be84)
2023-10-19 21:21:02 +02:00
053538c125 Fix byte to float color conversion in DisplayServerWindows::screen_get_pixel
(cherry picked from commit 9d45dd812f)
2023-08-31 20:19:31 +02:00
fa45bb63c6 [Windows] Fix setting initial non-exclusive window mode.
(cherry picked from commit db0109b237)
2023-07-10 17:46:08 +02:00
221535c33c [Windows] Flash both the window caption and taskbar button on request_attention.
(cherry picked from commit 49af2582c4)
2023-07-10 17:26:14 +02:00
d586096415 Merge pull request #72720 from pkdawson/fix-mouse-capture
DisplayServerWindows: Fix mouse capture when button up message is missed
2023-06-22 18:29:34 +02:00
356a602186 Merge pull request #74511 from AThousandShips/win_cursor_fix
Fix clearing custom cursor
2023-06-20 00:00:57 +02:00
28db3c7158 [DisplayServer] Add method to check if native window is focused. 2023-06-16 10:27:52 +03:00
a80584664c Fix window resizing problems on Windows
Fixes godotengine#76847, Fixes godotengine#74286
Reorders problematic steps from the DisplayServerWindows::window_set_mode function.
These were causing a resize with the dimensions of the previously used mode instead
of the current one.
2023-06-12 15:26:34 -03:00
26e5a98306 Merge pull request #77770 from jpcerrone/fix_minimize_missing
Fix minimize button missing in non-resizable projects
2023-06-12 11:39:08 +02:00
759309ba18 Merge pull request #77977 from zaevi/fix_windows_popup_ime
Fix IME doesn't work under Popup on Windows.
2023-06-09 11:06:02 +02:00
9e4315bb50 Style: Harmonize header includes in platform ports
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:

Includes from the platform port or module should be included with relative
paths (relative to the root folder of the modular component, e.g.
`platform/linuxbsd/`), in their own section before Godot's "core" includes.

The `api` and `export` subfolders also need to be handled as self-contained
(and thus use relative paths for their "local" includes) as they are all
compiled for each editor platform, without necessarily having the api/export
matching platform folder in the include path.
E.g. the Linux editor build will compile `platform/android/{api,export}/*.cpp`
and those need to use relative includes for it to work.
2023-06-08 15:19:19 +02:00
Zae
1b149b7440 Fix IME doesn't work under Popup on Windows. 2023-06-08 02:40:36 +08:00
c819da7fdb Fix minimize button missing in non-resizable projects.
Fixes https://github.com/godotengine/godot/issues/77603.
On Windows, disabling the 'resizable' flag on the project
settings would also remove the minimize button from the window.
2023-06-02 10:31:50 -03:00
5b9984b5a2 Add audio/general/text_to_speech project setting to enable/disable TTS. 2023-05-18 20:16:03 +03:00
68da61e74c Fix for Clang dev_mode Windows build 2023-05-17 19:35:37 +03:00
265c70a369 Merge pull request #75142 from bruvzg/scr
[DisplayServer] Implement screen_get_image method for LinuxBSD/X11, macOS and Windows.
2023-05-16 10:48:16 +02:00
303bf247de Add support for VRAM-compressed custom mouse cursor images
No memory is actually saved when using this, so lossless modes are
still recommended as they look better and load faster.
2023-04-21 18:01:47 +02:00
520a8d8ed2 Add project manager / editor initial screen settings, implement DisplayServer.get_keyboard_focus_screen method. 2023-04-19 08:54:53 +03:00
c2edf14faf Merge pull request #75881 from bruvzg/win_coinit
[Windows] Cleanup COM library initialization/uninitialization.
2023-04-18 23:40:06 +02:00
41f0a523db Fix custom cursor using atlas texture
Remove image.is_valid() check
There is already a fail condition and image is not used before that
Move up texture_is_valid() check
2023-04-11 19:16:24 +02:00
83dc545ea2 [Windows] Cleanup COM library initialization/uninitialization. 2023-04-10 10:38:25 +03:00
e6067a39b5 [Windows] Remove meta_mem update on keyup/keydown. 2023-03-21 09:16:10 +02:00
ab94024ce1 [DisplayServer] Implement screen_get_image method for LinuxBSD/X11, macOS and Windows. 2023-03-20 14:58:21 +02:00
a419325753 Fix clearing custom cursor 2023-03-10 11:59:49 +01:00
ddc9cc3e49 Tweak command syntax in Vulkan renderer failure message
This quotes the executable name so that copying it always works
(even if the path contains spaces).

The command is also indented from the rest of the text and is
no longer single-quoted, as that can prevent the command from
running if the line is copied in its entirety (with the quotes).
2023-03-08 22:28:23 +01:00
918c910b4d Merge pull request #73878 from RedMser/fix-clipboard-focus-windows
Fix clipboard relying on focused window
2023-03-07 12:04:26 +01:00
5f2137a050 Merge pull request #74087 from bruvzg/get_screen_px
[DisplayServer] Implement screen_get_pixel method for LinuxBSD/X11, macOS and Windows.
2023-03-06 21:58:58 +01:00
ba995c6ea1 [Windows] Update modifier key status during IME input. 2023-03-06 10:31:23 +02:00
e7647b5ee5 [DisplayServer] Implement screen_get_pixel method for LinuxBSD/X11, macOS and Windows. 2023-03-01 09:32:23 +02:00
942f8b9858 Fix clipboard relying on focused window 2023-02-24 16:31:57 +01:00
ba7ab0e1cb [Windows] Take initial flags into account when creating main window. 2023-02-22 10:52:26 +02:00
4574b97752 Fix crash with bogus shape index to DisplayServer.cursor_set_custom_image()
Fixes #66605.
2023-02-17 14:17:37 +01:00
a322f3f578 [InputEventKey] Avoid setting both key and modifier to the same value. 2023-02-14 09:05:58 +02:00
7275819a91 DisplayServerWindows: Fix mouse capture when button up message is missed 2023-02-04 17:36:47 +01:00
d8c3fc1f56 Merge pull request #72624 from pkdawson/fix-last-focus
DisplayServerWindows: Update `last_focused_window` when the focused subwindow is deleted
2023-02-03 06:24:05 +01:00
6165498d0e Fix windowsize for fullscreen windows on windowcreation on Windows
Fortunately the location in the codebase was easy to find because there
was a FIXME comment.
2023-02-02 22:40:03 +01:00
cba1fd7cca DisplayServerWindows: Update last_focused_window when the focused subwindow is deleted 2023-02-02 21:41:36 +01:00
707ccc09ab Merge pull request #72104 from bruvzg/popup-non-popups
Extend special popup window handling to any non-popup child of a popup.
2023-02-01 11:07:39 +01:00
b8ef55a427 Merge pull request #71174 from RedMser/fix-confined-mouse-mode-update
Fix confined mouse mode not updating on resize
2023-01-31 15:56:29 +01:00
28f51ba547 Refactor high quality texture import
* Only two texture import modes for low/high quality now:
  * S3TC/BPTC
  * ETC2/ASTC
* Makes sense given this is the general preferred and most compatible combination in most platforms.
* Removed lossy_quality from VRAM texture compression options. It was unused everywhere.
* Added a new "high_quality" option to texture import. When enabled, it uses BPTC/ASTC (BC7/ASTC4x4) instead of S3TC/ETC2 (DXT1-5/ETC2,ETCA).
* Changed MacOS export settings so required texture formats depend on the architecture selected.

This solves the following problems:

* Makes it simpler to import textures as high quality, without having to worry about the specific format used.
* As the editor can now run on platforms such as web, Mac OS with Apple Silicion and Android, it should no longer be assumed that S3TC/BPTC is available by default for it.
2023-01-30 15:53:23 +01:00
700d85bd19 Extend special popup window handling to any non-popup child of a popup. 2023-01-26 12:38:53 +02:00
e08a6e692d [Windows] Fix committing IME text without IME deactivation. 2023-01-26 09:24:12 +02:00
c1c6ce9001 [Windows] Fix candidate window position with some third party IME engines. 2023-01-25 15:29:08 +02:00
8d51af1c8d [Windows] Fix ToUnicodeEx resetting some dead key states. 2023-01-25 09:49:14 +02:00
daad4aed62 Cleanup and unify keyboard input.
- Unify keycode values (secondary label printed on a key), remove unused hardcoded Latin-1 codes.
- Unify IME behaviour, add inline composition string display on Windows and X11.
- Add key_label (localized label printed on a key) value to the key events, and allow mapping actions to the unshifted Unicode events.
- Add support for physical keyboard (Bluetooth or Sidecar) handling on iOS.
- Add support for media key handling on macOS.

Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-01-23 15:08:12 +02:00
e01452adb0 Fix AltGR getting stuck on Windows right alt-tab
Fixes #28511.
2023-01-20 14:04:55 +01:00
2529ab332c [Windows] Fix sub-window initial transparency and always-on-top state. 2023-01-19 09:21:36 +02:00
68d71f88f5 Improve DisplayServer message for video card drivers failure
And remove leftover duplicated message on Android.
2023-01-17 15:41:54 +01:00
34b34b104c Add WINDOW_FLAG_MOUSE_PASSTHROUGH flag and enabled it for tooltips. Expose window_set_mouse_passthrough to Window. 2023-01-16 11:42:49 +02:00
7fc8716aac [Windows] Fix incorrect full-screen mode applied on start. 2023-01-16 09:17:20 +02:00