Hugo Locurcio
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
bruvzg
a5128e71bb
[Export docs] Move docs to platform folders.
2023-04-20 11:02:12 +03:00
Yuri Sizov
8a74d8438f
Extract editor run toolbar into its own component
...
- Simplify and update its logic.
- Simplify EditorScript.
- Improve EditorNode and other relevant includes.
- Fix scene-based path in the movie writer when
reloading a scene.
2023-04-19 17:12:28 +02:00
Rémi Verschelde
989fa49e71
Merge pull request #75219 from bruvzg/get_focus_screen
...
Add project manager / editor initial screen settings, implement `get_keyboard_focus_screen` method.
2023-04-19 10:13:44 +02:00
bruvzg
520a8d8ed2
Add project manager / editor initial screen settings, implement DisplayServer.get_keyboard_focus_screen method.
2023-04-19 08:54:53 +03:00
bruvzg
0088981c40
[Export] Add readable descriptions and validation warnings to the export options.
2023-04-19 08:35:59 +03:00
Rémi Verschelde
c2edf14faf
Merge pull request #75881 from bruvzg/win_coinit
...
[Windows] Cleanup COM library initialization/uninitialization.
2023-04-18 23:40:06 +02:00
Rémi Verschelde
c4dba9a5ef
Merge pull request #75880 from bruvzg/win_tts_queue_fix
...
[Windows TTS] Fix queuing utterances in rapid succession.
2023-04-18 23:39:42 +02:00
Rémi Verschelde
efa01d36b6
Merge pull request #75383 from bruvzg/dll_deps_detect
...
[Windows] Detect missing DLL dependencies and list them in the open_dynamic_library error message.
2023-04-18 23:39:16 +02:00
Rémi Verschelde
95791889e2
Merge pull request #75933 from akien-mga/windows-tts-hashmap
...
Windows TTS: Use HashMap instead of RBMap for ids
2023-04-11 19:41:03 +02:00
Kvel2D
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
Rémi Verschelde
92b9806dcc
Windows TTS: Use HashMap instead of RBMap for ids
...
And fixup includes in other implementations.
2023-04-11 15:54:21 +02:00
bruvzg
83dc545ea2
[Windows] Cleanup COM library initialization/uninitialization.
2023-04-10 10:38:25 +03:00
bruvzg
a9d326db60
[Windows TTS] Fix queuing utterances in rapid succession.
2023-04-10 10:24:40 +03:00
Rémi Verschelde
7aa224291b
Merge pull request #73200 from 0xafbf/fix-guide-button-win
...
Fix guide button detection with XInput and Xbox Series controllers
2023-04-03 15:58:36 +02:00
bruvzg
68163f5643
[Windows] Detect missing DLL dependencies and list them in the open_dynamic_library error message.
2023-03-27 12:18:15 +03:00
bruvzg
e6067a39b5
[Windows] Remove meta_mem update on keyup/keydown.
2023-03-21 09:16:10 +02:00
bruvzg
ab94024ce1
[DisplayServer] Implement screen_get_image method for LinuxBSD/X11, macOS and Windows.
2023-03-20 14:58:21 +02:00
Ninni Pipping
a419325753
Fix clearing custom cursor
2023-03-10 11:59:49 +01:00
Hugo Locurcio
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
bruvzg
5d35c600d5
[Linux/X11] Add some missing keycodes/scancodes.
2023-03-08 12:13:41 +02:00
Rémi Verschelde
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
Rémi Verschelde
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
Rémi Verschelde
f408e7a387
Merge pull request #74444 from akien-mga/windows-mingw-fix-missing-dwrite-font-weight
...
Windows: Workaround missing DWRITE_FONT_WEIGHT value in old MinGW
2023-03-06 10:52:59 +01:00
bruvzg
ba995c6ea1
[Windows] Update modifier key status during IME input.
2023-03-06 10:31:23 +02:00
Rémi Verschelde
b7ecb9584a
Windows: Workaround missing DWRITE_FONT_WEIGHT value in old MinGW
...
Fixes #74339 .
2023-03-05 18:18:04 +01:00
Rémi Verschelde
aa9de8a930
Merge pull request #74030 from bruvzg/win_to_win_shh
...
Fix Windows to Windows SSH remote deploy. Fix Windows `execute` exit code.
2023-03-02 11:21:20 +01:00
bruvzg
e7647b5ee5
[DisplayServer] Implement screen_get_pixel method for LinuxBSD/X11, macOS and Windows.
2023-03-01 09:32:23 +02:00
Rémi Verschelde
491ded1898
Minor typo and docs URL fixes
2023-02-28 13:38:01 +01:00
bruvzg
94355249c3
Fix Windows to Windows SSH remote deploy. Fix Windows `execute` exit code.
2023-02-27 09:54:49 +02:00
RedMser
942f8b9858
Fix clipboard relying on focused window
2023-02-24 16:31:57 +01:00
Rémi Verschelde
32bd912bb6
Merge pull request #73750 from bruvzg/brace
...
[Input] Use BRACKET_ instead of BRACE_ for physical keys.
2023-02-22 14:50:18 +01:00
Rémi Verschelde
9e75ae878d
Merge pull request #73744 from bruvzg/mainw_init_flags
...
[Windows] Take initial flags into account when creating main window.
2023-02-22 14:49:44 +01:00
bruvzg
fdf56a2fc2
[Input] Use BRACKET_ instead of BRACE_ for physical keys.
2023-02-22 12:39:30 +02:00
bruvzg
ba7ab0e1cb
[Windows] Take initial flags into account when creating main window.
2023-02-22 10:52:26 +02:00
bruvzg
493271a04c
[Windows Export] Pass password only when using PKCS12 file, fix executable name in the error message.
2023-02-22 09:07:00 +02:00
Hugo Locurcio
950c5b57e4
Move code to Windows Vulkan context initialization context
...
This workaround is not needed for rendering drivers other than Vulkan.
2023-02-17 17:48:18 +01:00
Rémi Verschelde
4574b97752
Fix crash with bogus shape index to DisplayServer.cursor_set_custom_image()
...
Fixes #66605 .
2023-02-17 14:17:37 +01:00
Hugo Locurcio
31a9345189
Disable AMD switchable graphics on Windows with Vulkan to fix driver issue
...
This is a required workaround on setups with AMD integrated graphics
+ NVIDIA dedicated GPU to be able to start the engine with the Forward+
or Forward Mobile rendering methods.
While a AMD driver update can resolve this issue, it still gets reported
regularly and is likely to become a source of support headache for people
distributing projects made with Godot (as this also affects exported projects).
2023-02-16 19:39:27 +01:00
Andrés Botero
f249a9ce19
Added guide button to controller db, changed to use secret XInput function.
2023-02-15 01:01:09 -05:00
bruvzg
a322f3f578
[InputEventKey] Avoid setting both key and modifier to the same value.
2023-02-14 09:05:58 +02:00
Patrick Dawson
7275819a91
DisplayServerWindows: Fix mouse capture when button up message is missed
2023-02-04 17:36:47 +01:00
Rémi Verschelde
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
Markus Sauermann
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
Patrick Dawson
cba1fd7cca
DisplayServerWindows: Update `last_focused_window` when the focused subwindow is deleted
2023-02-02 21:41:36 +01:00
Rémi Verschelde
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
Rémi Verschelde
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
Rémi Verschelde
eedc4553b5
Merge pull request #72426 from fire/4-warnings
...
Fixed a few godot engine 4 warnings on clang with Opengl and Windows …
2023-01-31 10:54:18 +01:00
K. S. Ernest (iFire) Lee
f8be889133
Fixed a few godot engine 4 warnings on clang with Opengl and Windows apis.
2023-01-30 17:00:02 -08:00
Juan Linietsky
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
daviirodrig
240374c58f
Fix split allow empty string in SSH export plugin
2023-01-27 05:09:30 -03:00
bruvzg
700d85bd19
Extend special popup window handling to any non-popup child of a popup.
2023-01-26 12:38:53 +02:00
bruvzg
e08a6e692d
[Windows] Fix committing IME text without IME deactivation.
2023-01-26 09:24:12 +02:00
bruvzg
c1c6ce9001
[Windows] Fix candidate window position with some third party IME engines.
2023-01-25 15:29:08 +02:00
bruvzg
8d51af1c8d
[Windows] Fix ToUnicodeEx resetting some dead key states.
2023-01-25 09:49:14 +02:00
bruvzg
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
Rémi Verschelde
84c081945f
Merge pull request #71784 from PrecisionRender/fix-xbox-input
...
Fix Xbox Series controller detected as 2 devices
2023-01-23 10:24:41 +01:00
Rémi Verschelde
cbcb77096b
Merge pull request #71730 from reduz/fix-altgr-stuck
...
Fix AltGR getting stuck on Windows right Alt-Tab
2023-01-21 11:31:29 +01:00
Rémi Verschelde
a58f6a9dd6
Merge pull request #71220 from reduz/prevent-opening-windows-console-files
...
Prevent opening Windows console files
2023-01-21 11:28:31 +01:00
PrecisionRender
e9400867b3
Fix Xbox Series controller duplicate input
2023-01-20 21:34:06 -06:00
Juan Linietsky
e01452adb0
Fix AltGR getting stuck on Windows right alt-tab
...
Fixes #28511 .
2023-01-20 14:04:55 +01:00
bruvzg
2529ab332c
[Windows] Fix sub-window initial transparency and always-on-top state.
2023-01-19 09:21:36 +02:00
Rémi Verschelde
6da836bbb4
Merge pull request #71514 from akien-mga/os-unset_environment
...
OS: Add `unset_environment`, better validate input
2023-01-18 08:35:43 +01:00
Rémi Verschelde
68d71f88f5
Improve DisplayServer message for video card drivers failure
...
And remove leftover duplicated message on Android.
2023-01-17 15:41:54 +01:00
Rémi Verschelde
818a9e99a4
OS: Add `unset_environment`, better validate input
...
Instead of returning an undocumented boolean error code, we do the
validation checks that should ensure a successful result.
Based on:
- https://linux.die.net/man/3/setenv
- https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-setenvironmentvariable
2023-01-16 16:39:44 +01:00
bruvzg
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
bruvzg
7fc8716aac
[Windows] Fix incorrect full-screen mode applied on start.
2023-01-16 09:17:20 +02:00
Yuri Sizov
4c1f11944e
Update all outdated online documentation links
2023-01-14 19:38:00 +03:00
Rémi Verschelde
3dffe0b967
Merge pull request #63312 from bruvzg/one_click
...
[Export] Add one-click deploy over SSH for the desktop exports.
2023-01-13 18:00:18 +01:00
Pedro J. Estébanez
03b96c1c4b
Implement color flash avoidance for Windows
2023-01-12 21:42:51 +01:00
bruvzg
01adf738fa
[Windows] Allow OS::kill method to terminate non-child processes.
2023-01-12 14:41:57 +02:00
Rémi Verschelde
0e4e782ada
Merge pull request #70714 from Calinou/doc-os-stdin
...
Improve documentation for `OS.read_string_from_stdin()`
2023-01-12 09:24:47 +01:00
Hugo Locurcio
86b8176864
Improve documentation for `OS.read_string_from_stdin()`
...
This makes it clearer that calls to this method are blocking.
The unused method parameter was also removed.
2023-01-11 19:57:25 +01:00
Juan Linietsky
c5390f203d
Prevent opening Windows console files
...
Fixes #20110 .
2023-01-11 15:05:29 +01:00
RedMser
951349c481
Fix confined mouse mode not updating on resize
2023-01-10 20:00:52 +01:00
Juan Linietsky
2b815df3c1
Use BitField<> in core type masks
...
* 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-08 22:17:40 +01:00
bruvzg
9dc4f4096c
[Windows] Fix primary screen detection.
2023-01-07 15:41:06 +02:00
bruvzg
2718a7b7d3
Add support for the custom initial screen for the main window, fix primary screen detection.
2023-01-07 11:14:35 +02:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
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".
2023-01-05 13:25:55 +01:00
Rémi Verschelde
8791e333da
Merge pull request #70624 from bruvzg/cur_sc
...
Improve `window_set_current_screen` and fix secondary window initial mode and positions.
2023-01-03 15:56:05 +01:00
Rémi Verschelde
a140d469d7
Merge pull request #70612 from floppyhammer/fix-dark-title-bar
...
Fix dark title bar on Windows 11
2023-01-03 12:18:18 +01:00
bruvzg
f7955633de
Improve `window_set_current_screen` and fix secondary window initial mode and positions.
2022-12-29 09:43:39 +02:00
bruvzg
cebefc9f5d
[Export] Add one-click deploy over SSH for the desktop exports.
...
Add one-click deploy over SSH for the desktop exports.
Add ZIP export option for Linux and Windows.
Change export plugin icons to SVG format.
2022-12-29 09:42:00 +02:00
floppyhammer
c186b511c3
Fix dark title bar
2022-12-27 14:54:38 +08:00
Rémi Verschelde
865c637279
SCons: Fix `separate_debug_symbols` option for Windows/MinGW
2022-12-21 13:52:49 +01:00
bruvzg
3d8a942a56
Fix reading Unicode from stdio.
2022-12-21 09:07:59 +02:00
Selene29
6e6c28f6ec
add missing comma in file filter
2022-12-17 13:45:22 +01:00
oOjor-elOo
2507ee5ca4
Windows: Validate that the font family name exists before trying to get the font family
...
I didn't have the first emoji font installed, which led an an exception when calling font_collection->GetFontFamily() no the new rows.
2022-12-12 15:44:54 +01:00
Rémi Verschelde
f1edd03d4c
Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextension
...
Rename all gdnative occurences to gdextension
2022-12-12 11:43:59 +01:00
Hugo Locurcio
6799d000b1
Only support XDG directory path configuration on Linux
...
XDG support breaks when running Windows builds via WINE.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-12-12 11:43:16 +01:00
Gilles Roudière
be1c9d677d
Rename all gdnative occurences to gdextension
...
Non-exhaustive list of case-sensitive renames:
GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension ->Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
2022-12-12 11:04:57 +01:00
Rémi Verschelde
0a3f66471e
Merge pull request #69712 from bruvzg/real_size
...
Rename `window_get_real_size`, add position counterpart.
2022-12-07 14:29:46 +01:00
bruvzg
edf13eb5a6
Rename `window_get_real_size` to `window_get_size_with_decorations`, add `window_get_position_with_decorations`.
2022-12-07 11:07:30 +02:00
bruvzg
e1cff4be9b
[Windows] Window management fixes.
...
Fix popup menus having incorrect scale when main window is in full-screen mode and multiple monitors with different DPI are used.
Prevent mouse move code from accessing deleted window data (and creating zombie records in the windows map).
2022-12-06 23:56:21 +02:00
Rémi Verschelde
5c6e2b2cac
Windows: Make MSVC debug CRT opt-in (`debug_crt=yes`)
...
Follow-up to #69294 which enabled it automatically for `dev_build=yes`,
but this seems to cause some issues.
Those issues should likely be debugged but until then this can stay opt-in.
2022-12-05 15:56:12 +01:00
Rémi Verschelde
e82d66f23b
Merge pull request #69294 from akien-mga/windows-msvc-link-debug-runtime
...
Windows: Link MSVC dynamic debug CRT for debug builds
2022-12-05 10:14:33 +01:00
bruvzg
ecec415988
Use system fonts as fallback and improve system font handling.
...
Add support for font weight and stretch selection when using system fonts.
Add function to get system fallback font from a font name, style, text, and language code.
Implement system font support for Android.
Use system fonts as a last resort fallback.
2022-12-04 18:44:20 +02:00
Markus Sauermann
79401f8dc2
Fix incorrect mouse event position while hovering different window
2022-11-30 13:39:31 +01:00
Rémi Verschelde
82e45820d9
Merge pull request #69332 from bruvzg/exact_symbols
...
[MSVC] Use symbols from .pdb only, to avoid incorrect names in the backtrace when symbols are missing.
2022-11-29 10:34:52 +01:00
Rémi Verschelde
b7667e6a47
Merge pull request #69110 from bruvzg/con_icon2
...
[Windows] Optimize editor icon, use different icon for console executable.
2022-11-29 10:26:47 +01:00