Pāvels Nadtočajevs
b3f7c8f5d3
[Export] Respect icon/splash screen import settings.
2025-01-31 07:45:16 +02:00
NOLogicalSense
b38103e95d
Windows: Normalize slashes in return of `OS.get_temp_dir()`
2025-01-30 22:02:20 +01:00
Thaddeus Crews
f4c2ffffb7
Merge pull request #102134 from bruvzg/win_main_cleanup
...
[Windows] Remove unused code from `godot_windows.cpp`.
2025-01-29 17:45:15 -06:00
Thaddeus Crews
3c80c14092
Merge pull request #101924 from adamscott/game-editor-non-cached-mouse-mode
...
Delegate handling `mouse_mode` to the `DisplayServer`
2025-01-28 16:08:56 -06:00
Pāvels Nadtočajevs
d9bba03392
[Windows] Remove unused code from `godot_windows.cpp`.
2025-01-28 20:12:47 +02:00
Adam Scott
47f553ae0b
Delegate to the DisplayServer the task of handling mouse_mode
...
- Add `MOUSE_MODE_MAX` and various index checks
2025-01-28 11:22:27 -05:00
bruvzg
14b9f64a18
Update Windows icon cache after export.
2025-01-27 17:09:25 +02:00
Rémi Verschelde
90208f7dd4
SCons: Fix handling of platform-specific tools, notably `mingw`
...
Add optional `detect.py` `get_tools` method to let platforms register SCons
tools they need.
This helps move this logic out of SConstruct, keeping platforms more self
contained, and helping thirdparty platforms define their own custom tools.
This logic was also unreliable (the `use_mingw` one would only work if
passed manually on the command line, not in e.g. `get_flags`).
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2025-01-25 13:59:30 +01:00
Hilderin
9eed43d429
Fix NOTIFICATION_WM_CLOSE_REQUEST in Embedded Floating Window
2025-01-21 21:03:15 -05:00
Thaddeus Crews
8cf94c8de5
Merge pull request #101763 from SupSuper/patch-1
...
[Windows] Fix left/right Shift key regression
2025-01-21 11:55:21 -06:00
Daniel
17423e9899
[Windows] Fix left/right Shift key regression
...
Fixes #101384 by checking the latest state of the Shift keys before sending the KEYUP event.
2025-01-20 23:02:58 +00:00
bruvzg
d65c07da4c
[Windows] Override key codes with Unicode values for OEM keys only.
2025-01-18 14:56:18 +02:00
bruvzg
7c50a7822e
[Windows] Make native dialogs non-cancelable and stay on top of parent.
2025-01-17 17:44:34 +02:00
Pāvels Nadtočajevs
2e99d84e87
[DisplayServer] Add missing `FEATURE_WINDOW_DRAG` flag to Windows, X11 and Wayland display servers.
2025-01-14 15:26:32 +02:00
Pāvels Nadtočajevs
b252867145
[macOS/Windows] Add `Emoji & Symbols` context menu item to LineEdit/TextEdit to show system character picker.
2025-01-10 09:25:34 +02:00
Rémi Verschelde
a0de7d0e01
Merge pull request #101257 from SteffenBlake/remote-debug-windows-battery-fix
...
Windows: Update export script's task to work even on battery power
2025-01-09 13:50:59 +01:00
Rémi Verschelde
26db0bb15f
SCons: Make `lto=auto` prefer ThinLTO over full LTO for LLVM targets
...
This speeds up build time considerably for these platforms compared to
using `lto=full`, which is sadly single-threaded with LLVM, unlike GCC.
Changes to default behavior of `lto=auto` (i.e. `production=yes`):
- Linux: Prefer ThinLTO for LLVM
- Web: Prefer ThinLTO
- Windows: Prefer ThinLTO for llvm-mingw
The following LLVM targets don't use LTO by default currently, which
needs to be assessed further (gains from LLVM LTO on performance need
to be weighed against the potential size increase from heavy inlining):
- Android
- iOS
- macOS
- Windows clang-cl
2025-01-09 13:03:58 +01:00
Rémi Verschelde
65cf7c1d5e
Merge pull request #101221 from bruvzg/win_dec_exp
...
[Window] Expose `start_drag` and `start_resize` methods (for both native and embedded windows).
2025-01-09 11:17:24 +01:00
Rémi Verschelde
2a2adfa36c
Merge pull request #101267 from Summersay415/angle-libs
...
Fix ANGLE and D3D12 libraries inclusion in .zip export
2025-01-09 00:42:25 +01:00
Rémi Verschelde
8e0f498400
Merge pull request #101266 from WhalesState/color-picking-fix
...
Fix color picking on Linux/X11.
2025-01-09 00:42:22 +01:00
Rémi Verschelde
76c8e76560
Merge pull request #101284 from akx/tyops
...
A handful of typo fixes
2025-01-08 15:53:33 +01:00
Aarni Koskela
f134769506
Fix various typos
...
* Add TODO notes for typos that should be fixed for 5.0
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-08 14:47:42 +02:00
WhalesState
989161e117
Fix color picking on linux.
2025-01-08 10:32:25 +02:00
Summersay415
a8377d0f22
Fix ANGLE and D3D12 libraries inclusion in .zip export
2025-01-08 12:09:35 +07:00
Steffen Blake
7cedf99ddc
Update Windows Export Script to work on Battery Power
2025-01-07 18:37:43 -07:00
Thaddeus Crews
a29294fddc
SCons: Refactor color output implementation
2025-01-07 18:44:53 -06:00
Rémi Verschelde
cecc83d26a
Merge pull request #101225 from Summersay415/arch-docs
...
Update official export templates architecture list in docs
2025-01-08 00:21:07 +01:00
Rémi Verschelde
0fee2724f0
Merge pull request #100751 from YYF233333/force_regex_with_editor
...
Force build editor with regex module, remove checking code
2025-01-07 23:17:35 +01:00
Pāvels Nadtočajevs
8d911b2554
[Window] Expose `start_drag` and `start_resize` methods (for both native and embedded windows).
2025-01-07 23:35:14 +02:00
Summersay415
f6d22da94b
Update official export templates architecture list in docs
2025-01-07 20:28:25 +07:00
Yufeng Ying
34d8255947
Force build editor with regex module, remove checking code.
...
Fix include.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-07 19:43:23 +08:00
Pāvels Nadtočajevs
7f0b4e58b0
Implement `DisplayServer.window_start_resize`.
2025-01-07 07:58:02 +02:00
Rémi Verschelde
bd56e811f3
Merge pull request #101015 from bruvzg/si_fix_empty_tt
...
[Windows] Fix StatusIndicator crash with empty tooltip (and few other similar unsafe `ptr()` uses).
2025-01-07 00:45:11 +01:00
Rémi Verschelde
cc32e46360
Merge pull request #101135 from Hilderin/fix-embedding-not-working-intermittently
...
Fix embedding failing intermittently
2025-01-06 22:49:05 +01:00
Rémi Verschelde
881d4bd9ee
Merge pull request #100960 from buresu/fix-windows-keymapping
...
Fix incorrect Unicode key mapping on Windows
2025-01-06 22:48:09 +01:00
Rémi Verschelde
11f95e7feb
Merge pull request #99350 from bruvzg/fs_mime
...
Support MIME types in file dialog filters on macOS and Linux.
2025-01-06 22:46:59 +01:00
Hilderin
2f061df7b0
Fix embedding not working intermittently
2025-01-06 08:04:57 -05:00
Pāvels Nadtočajevs
e1f129cb52
Support MIME types in file dialog filters on macOS and Linux.
2025-01-04 22:05:35 +02:00
Ricardo Subtil
b77aa473a1
Implement a "Recovery Mode" for recovering crashing/hanging projects during initialization
2025-01-03 10:50:15 +00:00
Marcelo Vilas Boas Correa Filho
3bb2309f6b
Feature adding Windows native menu close callback
2025-01-02 10:52:09 -03:00
bruvzg
663b90da61
[Windows] Fix StatusIndicator crash with empty tooltip (and few other similar unsafe `ptr()` uses).
2025-01-02 10:07:02 +02:00
Naoto Kondo
8c7319459b
Fix incorrect Unicode key mapping on Windows
2025-01-02 04:31:49 +09:00
Rémi Verschelde
a11364d1e6
Merge pull request #99010 from Hilderin/embedding-game-process
...
Embed game process in editor
2024-12-20 23:56:43 +01:00
Thaddeus Crews
95b00295fb
Merge pull request #96447 from Repiteo/scons/clang-cl-compile_commands
...
SCons: Set appropriate prefix when using clang-cl
2024-12-19 19:59:45 -06:00
Thaddeus Crews
9300c2bdc9
Merge pull request #100400 from CrabNickolson/windows-thread-names
...
Add support for thread naming on windows platform
2024-12-19 19:59:41 -06:00
Hilderin
9d2a4c03be
Embedding game process in editor
2024-12-18 17:52:42 -05:00
Pāvels Nadtočajevs
a0300532b5
[Windows, LLVM] Fix `colorize` flag.
2024-12-18 21:00:32 +02:00
Rémi Verschelde
4e46e8beb7
Merge pull request #100464 from bruvzg/start_drag_port
...
Implement `window_start_drag` on Windows and Linux.
2024-12-18 00:39:56 +01:00
Fredia Huya-Kouadio
2d3f6963b2
Update the visibility for the custom templates for all platforms
...
Hide the custom template options behind the `Advanced Options` toggle
2024-12-17 13:08:47 -08:00
Pāvels Nadtočajevs
293be04ec8
Implement `window_start_drag` on Windows and Linux.
2024-12-17 16:49:27 +02:00
Thaddeus Crews
7254761a46
Merge pull request #98861 from MJacred/get_joypad_infos_on_windows
...
Get joypad's vendor ID, product ID and name on Windows for XInput devices.
2024-12-16 12:09:44 -06:00
MJacred
01a2726c59
Get joypad's vendor ID, product ID, and name on Windows
2024-12-15 23:59:11 +01:00
Hugo Locurcio
928982891e
Add `OS.get_version_alias()` to return a human-readable Windows/macOS version number
...
Windows 11's major version number is actually 10.x.x, which can be confusing
if you don't know about this quirk. `OS.get_version_alias()` avoids this
by displaying the "branding" version number and the build number as a suffix,
so that individual updates can still be distinguished from each other.
On macOS, `OS.get_version_alias()` returns the version number prepended
with the version name (e.g. Sequoia for macOS 15).
On other operating systems, this returns the same value as `OS.get_version()`.
2024-12-14 18:47:50 +01:00
Ramón Grill
d848835f8c
Add support for thread naming on windows platform
2024-12-14 14:42:39 +01:00
Rémi Verschelde
f86b3696f6
SCons: Properly set SSE2 as baseline on x86_32
...
Setting it only for release templates on Windows and macOS was inconsistent,
and Jolt requires it as a minimum.
Drop the `-mxsave` flag from the raycast module, this doesn't seem to be
used explicitly by Embree, and unnecessarily makes our config and baseline
muddy.
2024-12-12 22:44:44 +01:00
Thaddeus Crews
4a1a7addd1
Merge pull request #100179 from zaevi/fix_transient_topmost
...
[Windows & macOS] Fix popup window shows behind `always_on_top` parent.
2024-12-11 17:35:53 -06:00
Pāvels Nadtočajevs
a8c8eca74a
[Windows] Fix loading debug symbol files over 2GB.
2024-12-11 17:42:47 +02:00
Thaddeus Crews
69c67ede17
Merge pull request #88950 from bruvzg/excap
...
[macOS, Windows] Add support for excluding windows from a screenshot.
2024-12-10 14:16:10 -06:00
Thaddeus Crews
3cb8419703
Merge pull request #100207 from bruvzg/mingw_dbg
...
[Windows] Fix MinGW debug symbols.
2024-12-10 14:16:06 -06:00
Thaddeus Crews
6cbf7c77c2
Merge pull request #100150 from ArchercatNEO/homeless-export
...
Use temp dirs instead of cache dirs for export
2024-12-10 14:15:54 -06:00
bruvzg
9fece033ab
[macOS, Windows] Add support for excluding windows from a screenshot.
2024-12-10 11:00:13 +02:00
Thaddeus Crews
a607bca2fd
Merge pull request #100024 from Ivorforce/optimize-string-single-char
...
Optimize string single char contains calls.
2024-12-09 14:33:24 -06:00
Zae
2211b1bf91
Fix popup shows behind always_on_top parent.
2024-12-10 01:35:25 +08:00
bruvzg
404383e161
[Windows] Fix MinGW debug symbols.
2024-12-09 18:54:07 +02:00
ArchercatNEO
00a791f04e
Use temp dirs instead of cache dirs for export
...
Fixes #95897
During CI scenarios $HOME may be set to an invalid value (such as
`/var/empty`).
Using temp dirs fits better with godot's usage of these paths and is
independent from the user's $HOME.
2024-12-08 12:07:17 +00:00
Lukas Tenbrink
b5c31ebb41
Add contains_char() for single-character 'contains' calls.
2024-12-06 20:23:35 +01:00
Ross Rothenstine
35faf99755
windows: Fix underflow before delay_usec
2024-12-04 23:54:53 -08:00
Hilderin
a80eb8c503
Fix Inspector tooltips are blinking
2024-12-03 17:25:36 -05:00
Thaddeus Crews
1719f8ed3d
Merge pull request #99834 from kiroxas/passLengthToParseUTF8
...
Ensure `parse_utf8` has length of string passed in when available
2024-12-03 14:41:06 -06:00
Thaddeus Crews
156bc92282
Merge pull request #98397 from adamscott/add-tmp-support
...
Add temp utilities (alias `OS::get_temp_dir()`, `FileAccess::create_temp()`, and `DirAccess::create_temp()`)
2024-12-03 14:40:59 -06:00
Pāvels Nadtočajevs
84650f2018
Implement `DisplayServer.beep`.
2024-12-03 12:43:26 +02:00
Adam Scott
1b3e483899
Add file and dir temporary utilities
...
Co-authored by @Alex2782 for the Android bindings.
Many thanks to the reviewers also.
Co-authored-by: Alex <alex.hart.278@gmail.com>
2024-12-02 12:08:14 -05:00
Rémi Verschelde
aab12fd273
Merge pull request #99652 from bruvzg/fd_cd_win
...
[Windows] Fix root and current folder in native file dialog.
2024-12-02 17:20:27 +01:00
Rémi Verschelde
60e1490df1
Merge pull request #99644 from bruvzg/fd_all_name
...
Change file dialog all files filter name from `All Files (*)` to `All Files (*.*)`.
2024-12-02 17:20:23 +01:00
Rémi Verschelde
47f71f66c1
Merge pull request #98631 from bruvzg/fix_fs_restore
...
[Windows] Fix restoring fullscreen window.
2024-12-02 17:20:02 +01:00
Rémi Verschelde
57e504ca42
Merge pull request #98582 from bruvzg/win_btn_count
...
Remove button number limit from Windows `dialog_show()` implementation.
2024-12-02 17:19:52 +01:00
Kiro
83d4bde0a2
When calling code has length of string, pass it to parse_utf8
2024-12-01 08:31:22 +01:00
Hei
b045523d58
Add the missing getter for sharp window corners
2024-11-30 19:24:25 +02:00
mrsaturnsan
b57ceefec1
[Windows] Improve frame pacing by busy waiting as needed
2024-11-29 14:04:18 +01:00
Thaddeus Crews
127738c08b
Merge pull request #99387 from 0x0ACB/direct_composition
...
Use direct composition for d3d12 backend
2024-11-26 13:04:53 -06:00
Thaddeus Crews
0045b1a513
Merge pull request #98862 from HuntJSparra/early-projsettings-registration
...
Register Engine, OS, ProjectSettings, and Time singletons in time for for `INITIZATION_LEVEL_CORE`
2024-11-26 13:04:51 -06:00
0x0ACB
a8cd0e9677
Use direct composition for d3d12 backend
2024-11-26 10:28:40 +01:00
Thaddeus Crews
0d88737a9f
Merge pull request #99542 from bruvzg/stdin_str
...
Convert line breaks to `\n` and strip line break from the end of string returned by `OS::read_string_from_stdin`/`OS::get_stdin_string`.
2024-11-25 13:22:30 -06:00
Thaddeus Crews
fc6c8bb982
Merge pull request #99688 from akien-mga/revert-99178
...
Revert "Make `delay_usec` more precise on Windows to fix framepacing"
2024-11-25 13:22:24 -06:00
Rémi Verschelde
8e1a6ea431
Revert "Make delay_usec more precise"
...
This reverts commit df3367f334 .
Fixes #99593 .
2024-11-25 19:43:21 +01:00
bruvzg
e0b4f3d314
[Windows] Fix root and current folder in native file dialog.
...
Co-authored-by: RedMser <redmser.jj2@gmail.com>
2024-11-25 15:00:25 +02:00
Pāvels Nadtočajevs
1d43fa9a64
Change file dialog all files filter name from `All Files (*)` to `All Files(*.*)`.
2024-11-24 20:09:05 +02:00
Pāvels Nadtočajevs
e9b57fce82
Convert line breaks to `\n` and strip line break from the end of string returned by `OS::read_string_from_stdin`/`OS::get_stdin_string`.
2024-11-23 15:11:50 +02:00
bruvzg
24d51f7635
[Windows] Fix TTS events arriving out of order.
2024-11-22 11:10:37 +02:00
Hunt J. Sparra
48fbe4172b
Register Engine, OS, ProjectSettings, and Time early.
2024-11-21 18:09:03 -05:00
Thaddeus Crews
449d90b64e
Merge pull request #99178 from mrsaturnsan/windows_sleep_precision
...
Make `delay_usec` more precise on Windows to fix framepacing
2024-11-18 09:23:50 -06:00
Thaddeus Crews
1dcb686325
Merge pull request #99026 from Faless/net/split_ip
...
[Net] Split Unix/Windows IP implementation
2024-11-18 09:23:43 -06:00
bruvzg
8bb3e5360e
Disable Nahimic code injection.
2024-11-18 13:00:55 +02:00
mrsaturnsan
df3367f334
Make delay_usec more precise
...
Comment fix
2024-11-16 09:15:46 -06:00
Thaddeus Crews
d9b458d4b0
Merge pull request #99280 from bruvzg/win32_build_fix
...
Fix 32-bit Windows build.
2024-11-15 10:42:41 -06:00
Pāvels Nadtočajevs
287b7543a0
Fix 32-bit Windows build.
2024-11-15 15:49:08 +02:00
Pāvels Nadtočajevs
f5fad7592f
Use processed filter list for native dialogs.
2024-11-15 12:08:33 +02:00
Thaddeus Crews
ddb2073c5c
Merge pull request #95972 from Hilderin/fix-mouse-move-over-unfocused-window
...
Fix mouse move over an unfocused window
2024-11-13 08:34:30 -06:00
Yevhen Babiichuk (DustDFG)
216488ad9b
Delete old unused code for VS project generation
...
Also ensured that sorting of files for hashing actually happens
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-11-12 21:26:12 +02:00
Thaddeus Crews
179321a0a3
Merge pull request #91201 from bruvzg/con_type
...
[OS] Add functions to determine standard I/O device type.
2024-11-12 12:13:12 -06:00
Thaddeus Crews
190670d16b
Merge pull request #99107 from RandomShaper/win_less_inheritance
...
Windows: Avoid child processes inheriting all file handles
2024-11-12 12:13:06 -06:00
Fabio Alessandrelli
168a2a1466
[Net] Split Unix/Windows IP implementation
2024-11-12 17:33:47 +01:00
Thaddeus Crews
316293ecc2
Merge pull request #99042 from Repiteo/windows/natvis-improvements
...
Windows: Expand `godot.natvis` type coverage
2024-11-12 09:28:05 -06:00
Thaddeus Crews
cb286da1dd
Merge pull request #99112 from bruvzg/get_model_name
...
Implement `get_model_name` on macOS and Windows.
2024-11-12 09:27:52 -06:00
Thaddeus Crews
1cbe9715ea
Merge pull request #98969 from Faless/net/split_sockets
...
[Net] Split Unix/Windows NetSocket implementation
2024-11-12 09:27:40 -06:00
Pedro J. Estébanez
7fcf3c491d
Windows: Avoid child processes inheriting all file handles
2024-11-12 12:25:28 +01:00
Pāvels Nadtočajevs
a6dfd1cf6e
Implement `get_model_name` on macOS and Windows.
2024-11-12 10:34:24 +02:00
Thaddeus Crews
9bf628891a
Windows: Expand `godot.natvis` type coverage
2024-11-11 13:47:14 -06:00
Thaddeus Crews
1789ad37bd
Merge pull request #98961 from mihe/natvis-improvements
...
Add `Ref` and `HashSet` to `godot.natvis`
2024-11-10 12:12:21 -06:00
Fabio Alessandrelli
0c620b29cd
[Net] Split Unix/Windows NetSocket implementation
2024-11-10 16:13:50 +01:00
Rémi Verschelde
6d326547da
Windows: Fix duplicate .exe extension with mingw on Linux/macOS
...
This old hack is no longer needed and now wrong after #98105 .
Fixes #98967 .
2024-11-08 16:46:35 +01:00
Mikael Hermansson
9b7c14718b
Add `Ref` and `HashSet` to `godot.natvis`
2024-11-08 14:37:43 +01:00
Thaddeus Crews
fa65b70494
Merge pull request #98105 from Repiteo/scons/mingw-shenanigans
...
SCons: Extend `MinGW` support & checks
2024-11-07 12:36:32 -06:00
bruvzg
76164c2aa9
[OS] Add functions to determine standard I/O device type.
2024-11-06 13:33:38 +02:00
bruvzg
fdde7713a8
Fix IME deactivation events not send on focus loss. Do not unset AltGr modifiers in non-IME input.
2024-11-06 09:47:26 +02:00
Thaddeus Crews
6071c7cd3b
Merge pull request #97250 from Garetonchick/windows-drag-and-drop-fix
...
Windows: Fix dragging and dropping files from compressed files into editor
2024-11-05 18:36:07 -06:00
Thaddeus Crews
bb5f390fb9
Style: Apply `clang-tidy` fixes (superficial)
...
• `modernize-use-bool-literals`, `modernize-use-nullptr`, and `readability-braces-around-statements`
2024-11-04 12:11:14 -06:00
Anish Mishra
0dfd18c84b
[DisplayServer] Add feature flag for native file dialog access to `user/res` and `options`
2024-10-30 14:13:43 +05:30
Thaddeus Crews
05a4620e88
Merge pull request #98615 from Summersay415/three-opengls-please
...
Fix fallbacks to OpenGL
2024-10-29 19:25:48 -05:00
Thaddeus Crews
b7a0971ad2
Merge pull request #97934 from adamscott/give-AThousandShips-a-break
...
[Codestyle] Set clang-format `RemoveSemicolon` rule to `true`
2024-10-29 19:25:36 -05:00
bruvzg
bf9f78c353
[Windows] Fix restoreing fullscreen window.
2024-10-29 09:32:49 +02:00
Summersay415
6d14cd6ff9
Fix fallbacks to OpenGL
2024-10-28 22:57:19 +07:00
bruvzg
335b42d437
Remove button number limit from Windows dialog_show() implementation.
2024-10-27 16:54:03 +02:00
Thaddeus Crews
07e759b74a
Merge pull request #97771 from dsnopek/openxr-linux-egl
...
OpenXR: Add support for Wayland on Linux
2024-10-25 13:04:08 -05:00
Thaddeus Crews
17f06f6dae
Merge pull request #97555 from dustdfg/platform_methods/extract_validate_arch
...
Build System: Extract `validate_arch` helper functions
2024-10-25 13:03:48 -05:00
Adam Scott
0d350e7108
Set clang-format `RemoveSemicolon` rule to `true`
...
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04:00
Thaddeus Crews
14d201ab54
Merge pull request #97556 from dustdfg/platforms/windows_detect_extract_common_checks
...
Extract common check functions in windows_detect.py file
2024-10-24 13:22:40 -05:00
Garetonchick
2bd759964e
fix drag-and-drop in windows
2024-10-24 19:43:30 +03:00
Thaddeus Crews
9968828913
SCons: Set appropriate prefix when using clang-cl
2024-10-24 10:22:32 -05:00
dan
403e53e1d3
Fix window exiting with no message to user if _create_window fails
2024-10-21 17:31:30 -07:00
Thaddeus Crews
7dbea98c49
Merge pull request #97005 from Repiteo/core/window-corner-style
...
Core: Add `DisplayServer` flag for sharp corners
2024-10-21 16:39:25 -05:00
Thaddeus Crews
f8c4a683d7
Core: Add `DisplayServer` flag for sharp corners
2024-10-18 11:20:21 -05:00
Yevhen Babiichuk (DustDFG)
af6d260c17
Don't include `core/io/image.h` in `core/os/os.h`
...
`core/os/os.h` doesn't use `core/io/image.h`. It just brings
transitive dependencies. Lots of dependencies because `core/os/os.h`
is transitively included in almost every file of godot
Also added `core/io/image.h` into files^1 where `Ref<Image>` and `core/os/os.h`
were used to prevent obscure errors involving `Ref<Image>`
^1 except those which include `core/io/image_loader.h` or `core/io/image.h` by
corresponding .h file with the same name
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-10-18 19:04:19 +03:00
Thaddeus Crews
d4dddd00cb
SCons: Extend `MinGW` support & checks
2024-10-11 14:24:00 -05:00
Thaddeus Crews
a44f691fc7
CI: Add MinGW/GCC build to Windows GHA
2024-10-10 10:10:55 -05:00
Yevhen Babiichuk (DustDFG)
7aacdaa071
Build System: Extract `validate_arch` helper function
...
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-10-06 07:50:49 +03:00
David Snopek
256699ee31
OpenXR: Add support for Wayland on Linux
2024-10-04 11:44:05 -05:00
Rémi Verschelde
36837bfb5d
Merge pull request #91487 from shatyuka/window-style
...
Apply `WS_MINIMIZE` style on window creation
2024-10-04 12:58:34 +02:00
bruvzg
d2f3725120
Fix window_set_current_screen for maximized windows.
2024-10-03 10:38:32 +03:00
Gergely Kis
146ba4106f
Move Vulkan includes to a central godot_vulkan.h header
...
Also fixes Vulkan build problem with recent Clang.
2024-09-29 17:53:18 +02:00
Yevhen Babiichuk (DustDFG)
9c50312f0d
Extract common check functions in windows_detect.py file
...
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
2024-09-27 21:15:33 +03:00
Rémi Verschelde
a0d1ba4a3d
Merge pull request #97458 from Faless/fix/imagine_its_2024_and_your_os_cant_handle_few_kbs_of_text
...
[SCons] Remove MAXLINELENGTH override for MSVC
2024-09-26 12:50:14 +02:00
Rémi Verschelde
991e6c92ab
Merge pull request #96923 from Repiteo/style/warning-admonition
...
Style: Add `WARNING:` as new comment admonition
2024-09-26 12:45:38 +02:00
Fabio Alessandrelli
395a4fc5f2
[SCons] Remove MAXLINELENGTH override for MSVC
...
It's not clear what is the actual max value that windows support, but
despite their claim of it being 8191 we have been seeing failure with
just 8150.
2024-09-26 12:06:16 +02:00
Thaddeus Crews
32c83a228d
Style: Add `WARNING:` as new comment admonition
2024-09-25 09:44:42 -05:00
Thaddeus Crews
9f9ee0c813
SCons: Add unobtrusive type hints in SCons files
2024-09-25 09:34:35 -05:00
Rémi Verschelde
648b21b9ba
Merge pull request #96813 from Repiteo/scons/fix-clang-cl-flags
...
SCons: Fix `clang-cl` link/ar flags
2024-09-23 12:27:59 +02:00
Rémi Verschelde
c2564f42aa
Merge pull request #97142 from SheepYhangCN/master
...
Fallback to OpenGL 3 if other rendering drivers are not supported
2024-09-20 16:06:35 +02:00
Thaddeus Crews
b37fc1014a
Style: Apply new `clang-format` changes
2024-09-20 08:09:48 -05:00
SheepYhangCN
3b839347df
Added fallback_to_opengl3
2024-09-20 06:10:05 +08:00
Alvin Wong
454251660c
Fix using Binutils AR with TEMPFILE on Windows
...
Set `TEMPFILEARGESCFUNC`[1] to replace backslashes with forward slashes
in paths.
[1]: https://scons.org/doc/production/HTML/scons-user/apa.html#cv-TEMPFILEARGESCFUNC
2024-09-19 22:19:15 +08:00
Rémi Verschelde
804d9775b5
Merge pull request #96407 from alvinhochun/mingw-ar-long-command-tempfile
...
Remove `ARFLAGS` hack for Windows, replace with `TEMPFILE`
2024-09-18 17:40:53 +02:00
Rémi Verschelde
2c8ab6e7eb
Merge pull request #94839 from alvinhochun/win-set-console-mode
...
Combine existing modes when calling SetConsoleMode
2024-09-18 11:15:22 +02:00
kobewi
4023ace08d
Add Advanced Settings switch to Editor Settings
2024-09-17 12:20:55 +02:00
A Thousand Ships
dd6443193c
[Editor] Expose more editor settings to documentation
...
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2024-09-12 15:34:49 +02:00
Thaddeus Crews
df0a88b128
SCons: Fix `clang-cl` link/ar flags
2024-09-10 13:48:53 -05:00
bruvzg
2c991a727b
[Windows] Only use long executable path when necessary, fix broken apksigner detection.
2024-09-10 10:34:44 +03:00
bruvzg
b1f9271e49
[MinGW] Fix GCC ar detection.
2024-09-09 11:01:29 +03:00
bruvzg
10f3c1f587
Add support for non-blocking IO mode to `OS.execute_with_pipe`.
2024-09-06 14:16:39 +03:00
Rémi Verschelde
82799d7687
Merge pull request #96526 from bruvzg/win_env
...
[Windows] Use the same API for all `OS_Windows::*_environment` functions.
2024-09-04 18:55:46 +02:00
Rémi Verschelde
3cc99d3e31
Merge pull request #95983 from bruvzg/win_fd_opt_fix
...
[Windows] Emit native file dialog callback from event loop, fix selected options not saved.
2024-09-04 17:11:57 +02:00
bruvzg
319bfa9965
[Windows] Use the same API for all `OS_Windows::*_environment` functions.
2024-09-03 16:02:35 +03:00
Rémi Verschelde
262c8da104
Merge pull request #95887 from bruvzg/sysinfo_drv
...
Update rendering driver name on fallbacks. Fix rendering driver/method in the editor system info.
2024-09-03 11:43:12 +02:00
Rémi Verschelde
109fafc7a4
Merge pull request #96383 from dsnopek/gdextension-pdb-missing-error
...
GDExtension: Show warning on missing PDB file, rather than error
2024-09-02 12:13:34 +02:00
bruvzg
c273786758
Update rendering driver name on fallbacks. Fix rendering driver/method in the editor system info.
2024-09-01 18:22:40 +03:00
Alvin Wong
28b95ff550
Remove ARFLAGS hack for Windows, replace with TEMPFILE
...
TEMPFILE is the built-in way of SCons to use a response file for command
lines that are too long.
2024-09-01 04:10:30 +08:00
Alvin Wong
35a8ff9284
mingw: Only use `ar --thin` on supported versions
...
The flag is supported since Binutils 2.38 [1] or LLVM 14 [2].
[1]: https://sourceware.org/bugzilla/show_bug.cgi?id=28759
[2]: dd6e7e0d57
2024-09-01 02:13:31 +08:00
David Snopek
760099ca6f
GDExtension: Show warning on missing PDB file, rather than error
2024-08-31 07:45:06 -05:00
Rémi Verschelde
66dd06837c
Merge pull request #90782 from bruvzg/export_platform_extension
...
Allow adding custom export platforms using scripts / GDExtension.
2024-08-30 09:58:52 +02:00
Rémi Verschelde
cb96fc95c3
Merge pull request #92316 from alula/msvc-clang
...
Add support for compiling with VS clang-cl toolset
2024-08-29 10:36:17 +02:00
Alula
346cbc7f1f
Add support for compiling with VS clang-cl toolset
2024-08-28 13:30:44 -05:00
bruvzg
d528f28275
[Windows] Fix OS.open_dynamic_library
2024-08-28 20:12:09 +03:00
Rémi Verschelde
2730d703a8
Merge pull request #94747 from alvinhochun/mingw-llvm-build-flags
...
Some improvements for MinGW and LLVM build on Windows
2024-08-28 13:14:19 +02:00
Alvin Wong
2d300a0bdc
MinGW: Use thin archives to reduce disk space
2024-08-28 18:20:16 +08:00
Alvin Wong
b5258b42c0
Enable Clang color output on Windows
2024-08-28 18:20:16 +08:00
Alvin Wong
e9b6c1baf8
Windows/detect.py: Detect llvm-mingw GCC wrappers and set use_llvm
2024-08-28 18:20:16 +08:00
Alvin Wong
3a0837b74b
Windows/detect.py: Simplify try_cmd function
2024-08-28 17:20:27 +08:00
bruvzg
ae334e069c
[Windows] Always use absolute UNC paths and long path aware APIs, add "long path aware" flag to the application manifest.
2024-08-28 11:15:57 +03:00
Rémi Verschelde
96159ebc5d
Merge pull request #96192 from dsnopek/windows-gdext-adddlldirectory
...
Windows: Call `AddDllDirectory()` with an absolute path
2024-08-28 09:45:35 +02:00
bruvzg
07e986f728
Allow adding custom export platforms using scripts / GDExtension.
2024-08-28 10:29:01 +03:00
David Snopek
e8bd385f53
Windows: Call `AddDllDirectory()` with an absolute path
2024-08-27 17:38:30 -05:00
Rémi Verschelde
73acb2a5b8
Merge pull request #94845 from alvinhochun/llvm-mingw-sanitizers
...
Windows: Add sanitizers for llvm-mingw, increase stack for ASan
2024-08-28 00:12:30 +02:00
Rémi Verschelde
330fca1ffd
Merge pull request #93985 from alvinhochun/windows-gpu-pref
...
Respect integrated GPU preference in Windows Settings
2024-08-28 00:11:45 +02:00
Rémi Verschelde
431c5839fe
Merge pull request #96168 from CreatedBySeb/remove-user-prefix
...
Remove confusing USER prefix from script-logged errors
2024-08-27 17:52:40 +02:00
Sébastien Dunne Fulmer
c3ed8a842c
Remove confusing USER prefix from script-logged errors
2024-08-27 15:00:48 +01:00
bruvzg
9a2977fef1
[Windows] Hide cursor before moving.
2024-08-27 08:44:05 +03:00
bruvzg
f8a6c0e8ab
Enable fallback from ANGLE to native and improve ANGLE error messages.
2024-08-25 21:19:54 +03:00
bruvzg
ea252675aa
[Windows] Emit native file dialog callback from event loop, fix selected options not saved.
2024-08-23 09:53:16 +03:00
Hilderin
6cbadcf606
Fix mouse move over an unfocused window
2024-08-22 21:36:01 -04:00
Rémi Verschelde
568589c9d8
Merge pull request #90993 from darksylinc/matias-TheForge
...
Add debug utilities for Vulkan
2024-08-22 00:38:22 +02:00
Rémi Verschelde
37ae2a2900
Merge pull request #95921 from akien-mga/scons-validate-opt-in-drivers
...
SCons: Better validation for platform-specific opt-in drivers
2024-08-22 00:10:56 +02:00
Rémi Verschelde
100fbb51ab
Merge pull request #95665 from Hilderin/fix-drag-drop-between-window
...
Fix drag&drop between window on Windows
2024-08-22 00:10:35 +02:00
Matias N. Goldberg
364f916f3f
Add debug utilities for Vulkan
...
Features:
- Debug-only tracking of objects by type. See
get_driver_allocs_by_object_type et al.
- Debug-only Breadcrumb info for debugging GPU crashes and device lost
- Performance report per frame from get_perf_report
- Some VMA calls had to be modified in order to insert the necessary
memory callbacks
Functionality marked as "debug-only" is only available in debug or dev
builds.
Misc fixes:
- Early break optimization in RenderingDevice::uniform_set_create
============================
The work was performed by collaboration of TheForge and Google. I am
merely splitting it up into smaller PRs and cleaning it up.
2024-08-21 23:48:08 +02:00
Rémi Verschelde
6e9bcc0f18
SCons: Better validation for platform-specific opt-in drivers
...
This replaces cryptic compilation errors with a clear error message
and early build termination.
2024-08-21 22:53:34 +02:00
bruvzg
66832e9968
[Windows] Run native file dialogs in thread to make it non-blocking.
2024-08-19 12:58:16 +03:00
Hilderin
0987a9dc06
Fix drag&drop between window on Windows
2024-08-16 18:40:46 -04:00
bruvzg
f72e74f395
[Windows/Linux] Check custom export templates architecture.
2024-08-16 15:52:12 +03:00
Rémi Verschelde
b084b6a8bb
Merge pull request #94971 from bruvzg/drv_msgs
...
[Windows] Improve video driver error messages.
2024-08-16 14:32:50 +02:00
Rémi Verschelde
a8bbb09bd5
Merge pull request #95143 from TV4Fun/fix_non_windows_library_load
...
Fix reload of GDExtension libraries in framework package on macOS
2024-08-16 10:35:19 +02:00
Hilderin
59149dc4d0
Fix unfocused windows can't be dragged
2024-08-15 23:08:02 -04:00
Alvin Wong
16a563b9ac
DisplayServerWindows: Fix logic when creating with transient parent
2024-08-15 04:10:15 +08:00
Joel Croteau
f44d6a235f
Fix reload of GDExtension libraries in framework package on macos
...
`GDExtension::open_library` has a check in it to see if the library was loaded
from a temp file, and if it was to restore the original name as that is the one
we actually care about. This check is breaking extension reloading on Mac when
the library path is to a framework folder, as the file inside the framework
will not generally be the same name as the folder.
This check also shouldn't be necessary even on Windows, which is the only
platform that uses `generate_temp_files`, since disposal of the created temp
file is handled within `OS_Windows::open_dynamic_library`, and
`GDExtension::open_library` (which is the only function to call
`open_dynamic_library` with a `p_data` argument) only cares about the original
library file path and has to do extra work to remove the name of the temp file.
Instead, I have removed that check and set `OS_Windows::open_dynamic_library`
to return the name of the original file and not the name of the copy.
This fixes GDExtension reloading on macOS. I do not have a Windows machine
available to test that it still works properly on Windows, so someone should
check that before merging this.
2024-08-08 08:31:49 -06:00
Rémi Verschelde
e693ff814a
Merge pull request #95155 from bruvzg/win_pen_checks
...
[Windows] Reject `WM_POINTER(UP/DOWN)` messages for non pen pointer type.
2024-08-06 12:32:02 +02:00
bruvzg
e5efde9481
[Windows] Reject WM_POINTER(UP/DOWN) messages for non pen pointer type.
2024-08-04 20:07:14 +03:00
bruvzg
27474c9563
[Windows] Check if transparency is enabled in the project setting before applying DWM blur.
2024-08-01 10:30:46 +03:00
Rémi Verschelde
1d57b81d26
Merge pull request #94976 from bruvzg/win_app_name
...
[Windows] Improve editor grouping, set friendly name registry key for exported projects.
2024-07-31 16:13:21 +02:00
bruvzg
3f8cc6678b
[Windows] Improve editor grouping, set friendly name registry key for exported projects.
2024-07-31 15:04:00 +03:00
Rémi Verschelde
3fce516155
Merge pull request #94428 from alvinhochun/windows-angle-resize-sync
...
Windows: Update ANGLE surface size when window is resized
2024-07-31 11:37:37 +02:00
bruvzg
68ae413893
[Windows] Improve video driver error messages.
2024-07-31 11:16:38 +03:00
bruvzg
ad0ab2f396
[Windows] Improve OpenGL/ANGLE switching on ARM64.
2024-07-30 10:11:58 +03:00
Rémi Verschelde
9a8f18b9bf
Merge pull request #94796 from kus04e4ek/backfall
...
Windows: Fall back to D3D12 if Vulkan is not supported and vice versa
2024-07-29 15:17:26 +02:00
Alvin Wong
25270d5907
Allow llvm-mingw sanitizers only on x86_32/x86_64
2024-07-28 17:21:35 +08:00
Alvin Wong
0cda0b935d
Windows: Add sanitizers for llvm-mingw, increase stack for ASan
...
ASan and UBSan are supported by llvm-mingw. They can be enabled by
passing `use_asan=yes use_ubsan=yes` to scons.
2024-07-28 04:32:18 +08:00
Alvin Wong
28c60a5ff9
Combine existing modes when calling SetConsoleMode
...
Otherwise the default modes will be cleared, which causes long lines to
be truncated in some terminals (e.g. Windows Terminal).
2024-07-28 00:32:40 +08:00
bruvzg
5d5d51937f
[Windows] Remove libSynchronization
2024-07-27 17:12:27 +03:00
Kusok
d30c1e6a8f
Fall back to D3D12 if Vulkan is not supported and vice versa
2024-07-27 16:17:20 +08:00
Rémi Verschelde
44342c385c
Merge pull request #94735 from aitorciki/nvdrs-memset-initialization
...
[Windows] Use default aggregate initialization for NVAPI settings
2024-07-26 13:44:13 +02:00
Aitor Guevara
21f3e69a24
[Windows] Use default aggregate initialization for NVAPI settings
...
Using the member initialization encouraged in NVAPI documentation for
NVDRS_SETTING results in builds enabling `dev_mode` breaking. Default
aggregate initialization results in a clean build though.
2024-07-25 14:41:46 +02:00
Alvin Wong
97aa278edb
Pass window exclusive and transient properties for subwindow creation
...
On Windows this allows to avoid having to change the owner of the window
after it has been created, which in rare circumstances may cause the
window to bug out.
2024-07-25 00:27:27 +08:00
bruvzg
52a2836861
Disable FP contraction.
2024-07-23 14:33:51 +03:00
Rémi Verschelde
a50fe87b89
Merge pull request #94078 from Repiteo/scons/msvc-flag-fix
...
SCons: Don't override cl flags on msvc
2024-07-22 14:12:45 +02:00
bruvzg
0e519118d2
[Windows] Fix release export template build for ARM64 Windows.
2024-07-19 14:33:40 +03:00
Rémi Verschelde
18da250ffb
Merge pull request #93737 from aitorciki/disable-windowed-gsync
...
[Windows] Disable G-SYNC in windowed mode
2024-07-19 11:10:31 +02:00
Rémi Verschelde
287521c2c2
Merge pull request #94466 from bruvzg/angle_update_lib
...
[Windows] Add `libSynchronization` to link flags.
2024-07-18 10:45:40 +02:00
Rémi Verschelde
ea018a8131
Merge pull request #94120 from bruvzg/fix_kbd_names
...
[Windows] Fix reading keyboard layout names.
2024-07-17 15:44:50 +02:00
Rémi Verschelde
1ca4ce284e
Merge pull request #94063 from bruvzg/tablet_drag
...
[Winink] Check pointer button states.
2024-07-17 15:44:47 +02:00
bruvzg
9f714bfde5
[Windows] Add `libSynchronization` to link flags.
2024-07-17 10:58:03 +03:00
Alvin Wong
88581a7705
Support GPU preference for MS Store packaged apps
2024-07-16 23:46:37 +08:00
Alvin Wong
4091abd727
Respect integrated GPU preference in Windows Settings
2024-07-16 23:46:37 +08:00
Alvin Wong
a1a0acff7c
Windows: Update ANGLE surface size when window is resized
...
ANGLE needs to be told to resize the DXGI swap chain using
`eglWaitNative`. Otherwise the resize will only happen in
`eglSwapBuffers`, which causes some janky stretching during window
resize.
2024-07-16 17:01:42 +08:00
Alvin Wong
d7f023ab73
Windows: Do not attempt to resize surface before it is created
...
`WM_WINDOWPOSCHANGED` may be received before `CreateWindowExW` has even
returned, when the window's rendering context or OpenGL context hasn't
been created yet.
2024-07-16 17:01:42 +08:00
Alvin Wong
1d542257e5
Windows: Fix wrong initial size passed to rendering driver
2024-07-16 03:30:44 +08:00
bruvzg
3afe1e7481
[Winink] Check pointer button states, fix drag and double-click.
2024-07-15 12:23:07 +03:00
Rémi Verschelde
1aa1a1879d
Merge pull request #94203 from RandomShaper/bye_bye_dxil_dll
...
D3D12: Get rid of `DXIL.dll`!
2024-07-11 23:16:59 +02:00
Rémi Verschelde
6c2699cbf6
Merge pull request #94187 from akien-mga/windows-remove-unused-is_wow64
...
Remove unused `is_wow64` method in `OS_Windows`
2024-07-11 23:16:54 +02:00
Rémi Verschelde
c349f0d6a7
Remove unused `is_wow64` method in `OS_Windows`
...
It was added in b4d369c88 for `get_processor_count`, but this was later
changed to rely on `std::thread` in 6bf02c016 .
2024-07-11 23:16:12 +02:00
Pedro J. Estébanez
ee2c1584e4
D3D12: Get rid of DXIL.dll!
2024-07-11 17:56:45 +02:00
Rémi Verschelde
1b49d6393d
Merge pull request #93733 from alvinhochun/windows-restore-sizing
...
Windows: Restore to windowed mode using `SW_NORMAL`
2024-07-11 09:40:58 +02:00
bruvzg
fea8ab0999
[Windows] Fix reading keyboard layout names.
2024-07-09 11:46:06 +03:00
Rémi Verschelde
3220b6fb11
Merge pull request #93976 from Hilderin/fix-caret-disappear-from-script-editor
...
Fix caret can disappear from script editor
2024-07-08 19:13:31 +02:00
Thaddeus Crews
0f691efb1b
SCons: Don't override cl flags on msvc
2024-07-08 09:48:18 -05:00
Hilderin
ebd1ab646c
Fix caret can disappear from script editor
2024-07-08 07:11:17 -04:00
Rémi Verschelde
ec02d406ca
Merge pull request #94067 from RandomShaper/fix_build
...
Windows: Fix build error due to missing definition of Texture2D
2024-07-08 11:48:36 +02:00
Pedro J. Estébanez
50bf2e5b37
Windows: Fix build error due to missing definition of Texture2D
2024-07-08 10:40:17 +02:00
bruvzg
eddc9cea11
[NativeMenu] Do not auto toggle check/multi-state items. Add `is_native_menu` method.
2024-07-08 11:20:28 +03:00
Rémi Verschelde
abfce31ba7
Merge pull request #93152 from RandomShaper/prebuilt_asan
...
Enable usage of asan-enabled versions of prebuilt libraries
2024-07-02 17:27:31 +02:00
Aitor Guevara
b8edc64379
[Windows] Disable G-SYNC in windowed mode
...
G-SYNC (NVIDIA's VRR) is known to be buggy on windowed mode in Windows.
While the driver only enables G-SYNC for full screen mode by default,
users can toggle it on for windowed mode too, resulting in unstable
refresh rates during Editor usage.
This patch extends Godot's NVIDIA profile to force the default full
screen mode only G-SYNC with Godot.
2024-06-29 13:40:15 +02:00
Alvin Wong
c54477b7e6
Windows: Restore to windowed mode using SW_NORMAL
...
If window was maximized before minimizing, restoring the window
afterwards using SW_RESTORE seems to cause the window to forget its
original size and position before being maximized, causing the window to
fill the screen instead.
2024-06-29 18:24:45 +08:00
Pedro J. Estébanez
32d9c93af3
Improve handling of rendering startup errors
2024-06-28 19:31:50 +02:00
Max Hilbrunner
63911b994c
Windows: Fix arch detection via VCTOOLSINSTALLDIR
2024-06-25 13:31:46 +02:00