Thaddeus Crews
73278bf35d
SCons: Properly `NoCache` all text files
2025-01-16 16:59:12 -06:00
Travis Lange
d713a22f2e
fix wayland can set mode exclusive full screen
2025-01-14 20:21:52 -05: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
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
7fe0609118
Linux: Relax interdependency between freetype, libpng, and zlib for unvendored builds
...
This restriction was added to fix #7373 back then, which was a symbol conflict
between FreeType's bundled copy of gzip/zlib, and distro packages.
But we also unbundled FreeType's zlib in #69395 so this is no longer an issue.
On the other hand recent issues pointed out that using system-provided icu4c
or harfbuzz can cause issues (#91401 , #100301 ). We still allow it for now but
raise a warning.
2025-01-09 00:28:46 +01:00
Riteo
e5ac45e822
Wayland: Unsuspend only for the same reason as suspension
...
Before, we would check both methods together, leading to loops.
Now we track the actual reason we suspended and only unsuspend when
that same reason triggers. For example, if we suspend because of the
suspended flag we'll unsuspend only because it got unset. Conversely, if
we suspend because of a timeout we'll unsuspend only if we get a new
frame event.
We do this because, while some compositors properly report a "suspended"
state (hinting us to stop repainting), most don't and we need a "safety
net" anyways as we do not want to constantly stay at 1fps (the max time
we'll wait before giving up) either.
2025-01-08 13:53:01 +01: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
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
44f871ff72
Merge pull request #100898 from Summersay415/wayland-issue
...
Fix exclusive fullscreen on Wayland
2025-01-06 22:47:53 +01:00
Rémi Verschelde
e06cac212b
Merge pull request #99893 from kiroxas/avoidUTF8ParsingWhenNotNecessary
...
Avoid duplicated `utf8()` calls
2025-01-06 22:47:12 +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
Rémi Verschelde
35cf29bb21
Merge pull request #100715 from buresu/fix-wayland-ime-input
...
Fix last character deletion in Wayland IME input
2025-01-03 00:48:55 +01:00
Summersay415
8c1742c957
Fix exclusive fullscreen on Wayland
2025-01-02 21:49:49 +07:00
Thaddeus Crews
3994e561ea
Merge pull request #100827 from OS-of-S/fixed-mold-search
...
Fix Mold-search in older systems
2024-12-30 08:58:49 -06:00
OS-of-S
b9f0e0cfa3
Fixed Mold-search in older systems
2024-12-28 13:49:56 +07:00
A Thousand Ships
a1846b27ea
Improve use of `Ref.is_null/valid`
...
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Naoto Kondo
b719eed725
Fix last character deletion in Wayland IME input
2024-12-22 05:52:03 +09:00
Rémi Verschelde
13274842a9
Merge pull request #100638 from Tiktalik/fixed-wayland-horizontal-scroll
...
Fix Wayland left/right scroll wheel issues.
2024-12-20 23:57:16 +01:00
Rémi Verschelde
eaed664bce
Merge pull request #100637 from bruvzg/unset_fw
...
Unset last focused window when it is destroyed.
2024-12-20 23:57:13 +01:00
Tiktalik
fb741715c1
Fixed incorrect use of vertical scroll where it should have been horizontal.
2024-12-20 00:53:10 -07:00
Pāvels Nadtočajevs
73faa509ea
Unset last focused window when it is destroyed.
2024-12-20 09:40:25 +02:00
Kiro
06efe84bca
Remove duplicate `utf8()` calls
2024-12-19 10:15:46 +01:00
Hilderin
9d2a4c03be
Embedding game process in editor
2024-12-18 17:52:42 -05: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
Rémi Verschelde
182b4741ea
Merge pull request #93479 from Repiteo/scons/better-colored-output
...
SCons: Improve colored output
2024-12-17 16:18:41 +01:00
Pāvels Nadtočajevs
293be04ec8
Implement `window_start_drag` on Windows and Linux.
2024-12-17 16:49:27 +02:00
Hilderin
4e19ab8afe
Fix connecting a signal with a double click is too difficult
...
Co-authored-by: Danil Alexeev <dalexeev12@yandex.ru>
2024-12-14 16:18:34 +03:00
HP van Braam
dbbacf3d0e
Regenerate X11 wrappers with dynload-wrapper 0.7
...
Dynload-wrapper 0.7 introduces the --include-dir option which lets us restrict
what headers are considered for generation.
In this case it removes the `XFreeThreads` Xlib function which does not
exist on Ubuntu 22.04 and older.
2024-12-12 14:57:26 +01:00
Thaddeus Crews
38775731e8
Merge pull request #99965 from Riteo/unstable-galore
...
Wayland: Add support for xdg-foreign-unstable-v2
2024-12-11 17:36:07 -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
Thaddeus Crews
f222cc43f3
Merge pull request #99633 from buresu/fix-wayland-keymapping
...
Fix underscore input not working with jp106 keyboard on wayland platform
2024-12-10 14:15:51 -06:00
Thaddeus Crews
d8761f2c79
SCons: Improve colored output
2024-12-10 11:44:48 -06:00
Riteo
65c28ed31d
Wayland: Add support for xdg-foreign-unstable-v2
...
The v1 version is deprecated and bound to be removed in the future from
all compositors. This patch adds a v1/v2 designator to everything
related to the protocol and prefers the v2 protocol if both are
available.
Additionally, renames the event handler to follow the Wayland interface
name, for consistency with the rest of the codebase.
2024-12-10 01:29:46 +01: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
Thaddeus Crews
49e033f8e2
Merge pull request #100047 from MBCX/fix-freebsd-compilation
...
Make Godot compile on `FreeBSD`
2024-12-05 14:12:11 -06:00
Thaddeus Crews
63af934d74
Merge pull request #98506 from 0xafbf/build-linux-with-spaces-in-path
...
Fix linux builds with separate debug symbols file when there is a space in the path.
2024-12-05 14:12:10 -06:00
MBCX
6bc80effbb
Make Godot compile on FreeBSD
2024-12-05 12:33:55 -04:00
Student Main
f39614aa5a
Ignore case when parse /proc/cpuinfo
2024-12-06 00:19:58 +08:00
Student Main
e0693f8ad8
Add loongarch64 support
2024-12-06 00:18:26 +08:00
Andrés Botero
becf5d7ac3
Fix linux builds with debug symbols when there is a space in the path.
2024-12-05 10:31:12 -05:00
Pāvels Nadtočajevs
84650f2018
Implement `DisplayServer.beep`.
2024-12-03 12:43:26 +02: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
1fed9cf01f
Merge pull request #99110 from bruvzg/gnome_fd
...
[Linux] Use safe IDs for native file dialog options. Show extensions in export dialog.
2024-12-02 15:51:07 +01:00
rune-scape
d58b2e879f
Get rid of easily removable uses of const_cast
2024-12-01 17:50:13 -08:00
Naoto Kondo
f367a6c231
Fix underscore input not working with jp106 keyboard on wayland platform
2024-11-30 23:40:42 +09: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
Trevor Davenport
0d9a705e25
Wayland: Only set selection when there is not already a source.
...
Co-authored-by: Riteo Siuga <riteo@posteo.net>
2024-11-17 16:00:24 -07:00
Pāvels Nadtočajevs
f5fad7592f
Use processed filter list for native dialogs.
2024-11-15 12:08:33 +02:00
Pāvels Nadtočajevs
ed7b4f5c4a
[Linux] Use safe IDs for native file dialog options.
2024-11-15 08:45:33 +02:00
Yevhen Babiichuk (DustDFG)
a42b8e2413
Buildsystem: Use pkg-config for miniupnpc and mbedtls
...
Miniupnpc added pkg-config files in 2.2.3 but we require 2.2.8
5a398006b9
MbedTLS added pkg-config files in 3.6.0 while we require 3.6.1
https://github.com/Mbed-TLS/mbedtls/blob/development/ChangeLog
Signed-off-by: Yevhen Babiichuk (DustDFG) <dfgdust@gmail.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-11-13 15:25:42 +02:00
Hein-Pieter van Braam
333452d499
Regenerate X11 wrappers
...
Version 0.6 of https://github.com/hpvb/dynload-wrapper/ now supports all
of the features we need to generate the wrappers without editing them.
This replaces the hand-patched wrappers with "clean" generated ones.
2024-11-09 02:52:49 +01: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
Summersay415
6d14cd6ff9
Fix fallbacks to OpenGL
2024-10-28 22:57:19 +07: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
Matias N. Goldberg
0818408db5
Fix wrong Wayland path if building with opengl3=no
...
Godot checks if there's Vulkan or GLES3 support.
If no support is found, it shows an error message.
However the code for this error message is left out when building with
opengl3=no
2024-10-12 20:20:12 -03: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
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
BlueCube3310
2167157aaf
Replace squish with bcdec for BC decompression
2024-09-26 14:42:54 +02:00
Rémi Verschelde
a4c1804cab
Merge pull request #97483 from akien-mga/clang-format-19.1.0
...
CI: Update `clang-format` pre-commit hook to 19.1.0
2024-09-26 12:46:04 +02:00
Rémi Verschelde
a90da7e87b
Merge pull request #93058 from Repiteo/scons/scons_hints
...
SCons: Add unobtrusive type hints in SCons files
2024-09-26 12:45:21 +02:00
Rémi Verschelde
c92a6c7e27
CI: Update `clang-format` pre-commit hook to 19.1.0
2024-09-26 11:46:12 +02:00
Thaddeus Crews
9f9ee0c813
SCons: Add unobtrusive type hints in SCons files
2024-09-25 09:34:35 -05:00
David Snopek
36293a2dbf
Fix renaming nodes on X11
2024-09-25 09:05:51 -05:00
Joaquim Monteiro
c4e4810e93
Fallback to OpenGL 3 if Vulkan isn't available on Wayland
2024-09-21 06:35:35 +01: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
David Snopek
b1871cdabf
Fix project manager stealing focus on i3
2024-09-16 16:55:57 -05:00
Rémi Verschelde
4215dfdff7
Merge pull request #96973 from Riteo/pointing-the-obvious
...
Wayland: Simplify cursor code and fix custom cursors
2024-09-16 13:35:35 +02:00
Markus Sauermann
60aaa017ff
Enable Drag and Drop for SubViewports and Windows
...
Make Drag and Drop an application-wide operation.
This allows do drop on Controls in other Viewports/Windows.
In order to achieve this, `Viewport::_update_mouse_over` is adjusted to
remember the Control, that the mouse is over (possibly within nested
viewports). This Control is used as a basis for the Drop-operation, which
replaces the previous algorithm, which was only aware of the topmost
Viewport.
Also now all nodes in the SceneTree are notified about the Drag and Drop
operation, with the exception of SubViewports that are not children of
SubViewportContainers.
2024-09-15 01:06:02 +02:00
Riteo
c15cd3acc4
Wayland: Simplify cursor code and fix custom cursors
...
Initially the WaylandThread cursor code was supposed to be as stateless
as possible but, as time went on, this wasn't possible.
This expectation made the resulting API quite convoluted, so this patch
aims to simplify it substantially bot in terms of API surface and, most
importantly, in terms of actual implementation complexity.
This patch also fixes custom cursors since I accidentally changed the
mmap flags to MAP_PRIVATE some time ago. This took me hours to notice.
2024-09-13 19:08:53 +02:00
Riteo
343ea9c6f7
Wayland: clear button mask on pointer leave
...
While experimenting with the recent "extent to title" PR, I noticed that
it's not guaranteed for a "button released" event to be emitted when
the pointer leaves the main surface, leaving some buttons stuck.
Not doing this for tablets since the spec makes this behavior clear and
explicit, so we (hopefully) shouldn't have this issue there.
2024-09-10 20:53:53 +02:00
Riteo
26d89bc8e9
Wayland: make primary selection logic consistent with main clipboard
2024-09-08 16:48:41 +02:00
Rémi Verschelde
9abf86f4fe
Merge pull request #96540 from hunterkepley/fix-wayland-middlemouse-paste
...
Wayland: Fix primary clipboard handling
2024-09-04 11:16:42 +02:00
Rémi Verschelde
8eff04192b
Merge pull request #91780 from Riteo/falling-with-style
...
Improve UX when falling back between Display Servers
2024-09-04 11:16:08 +02:00
hunterkepley
7949585aad
Wayland: Fix primary clipboard handling
2024-09-03 22:39:54 -04: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
Rémi Verschelde
0897d830fe
Merge pull request #96204 from bruvzg/fd_no_case
...
[Linux] Make file filters case insensitive.
2024-08-30 09:59:23 +02: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
bruvzg
ace603bcb9
[Linux] Make file filters case insensitive.
2024-08-28 11:13:47 +03:00
bruvzg
07e986f728
Allow adding custom export platforms using scripts / GDExtension.
2024-08-28 10:29:01 +03:00
bruvzg
7b4e3e021a
[Linux] Fix "all files" filter in the native file dialog.
2024-08-28 10:14:01 +03:00
Joel Winarske
6ce71f0fb0
Use wayland-egl-core.h instead of wayland-egl.h
...
-avoid use of transitive wayland include
-resolves https://github.com/godotengine/godot/issues/95830
Signed-off-by: Joel Winarske <joel.winarske@gmail.com>
2024-08-23 14:16:37 -07: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
78f47abe2b
Merge pull request #94022 from Riteo/a-fraction-of-the-work
...
Wayland: Switch pointer position handling to doubles
2024-08-22 00:10:31 +02:00