Rémi Verschelde
cf9bb5c2c3
Windows: Link MSVC dynamic debug CRT for debug builds
...
Fixes #31608 .
2022-11-28 12:58:17 +01:00
Rémi Verschelde
be0923b1d9
Merge pull request #69277 from pkdawson/construct-joypad-first
...
[Windows] Fix joypad crash
2022-11-28 08:47:32 +01:00
Rémi Verschelde
23f3adb7a0
Merge pull request #67815 from Calinou/html5-improve-feature-errors
...
Improve feature errors in HTML5 for easier understanding
2022-11-28 08:40:39 +01:00
Rémi Verschelde
2d1bf56510
Merge pull request #68740 from bruvzg/ios_fixes
...
[iOS] Fix getting Unicode executable path, fix error spam on start.
2022-11-28 08:31:53 +01:00
Fredia Huya-Kouadio
7cc47613fe
Add missing display server overrides
...
Improves the base functionality for the Android platform and helps reduce the amount of spurious error logs emitted.
2022-11-27 22:07:51 -08:00
Patrick Dawson
1aa4959381
[Windows] Fix joypad crash
2022-11-28 03:38:47 +01:00
Rémi Verschelde
2a36127e34
Android: Remove extra arch suffix now redundant with the default one
...
We would needlessly get file names like `*.arm64.armv8.o`.
2022-11-25 16:25:31 +01:00
Rémi Verschelde
afe1c89fb5
Merge pull request #68897 from bruvzg/mac_reparent
...
[macOS] Dynamically attach and detach transient windows to allow them to stay on top of parent and be moved to another screen.
2022-11-21 11:44:02 +01:00
bruvzg
908bef8eee
[Export] Use image loader directly to avoid "resource as image file" errors.
2022-11-21 10:11:59 +02:00
bruvzg
c2b061dec3
[macOS] Dynamically attach and detach transient windows to allow them to stay on top of parent and can be moved to another screen.
2022-11-21 10:11:14 +02:00
Markus Sauermann
567a591f87
Fix unused exitcode in macos export plugin
...
Fix that the exitcode is never set.
2022-11-20 22:27:23 +01:00
bruvzg
ac0ed9ce67
Windows icon export improvements.
...
Regenerate Windows icon on export to ensure correct icon size order.
Add support for using PNG/WebP/SVG files as an icon for Windows exports.
Allow using WebP/SVG files as icon for macOS exports.
Add option to select generated icons interpolation, and set default interpolation to Lanczos.
2022-11-18 19:42:07 +02:00
Fredia Huya-Kouadio
3c75887d41
Fix parsing of the keep_screen_on
display setting
2022-11-17 05:54:05 -08:00
Rémi Verschelde
eb7c3e1ad3
Android: Fix parsing keep_screen_on
setting
...
Boolean stringification changed in Godot 4.0.
Fixes #67034 .
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2022-11-17 14:32:42 +01:00
Rémi Verschelde
2e2a3a5f16
Merge pull request #68778 from bruvzg/ios_icons
...
[iOS] iOS export improvements.
2022-11-17 13:48:07 +01:00
Rémi Verschelde
921ab252e7
Merge pull request #68777 from bruvzg/mac_activ_13
...
[macOS] Update activation hack to work on Ventura.
2022-11-17 11:57:50 +01:00
bruvzg
7467067d23
[iOS] iOS export improvements.
...
Add export options to set Settings and Notification icons on export.
Automatically fill background of the app store icon instead of failing (with warning).
Update development region to use `en` instead of `English`.
2022-11-17 12:06:15 +02:00
bruvzg
153d06d79b
[macOS] Update activation hack to work on Ventura.
2022-11-17 11:14:03 +02:00
bruvzg
b11d180a93
[Windows] Use case-sensitive file names for the system fonts to avoid warnings.
2022-11-17 09:39:31 +02:00
bruvzg
6bf9594cfb
[iOS] Fix getting Unicode executable path, fix "!configured" and "!classes.has(ti.inherits)" error spam on start.
2022-11-16 18:55:37 +02:00
Fredia Huya-Kouadio
5212d37040
Fix 'save & restart' logic for the Android Editor
2022-11-16 03:35:53 -08:00
Rémi Verschelde
13280f1874
X11: Don't override glxSwapInterval function pointers loaded by GLAD
...
Fixes #68722 .
Co-authored-by: alcomposer <alex.w.mitchell@gmail.com>
2022-11-16 10:05:52 +01:00
Rémi Verschelde
5993209b26
Merge pull request #68700 from clayjohn/GLES3-vsync
...
Set vsync on window creation when using GLES3
2022-11-16 00:29:19 +01:00
clayjohn
58a9cfee80
Set vsync on window creation when using GLES3.
...
Add vsync to Windows platform
2022-11-15 14:14:21 -08:00
bruvzg
7db3822c2e
[Windows] Add icon to the console wrapper, add option to set icon for the console wrapper on export.
2022-11-15 23:47:21 +02:00
Riteo Siuga
dc2919d57b
Load GLX dynamically with GLAD
...
This is accomplished through the addition of a GLAD GLX loader in the
`thirdparty` directory.
This is another step towards a nice Wayland/X11 interoperation.
2022-11-15 13:55:30 +01:00
Rémi Verschelde
a70431559b
Merge pull request #68683 from bruvzg/mvk_detect
...
[macOS] Automatically detect MoltenVK libs installed via homebrew and macports.
2022-11-15 11:56:47 +01:00
Rémi Verschelde
696740fe38
Merge pull request #68680 from bruvzg/fc_no_font_sub
...
[fontconfig] Reject font substitutes if non-alias name was used.
2022-11-15 11:56:31 +01:00
Rémi Verschelde
dbf6ff0cb6
Merge pull request #68372 from Riteo/glad2
...
Regenerate GL loader code with GLAD 2
2022-11-15 11:56:16 +01:00
bruvzg
00d3ceb870
[macOS] Automatically detect MoltenVK libs installed via homebrew and macports.
2022-11-15 11:59:53 +02:00
bruvzg
40832cc670
[fontconfig] Reject font substitutes if non-alias name was used.
2022-11-15 11:17:44 +02:00
Rémi Verschelde
98e0d59952
Merge pull request #68504 from dzil123/cache_system_dir_xdg2
...
Cache OS_LinuxBSD::get_system_dir
2022-11-15 00:18:09 +01:00
Rémi Verschelde
80dbcfd995
Merge pull request #68657 from Sauermann/fix-redundant-initialization
...
Remove redundant non-trivial Variant types initializations
2022-11-14 23:23:54 +01:00
Riteo
f6397bffb1
Regenerate GL loader code with GLAD 2
...
GLAD 1 creates unusable loaders for EGL, while the newly released GLAD 2
does not, so for consistency I thought that it would be a good idea to
uniform things beforehand. While it had some API changes some renames
were all that was needed and everything works like before, at least on
the Wayland branch.
I've kept the structure identical, although this new generator has quite
a few hefty features, such as a single header mode.
I've also added GLAD to `thirdparty/README.md`, but I haven't specified
that in the commit title because it's a very small "fix".
2022-11-14 21:48:01 +01:00
Hugo Locurcio
efe3220b2e
Fix periods in editor strings and messages
...
- Ensure all strings with ellipsis end with 3 periods instead of 2.
- Fix extraneous period in "Error calling from signal '...' to callable"
messages.
2022-11-14 19:36:36 +01:00
Markus Sauermann
3b14f0334c
Remove redundant Variant-types initializations
2022-11-14 19:35:19 +01:00
Rémi Verschelde
315c64282b
Fix misc formatting issues
...
Somehow I missed the failing CI report from trailing whitespace.
Fixed a couple typos found by codespell while at it, and misc
trailing semicolons in one of the files.
2022-11-14 19:00:48 +01:00
Rémi Verschelde
1b3ed1b3ba
Merge pull request #68631 from pkdawson/fix-icondir-buffer-overflow
...
Fix ICONDIR buffer overflow
2022-11-14 11:08:22 +01:00
bruvzg
964d8b2d00
[macOS] Add exclusive fullscreen mode with Dock and Menu disabled.
2022-11-14 07:57:22 +02:00
Patrick Dawson
ffa39db847
Fix ICONDIR buffer overflow
2022-11-14 00:47:14 +01:00
Rémi Verschelde
b05e1e7d69
Merge pull request #68608 from dsnopek/gl-manager-nullptr
...
Added missing null checks for gl_manager in MacOS and Windows display servers
2022-11-13 15:52:42 +01:00
David Snopek
4c8409c0fe
Added missing null checks for gl_manager in MacOS and Windows display servers
2022-11-13 07:06:26 -06:00
dzil123
d22ab7c85b
Cache OS_LinuxBSD::get_system_dir(SYSTEM_DIR_DESKTOP)
2022-11-12 22:38:32 -08:00
Markus Sauermann
ed5c9a07d7
Fix gl_manager nullptr crash
...
Add a nullptr-check, before accessing gl_manager
2022-11-13 00:48:45 +01:00
Rémi Verschelde
6ec698059a
Merge pull request #68482 from Sauermann/fix-mouse-enter-event
...
Fix unsent WINDOW_EVENT_MOUSE_ENTER event on mouse_mode-change
2022-11-11 10:54:30 +01:00
Markus Sauermann
52d75c9b35
Fix unsent WINDOW_EVENT_MOUSE_ENTER event on mouse_mode-change
...
coauthor: @bruvzg
On linuxbsd and macOS the WINDOW_EVENT_MOUSE_ENTER was not sent,
when the mouse became visible again after a mouse_mode-change.
2022-11-11 07:52:16 +01:00
Fredia Huya-Kouadio
151233b702
Upgrade Android gradle plugin to version 7.2.1
2022-11-10 16:35:50 -08:00
Rémi Verschelde
29de658c29
Merge pull request #68345 from Abdul-AZ/master
...
Fix static object destructors being called on gpu selection with X11
2022-11-09 09:16:04 +01:00
David Snopek
23603e409c
Add support for OpenGL to OpenXR
2022-11-08 18:47:11 -06:00
TechnoPorg
df4597c9ab
Improve support for 64-bit types on Android.
...
This update mappings in the JNI functions to better support 64-bit integers, and adds support for 64-bit float arrays.
The code is mostly reused from 32-bit types.
2022-11-08 07:27:45 -07:00
Zae
bc9bf00e4a
Fix viewport doesn't auto-resize on Web.
2022-11-08 18:33:24 +08:00
Rémi Verschelde
70bde0d762
Merge pull request #68362 from bruvzg/android_gde
...
[Android] Fix GDExtension export and loading.
2022-11-08 10:50:30 +01:00
Rémi Verschelde
ddfd6cfeaa
Merge pull request #67682 from m4gr3d/misc_fixes_main
...
Small set of fixes to the input logic
2022-11-08 10:49:18 +01:00
bruvzg
6033668bed
[Android] Fix GDExtension export and loading.
2022-11-08 09:42:16 +02:00
kobewi
d9f066d5fa
Remove duplicate project settings definitions
2022-11-08 01:29:39 +01:00
Fredia Huya-Kouadio
5f4a3e57de
Small set of fixes to the input logic
2022-11-07 08:57:08 -08:00
Abdulrahman Al Zeidi
5860f81c18
Fix static object destructors being called on gpu selection with X11
2022-11-07 12:08:52 +00:00
Rémi Verschelde
930a94bfc4
Merge pull request #68287 from HolonProduction/android_keys
...
Fix wrong android key mapping.
2022-11-06 16:05:07 +01:00
Fabio Alessandrelli
3ff7964145
[Web] Force WebGL2 when supported.
2022-11-05 14:06:09 +01:00
Fabio Alessandrelli
cece83fdf2
[Web] Improve Godot shutdown and cleanup.
2022-11-05 14:06:09 +01:00
HolonProduction
a3f0dc5a83
Fix wrong android key mapping.
...
Fixes the wrong mapping of `Key::HOME`. Androids `KEYCODE_HOME` is in fact the hardware home button the right mapping is `KEYCODE_MOVE_HOME`.
Also adds mappings to keys that were not present before.
2022-11-05 13:54:44 +01:00
Rémi Verschelde
191c8ed12f
Merge pull request #67434 from bruvzg/win_wrapper
...
Add console wrapper app to handle console i/o redirection on Windows.
2022-11-04 10:49:37 +01:00
Rémi Verschelde
879aac9db4
Merge pull request #67695 from Sauermann/fix-filedrop-space
...
Do not strip spaces at the end of file names of dropped files
2022-11-03 12:08:08 +01:00
Rémi Verschelde
90d290f5f5
Merge pull request #67820 from Sauermann/fix-popup-closing-on-mousemove
...
Fix unwanted popup closing by mouse-move while holding mouse-button down
2022-11-03 12:07:59 +01:00
Rémi Verschelde
a68ea12c5b
Merge pull request #68133 from Sauermann/fix-mouse-dropping
...
Fix mouseleave event after drag and drop in different windows
2022-11-03 12:07:52 +01:00
Markus Sauermann
5d0aade322
Do not strip spaces at the end of file names of dropped files on linuxbsd
2022-11-03 11:38:42 +01:00
Markus Sauermann
8fb4b5998e
Fix unwanted popup closing by mouse-move while holding mouse-button
2022-11-03 11:36:58 +01:00
Rémi Verschelde
889868cbbc
Merge pull request #68182 from Riteo/x11-folder
...
linuxbsd: move all X11 stuff in its own directory
2022-11-03 00:32:30 +01:00
Riteo
593c571d6a
linuxbsd: move all X11 stuff in its own directory
...
This allows implementing `DisplayServer`s like Wayland without making a
mess in the source tree.
2022-11-02 20:48:46 +01:00
Rémi Verschelde
f7c611ab71
Style: Misc docs and comment style and language fixes
...
- Removed empty paragraphs in XML.
- Consistently use bold style for "Example:", on a new line.
- Fix usage of `[code]` when hyperlinks could be used (`[member]`, `[constant]`).
- Fix invalid usage of backticks for inline code in BBCode.
- Fix some American/British English spelling inconsistencies.
- Other minor fixes spotted along the way, including typo fixes with codespell.
- Don't specify `@GlobalScope` for `enum` and `constant`.
2022-11-02 19:01:18 +01:00
Markus Sauermann
9cea653457
Fix mouseleave event after drag and drop in different Windows
...
When dropping in a different window, it is necessary to start tracking
the WM_MOUSELEAVE event again.
2022-11-01 18:58:46 +01:00
bruvzg
060d62e0dc
Load and use system emoji font in the editor.
2022-11-01 11:04:58 +02:00
Rémi Verschelde
ec3c3afeaf
Merge pull request #68099 from Sauermann/fix-popup-mouse-offset
...
Fix mouse offset for unfocused popups
2022-11-01 08:20:04 +01:00
Markus Sauermann
88feacdad5
Fix mouse offset for unfocused popups
...
On Windows, the mouse was offset, when unfocused popups were used,
like the Editor menu.
2022-11-01 00:04:14 +01:00
Rémi Verschelde
2bd9a6fe8d
Merge pull request #68044 from ztc0611/ios-promotion
...
Add ProMotion/High Refresh Rate Support to iOS Exports
2022-10-31 23:03:30 +01:00
Zach Coleman
601c42be66
Add ProMotion Support to iOS Exports
2022-10-31 09:33:39 -04:00
Rémi Verschelde
9188bc7341
Merge pull request #67879 from bruvzg/fix_no_vlk
...
Fix build with Vulkan disabled and no Vulkan headers installed.
2022-10-31 14:29:05 +01:00
bruvzg
9a33c97c2a
Add console wrapper app to handle console i/o redirection on Windows.
2022-10-31 14:37:49 +02:00
Rémi Verschelde
5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
...
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde
90e337e081
CI: Update minimatch npm dependency to silence security report
...
No risk for us as this is only used for static checks on CI.
2022-10-31 11:52:52 +01:00
Rémi Verschelde
638dfe2528
Merge pull request #67581 from aaronfranke/android-float
...
Use proper types for converting Java float/double arrays in Android code
2022-10-31 10:36:11 +01:00
Clay John
04ac91f786
Merge pull request #67790 from kdada/fix-flash-window
...
Make creating window do not flicker when specify custom position
2022-10-28 13:02:58 -07:00
Clay John
282e50ac88
Merge pull request #67903 from Sauermann/fix-startup-windows-mouse-exit-event
...
Fix differences between Windows and linuxbsd Display Server
2022-10-28 11:20:36 -07:00
Max Hilbrunner
028db9f2b5
Merge pull request #67914 from Calinou/displayserverx11-no-native-icon
...
Fix `DisplayServer.has_feature()` claiming X11 has native icon support
2022-10-28 12:46:57 +02:00
Markus Sauermann
4bd601d82a
Fix differences between Windows and linuxbsd Display Server
...
Fix that Windows receive WINDOW_EVENT_MOUSE_EXIT on startup.
When moving the mouse cursor from one window to a different one, make sure that the first window receives the WINDOW_EVENT_MOUSE_EXIT event before the second window receives the WINDOW_EVENT_MOUSE_ENTER event.
Send Mouse-Move events also for Windows, that are currently not focused.
For determining the currently hovered window, consider not just the currently focused window, but also other windows.
Send mouse move events to focused window instead of hovered window.
2022-10-28 09:32:25 +02:00
zCubed3
e7091d07cd
Fix OS.get_video_adapter_driver_info crash
2022-10-27 15:45:21 -07:00
Clay John
9ffa86357d
Merge pull request #67421 from Sauermann/fix-failure-exit-code
...
Fix Godot exiting with unexpected failure code
2022-10-27 11:58:50 -07:00
Hugo Locurcio
82a575dff4
Fix DisplayServer.has_feature()
claiming X11 has native icon support
...
Native icons are not supported by the X11 DisplayServer, unlike
Windows and macOS.
2022-10-26 20:39:31 +02:00
bruvzg
4dd8f68120
Fix build with Vulkan disabled and no Vulkan headers installed.
2022-10-26 08:55:05 +03:00
Wei Guo
d7e39e313b
Make window creation with custom position do not flash
2022-10-24 13:50:25 +08:00
Clay John
753a182797
Merge pull request #65334 from dsnopek/opengl-multiview
...
[opengl] Add multiview to the opengl3 driver
2022-10-23 17:00:01 -07:00
Hugo Locurcio
8fcd54d13e
Improve feature errors in HTML5 for easier understanding
2022-10-23 19:13:42 +02:00
Fredia Huya-Kouadio
13e4770b97
Add double_tap attribute to InputEventScreenTouch
...
This provides parity with the `InputEventMouseButton` allowing for proper conversion between the two events.
2022-10-22 07:30:46 -07:00
David Snopek
398ee08375
Add multiview to the opengl3 driver
2022-10-21 21:00:32 -05:00
Clay John
021f524dfd
Merge pull request #67546 from clayjohn/DS-msg
...
Update the DisplayServer video driver error message to be more accurate and friendly
2022-10-21 16:57:35 -07:00
nikitalita
34a60e2c62
improve get_apksigner_path() robustness
2022-10-20 04:20:34 -07:00
Max Hilbrunner
21c90b4c7d
Merge pull request #67564 from bruvzg/macos_wide_alert
...
[macOS] Fit OS::alert to the text width for better readability.
2022-10-19 21:52:40 +02:00
Fredia Huya-Kouadio
20d1c882cd
Delete Android godot-lib with the old naming scheme
...
Update the `clean` task configuration: running `gradlew clean` will now properly delete the generated build artifacts
2022-10-18 20:36:40 -07:00
clayjohn
c4ba1565d0
Update the DisplayServer video driver error message
...
to be more accurate and friendly
2022-10-18 10:15:11 -07:00
kobewi
e48c5daddf
Unify usage of GLOBAL/EDITOR_GET
2022-10-18 19:01:48 +02:00
Aaron Franke
01bec83cb6
Use proper types for converting Java float/double arrays in Android code
2022-10-18 08:26:04 -05:00
bruvzg
a3cb6163cc
[macOS] Fit OS::alert to the text width for better readability.
2022-10-18 12:11:39 +03:00
Rémi Verschelde
b545d55df9
Merge pull request #67539 from bruvzg/check_ctx
...
Check if Vulkan context for the window exists before resizing it to avoid unnecessary error messages.
2022-10-17 17:32:07 +02:00
Rémi Verschelde
235c5c60f8
Merge pull request #67322 from ztc0611/add-ios-ui-options
...
Add iOS UI Options
2022-10-17 17:30:55 +02:00
Fredia Huya-Kouadio
64e8d8cd1f
Merge pull request #67259 from lucasnlm/optimiza-android-export
...
Optimize Android export process
2022-10-17 08:22:37 -07:00
bruvzg
667a052ed8
Check if Vulkan context for the window exists before resizing it to avoid unnecessary error messages.
2022-10-17 17:26:57 +03:00
Markus Sauermann
7d59a14db8
Fix Godot exiting with unexpected failure code
...
The exit code is initialized as EXIT_FAILURE to indicate failures during
startup. Closing the Game window via the window manager does not
change the exit code, so the program exists with EXIT_FAILURE.
This PR set the exit code to EXIT_SUCCESS when initialization was
successful just before starting the main loop.
2022-10-15 03:17:40 +02:00
kobewi
072f6feaba
Make some Image methods static
2022-10-14 14:34:15 +02:00
Fabio Alessandrelli
40d60ca6ae
[WebSocket] Fix debugger implementation.
...
Register module during core initialization so the remote debugger can
properly handle the "wss://" protocol.
2022-10-13 17:25:29 +02:00
Rémi Verschelde
fd4572cc45
Merge pull request #67340 from bruvzg/mac_export_min
...
Fix macOS export plugin build without regex module.
2022-10-13 09:05:42 +02:00
Rémi Verschelde
40847f1436
Merge pull request #67318 from bruvzg/more_gcc_warn
...
[Windows] Fix more GCC MinGW warnings.
2022-10-13 09:04:06 +02:00
bruvzg
dac2047529
Fix macOS export plugin build without regex module.
2022-10-13 08:54:50 +03:00
Rémi Verschelde
42ebc4ef65
Merge pull request #67325 from Faless/web/4.x_scons_serve
...
[Web] Add the "serve" and "run" scons targets.
2022-10-12 22:56:10 +02:00
Rémi Verschelde
261b9da77f
Merge pull request #67281 from Nidjo123/x11-window-resize
...
Keep rendering context window size in sync when resizing
2022-10-12 22:53:49 +02:00
Rémi Verschelde
f2248969db
Merge pull request #66952 from bruvzg/macos_net_export
...
Fix macOS .NET export.
2022-10-12 22:52:59 +02:00
Fabio Alessandrelli
a06602363c
[Web] Add the "serve" and "run" scons targets.
...
You can now run the test HTTP server by calling:
scons p=web serve
If you also wish to run the browser, call instead:
scons p=web run
The default listen port is 8060, but can be overriden via the env
variable GODOT_WEB_TEST_PORT which must be a valid integer.
2022-10-12 22:29:35 +02:00
Zach Coleman
d78051c92c
Add iOS UI Options
2022-10-12 15:22:54 -04:00
bruvzg
ad4cc8682b
[Windows] Fix GCC MinGW warnings.
2022-10-12 20:19:17 +03:00
Rémi Verschelde
06dc4648bf
Merge pull request #67252 from zaevi/web_fix_export_file_locked
...
[Web] Fix file locked issue when exporting to Web.
2022-10-12 14:44:32 +02:00
Rémi Verschelde
ced736e584
Merge pull request #67272 from Riteo/fix-auto-execinfo
...
Actually set the execinfo flag on non-glibc systems
2022-10-12 08:56:03 +02:00
Rémi Verschelde
fb9b4a1dd0
Merge pull request #67258 from Faless/web/4.x_eslint_html
...
[Web] Add auto-formatting to HTML files.
2022-10-12 08:54:52 +02:00
Nikola Bunjevac
882d40fa11
Keep rendering context window size in sync when resizing
...
On X11 we rely on ConfigureNotify event to update rendering context
window size, but we don't get such event when resizing
programmatically, only when done "manually" by resizing the window
etc.
2022-10-11 23:27:21 +02:00
Riteo
a3b5353892
Actually set the execinfo flag on non-glibc systems
2022-10-11 21:45:29 +02:00
Rémi Verschelde
736a2df437
Merge pull request #67244 from RandomShaper/split_render_further_2
...
Polish rendering driver refactor further (take 2)
2022-10-11 21:08:42 +02:00
Fabio Alessandrelli
9a653ebeac
[Web] Add auto-formatting to HTML files.
...
Uses html-eslint for HTML file and eslint-plugin-html for inline
JavaScript.
Use HTML5 (not XHTML), remove CDATA and trailing slashes for self
closing tags.
Add format checks to CI.
2022-10-11 19:42:12 +02:00
Pedro J. Estébanez
f82deaa5b3
Polish rendering driver refactor further (take 2)
2022-10-11 19:06:55 +02:00
Lucas Lima
975c588cf9
Revert change
2022-10-11 11:39:22 -03:00
Lucas Lima
166696659e
Optimize Android export process
2022-10-11 11:35:39 -03:00
Zae
55a491114a
Fix file locked issue when exporting to Web.
2022-10-11 20:49:51 +08:00
Rémi Verschelde
5aadc618b6
Merge pull request #66102 from MJacred/feature/getvideoadapterdriverinfo
...
Fetch video adapter driver name and version from OS
2022-10-11 13:59:53 +02:00
MJacred
de768afbdc
Fetch video adapter driver name and version from OS on Linux/*BSD and Windows
2022-10-11 12:39:41 +02:00
Rémi Verschelde
6ad1a635ee
Merge pull request #67242 from akien-mga/cleanup-unused-defines
...
Cleanup unused defines in platform code
2022-10-11 12:34:10 +02:00
Rémi Verschelde
a92c564a02
Cleanup unused defines in platform code
2022-10-11 11:52:41 +02:00
Pedro J. Estébanez
e14c5186e2
Fix newlines not honored in Windows console
...
This is relevant when building with `windows_subsystem=console`.
2022-10-11 10:09:50 +02:00
Micky
fe56c1ff75
Use JSON::stringify
where possible
2022-10-11 00:27:23 +02:00
Rémi Verschelde
28f642097a
Merge pull request #67183 from akien-mga/gcc-warnings-cleanup
...
SCons: Cleanup GCC warnings configuration
2022-10-10 17:42:36 +02:00
Rémi Verschelde
3c413cf008
Merge pull request #67200 from bruvzg/fix_win_gcc_warn
...
[Windows] Fix GCC MinGW warnings.
2022-10-10 17:42:19 +02:00
Fabio Alessandrelli
15a8e17b87
Merge pull request #67184 from zaevi/web_fix_GodotJSWrapper_object_type
...
[Web] Fix `Object` type in GodotJSWrapper.
2022-10-10 17:41:10 +02:00
bruvzg
379df32a98
[Windows] Fix GCC MinGW warnings.
2022-10-10 17:43:49 +03:00
Rémi Verschelde
8017827144
SCons: Re-enable treating #warning
as error with werror
...
Replace all TODO uses of `#warning` by proper TODO comments, and will open
matching bug reports to keep track of them.
We don't have a great track record fixing TODOs, but I'd wager we're even
worse for fixing these "TODO #warning" so we should prohibit this usage.
2022-10-10 16:12:26 +02:00
Zae
bf61af6ae9
Fix Object type in GodotJSWrapper.
2022-10-10 19:28:43 +08:00
bruvzg
73430f292b
[macOS] Fix window button position and title bar size when editor scale do not match OS UI scale.
2022-10-10 10:32:41 +03:00
Jason Knight
c2d7f7fb4c
Change auto to default in cursor css settings.
2022-10-07 10:53:49 -06:00
Rémi Verschelde
b28c39d2f5
Merge pull request #67021 from RandomShaper/window_create_ret_madness
...
Harmonize return values of `window_create()` in rendering drivers
2022-10-07 14:22:53 +02:00
bruvzg
6daf4c6593
[.NET Export] Improve .NET export process.
...
[macOS export] Fix incorrect file placement, search paths and architecture detection.
[macOS export] Automatically detect executable files and set +x flag.
[macOS export] Automatically apply "Disable Library Validation" entitlements when required.
[macOS export] Remove old Mono export code.
Fix folder tree creation for shared objects export.
Add arch suffix to the exported .NET "data" folder name.
Remove old Mono code from .NET "data" folder lookup.
2022-10-07 13:33:06 +03:00
Pedro J. Estébanez
e821e9d2a2
Harmonize return values of window_create() in rendering drivers
2022-10-07 11:31:54 +02:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4.
2022-10-07 11:32:33 +03:00
Rémi Verschelde
6c58327c69
Merge pull request #66965 from bruvzg/win_llvm
...
[Windows] Fix LLVM MinGW build.
2022-10-06 08:57:29 +02:00
Rémi Verschelde
c2c9a582da
Merge pull request #64815 from RandomShaper/default_cpu_count
...
Improve default `OS`'s CPU count getter
2022-10-06 08:55:51 +02:00
bruvzg
6afb2d0225
[Windows] Fix LLVM MinGW build.
2022-10-06 09:30:25 +03:00
Fredia Huya-Kouadio
ea9bb98f26
Merge pull request #66946 from m4gr3d/cursor_shape_logic_cleanup_main
...
Cleanup of the Android cursor shape logic
2022-10-05 13:07:34 -07:00
Fredia Huya-Kouadio
ffe0e3970f
Cleanup of the Android cursor shape logic
2022-10-05 11:57:57 -07:00
Pedro J. Estébanez
6bf02c0162
Keep a single, portable implementation of OS::get_processor_count()
2022-10-05 20:10:47 +02:00
Fredia Huya-Kouadio
38113acf0d
Merge pull request #66941 from winterpixelgames/bugfix-android-null-input-event
...
Fix null in android keyboard handling.
2022-10-05 10:51:58 -07:00
Jason Knight
88df3e8d53
Fix null in android keyboard handling.
2022-10-05 11:17:02 -06:00
Fredia Huya-Kouadio
3178b042b3
Fix the gradle build configuration for the Android platform following https://github.com/godotengine/godot/pull/66242
2022-10-05 08:41:48 -07:00
Rémi Verschelde
5b6ccf2fd2
Merge pull request #66720 from qarmin/unintialized_memory
...
Remove usage of unitialized variables
2022-10-05 11:42:47 +02:00
Rémi Verschelde
33f4c5282f
Merge pull request #64819 from RandomShaper/enhance_thread_funcs
...
Enhance portability of threading
2022-10-05 11:42:35 +02:00
Rémi Verschelde
4bf3199000
Merge pull request #64886 from Calinou/web-editor-add-local-web-server-2
...
Replace local web server setup for web editor with a Python-based solution
2022-10-05 08:36:19 +02:00
Rémi Verschelde
2c94470dd1
Merge pull request #63983 from Calinou/scons-linux-execinfo-musl
...
Automatically use execinfo for crash handler on *BSD and musl-based Linux
2022-10-05 08:29:59 +02:00
Hugo Locurcio
8e04bffbcf
Automatically use execinfo for crash handler on *BSD and musl-based Linux
...
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-10-04 19:40:19 +02:00
Hugo Locurcio
1be1b15a57
Replace local web server setup for web editor with a Python-based solution
...
This makes it easier to set up, as you always have Python installed
when building Godot. On the other hand, you don't always have Node.js
+ npm installed (and you may not want to spend time running `npm install`).
Co-authored-by: Fabio Alessandrelli <fabio.alessandrelli@gmail.com>
2022-10-04 19:39:27 +02:00
Pedro J. Estébanez
958ecf55fe
Enhance portability of threading
2022-10-04 11:43:28 +02:00
Rémi Verschelde
4eaa59d0ed
Merge pull request #66773 from MladoniSzabi/numpad-no-numlock-bug-linux
...
Remapped the numpad keys on linux when numlock is off
2022-10-04 11:29:01 +02:00
Rémi Verschelde
68765b8831
Merge pull request #66274 from Calinou/engine-rename-max-fps
...
Rename `Engine.target_fps` and associated project setting to `max_fps`
2022-10-04 11:19:56 +02:00
Rémi Verschelde
b7c68b343d
Merge pull request #66832 from bruvzg/cmd_p_fix
...
[macOS] Fix ⌘ + . + other modifier triggering twice.
2022-10-04 11:19:41 +02:00
Rémi Verschelde
02e9e2d3c0
Merge pull request #66559 from zaevi/fix_ScrollContainer_touch_scroll
...
Fix ScrollContainer touch-scrolling not working.
2022-10-04 10:30:31 +02:00
Rémi Verschelde
9928cdc2e7
Merge pull request #66807 from akien-mga/core-unix-remove-NO_FCNTL-and-NO_STATVFS
...
Unix: Remove now unnecessary I/O defines, cleanup
2022-10-04 10:22:29 +02:00
Rémi Verschelde
cd7f172cf8
Merge pull request #66804 from akien-mga/core-remove-NO_SAFE_CAST
...
Remove unsupported `NO_SAFE_CAST`/`-fno-rtti` from Android build
2022-10-04 10:22:24 +02:00
Hugo Locurcio
1c6c72caf1
Rename Engine.target_fps
and associated project setting to max_fps
...
This makes the setting easier to find, as research has found there are
numerous use cases to limiting FPS. This also improves documentation
related to the Engine property and project setting.
The project setting also works in projects exported in release mode,
so its location in the `debug/` section was misleading.
2022-10-03 23:54:36 +02:00
bruvzg
bfbbe9c1d0
[macOS] Fix ⌘ + . + other modifier triggering twice.
2022-10-03 20:44:50 +03:00
MladoniSzabi
cc0fd7e783
Remapped the numpad keys on linux when numlock is off
...
On Linux, when using the numpad while numlock is off doesn't do
anything. Made the numpad keys map to the correct control keys.
Resolves : #54814 .
2022-10-03 12:53:42 +01:00
Rémi Verschelde
f501e4f665
Unix: Remove now unnecessary I/O defines, cleanup
...
- `LIBC_FILEIO_ENABLED` wasn't defined anywhere, even in _other platforms_.
- `NO_NETWORK` is also never defined. It probably isn't enough anyway to
disable network APIs in the current codebase.
- `UNIX_SOCKET_UNAVAILABLE` is never defined in this code but used by some
other platforms, clarify that.
- `NO_STATVFS` can be removed as Android supports it since API level 19,
which is our current min SDK level. It's also only used for
`DirAccessUnix::get_space_left()` which is anyway overridden by
`DirAccessJAndroid::get_space_left()` so it shouldn't make a difference.
* Fixed documentation for `DirAccess.get_space_left()`.
- `NO_FCNTL` is likely also a remnant of early Android days, in current NDK
r23 it seems to be available. Also cleaned up unused `fcntl.h` includes.
- `NO_ALLOCA` is never defined, and we use alloca in many places now.
2022-10-03 12:33:41 +02:00
Rémi Verschelde
54418ea659
Remove NO_THREADS fallback code, Godot 4 requires thread support
...
This also removes `OS::can_use_threads` from the public API since it's always
true.
2022-10-03 11:23:26 +02:00
Rémi Verschelde
82b87d7a17
Remove unsupported NO_SAFE_CAST
/-fno-rtti
from Android build
...
Android was the last platform to still attempt to disable RTTI (for binary
size), but both the Android editor and now the ICU library used by templates
need RTTI.
There could still be the possibility to support this for non-ICU template
builds (i.e. without the TextServerAdvanced module), but since this isn't one
of the build configurations we test regularly it's pretty risky to keep this
option only for that specific use case. And our code is already littered with
`dynamic_cast`s which weren't guarded with `!defined(NO_SAFE_CAST)`.
2022-10-03 11:18:31 +02:00
Matthew Munro (mam552)
0f5b448a9c
Fix inconsistent window state on X11.
...
Fixes #66413 .
DisplayServerX11 tracks some internal state about whether the window is
fullscreen, minimized, maximized or none. This commit queries the
display server when the window changes, so that this internal state can
be correctly updated.
2022-10-01 16:01:28 -06:00
Rafał Mikrut
2233624152
Remove usage of unitialized variables
2022-10-01 21:09:22 +02:00
Rémi Verschelde
ef8834a642
Merge pull request #64784 from yedpodtrzitko/yed/ci-add-mypy
...
ci: add Python static analysis check via mypy
2022-09-30 17:44:39 +02:00
Rémi Verschelde
166df0896c
Fix typos with codespell
...
Using codespell 2.3-dev from current git.
And fix typo in `methods.py` for `vsproj=yes` option (still won't work
though).
2022-09-30 14:23:36 +02:00
Jiri Suchan
c5bd2f9dce
ci: add Python static analysis check via mypy
2022-09-30 19:03:17 +07:00
Rémi Verschelde
f47979f087
Merge pull request #66242 from akien-mga/scons-unify-tools-target
2022-09-30 12:28:50 +02:00
Rémi Verschelde
e5857bd6c7
Merge pull request #66548 from akien-mga/msvc-warnings-c4701-c4703
...
Fix MSVC warnings C4701 and C4703: Potentially uninitialized variable used
2022-09-28 20:47:50 +02:00
Zae
186ca020b3
Fix ScrollContainer touch-scrolling not working.
2022-09-29 01:47:03 +08:00
Rémi Verschelde
85fe6ecc32
Fix MSVC warnings C4701 and C4703: Potentially uninitialized variable used
2022-09-28 17:05:34 +02:00
Rémi Verschelde
0e53dd642c
Fix MSVC warning C4706: assignment within conditional expression
...
Part of #66537 .
2022-09-28 16:05:07 +02:00
bruvzg
4421378089
[Windows] Ignore excessive wintab mouse move events.
2022-09-28 10:12:04 +03:00
Rémi Verschelde
39facb35a0
SCons: Unify tools/target build type configuration
...
Implements https://github.com/godotengine/godot-proposals/issues/3371 .
New `target` presets
====================
The `tools` option is removed and `target` changes to use three new presets,
which match the builds users are familiar with. These targets control the
default optimization level and enable editor-specific and debugging code:
- `editor`: Replaces `tools=yes target=release_debug`.
* Defines: `TOOLS_ENABLED`, `DEBUG_ENABLED`, `-O2`/`/O2`
- `template_debug`: Replaces `tools=no target=release_debug`.
* Defines: `DEBUG_ENABLED`, `-O2`/`/O2`
- `template_release`: Replaces `tools=no target=release`.
* Defines: `-O3`/`/O2`
New `dev_build` option
======================
The previous `target=debug` is now replaced by a separate `dev_build=yes`
option, which can be used in combination with either of the three targets,
and changes the following:
- `dev_build`: Defines `DEV_ENABLED`, disables optimization (`-O0`/`/0d`),
enables generating debug symbols, does not define `NDEBUG` so `assert()`
works in thirdparty libraries, adds a `.dev` suffix to the binary name.
Note: Unlike previously, `dev_build` defaults to off so that users who
compile Godot from source get an optimized and small build by default.
Engine contributors should now set `dev_build=yes` in their build scripts or
IDE configuration manually.
Changed binary names
====================
The name of generated binaries and object files are changed too, to follow
this format:
`godot.<platform>.<target>[.dev][.double].<arch>[.<extra_suffix>][.<ext>]`
For example:
- `godot.linuxbsd.editor.dev.arm64`
- `godot.windows.template_release.double.x86_64.mono.exe`
Be sure to update your links/scripts/IDE config accordingly.
More flexible `optimize` and `debug_symbols` options
====================================================
The optimization level and whether to generate debug symbols can be further
specified with the `optimize` and `debug_symbols` options. So the default
values listed above for the various `target` and `dev_build` combinations
are indicative and can be replaced when compiling, e.g.:
`scons p=linuxbsd target=template_debug dev_build=yes optimize=debug`
will make a "debug" export template with dev-only code enabled, `-Og`
optimization level for GCC/Clang, and debug symbols. Perfect for debugging
complex crashes at runtime in an exported project.
2022-09-26 16:31:46 +02:00
Rémi Verschelde
49fcf4ffad
Style: Cleanup header guards for consistency
...
Fix file names for {Static,Lightmap}RaycasterEmbree.
2022-09-26 13:51:17 +02:00
Rémi Verschelde
67f700d726
Merge pull request #66377 from bruvzg/macos_menu_cb_deferred
...
[macOS] Process menu callback after event processing step to avoid event queue corruption.
2022-09-25 08:38:10 +02:00
Rémi Verschelde
39be6695d1
Merge pull request #66295 from bruvzg/win_fix_wm_char_keysym
...
[Windows] Fix WM_CHAR processing code using Unicode char instead of Virtual key.
2022-09-24 22:59:44 +02:00
bruvzg
b66931946b
[macOS] Process menu callback after event processing step to avoid event queue corruption.
2022-09-24 23:57:24 +03:00
Rémi Verschelde
26e9145c26
SCons: Cleanup DEBUG
, _DEBUG
and NDEBUG
defines
...
- `_DEBUG` is MSVC specific so it didn't make much sense to define for
Android and iOS builds.
- iOS was the only platform to define `DEBUG`. We don't use it anywhere
outside thirdparty code, which we usually don't intend to debug, so it
seems better to be consistent with other platforms.
- Consistently define `NDEBUG` to disable assert behavior in both `release`
and `release_debug` targets. This used to be set for `release` for all
platforms, and `release_debug` for Android and iOS only.
- Due to the above, I removed the only use we made of `assert()` in Godot
code, which was only implemented for Unix anyway, should have been
`DEV_ENABLED`, and is in PoolAllocator which we don't actually use.
- The denoise and recast modules keep defining `NDEBUG` even for the `debug`
target as we don't want OIDN and Embree asserting all over the place.
2022-09-23 15:21:26 +02:00
Rémi Verschelde
c5c3d13dc0
SCons: Remove redundant -fomit-frame-pointer
and -ftree-vectorize
...
- `-fomit-frame-pointer` is included automatically by both GCC and
Clang in `-O1` and above.
- `-ftree-vectorize` is included automatically by GCC in `-O2` and
beyond, and seems always enabled by Clang.
Closes #66296 . See that issue for a detailed investigation.
2022-09-23 13:56:16 +02:00
bruvzg
54adfb6dfd
[Windows] Fix WM_CHAR processing code using Unicode char instead of Virtual key.
2022-09-23 14:16:16 +03:00
bruvzg
0dab11afa4
[macOS extend-to-title] Add scene/project name to the editor title, fix incorrect window button position/order when system primary language is RTL.
2022-09-22 23:09:56 +03:00
Rémi Verschelde
0b06f8b0bd
Merge pull request #65816 from bruvzg/proj_settings_missing_flags
...
Add missing initial window flags and window mode to the project settings.
2022-09-21 18:56:31 +02:00
bruvzg
cdfa50dbe9
[macOS] Improve "extended to title" transition to / from fullscreen.
2022-09-21 11:21:48 +03:00
bruvzg
0ed4cc6287
[macOS] Add an option to align window buttons in "extend to title" mode.
2022-09-20 12:55:59 +03:00
Rémi Verschelde
aa553f4030
Merge pull request #65745 from akien-mga/scons-production-lto-earlier
...
Refactor handling of `production` flag and per-platform LTO defaults
2022-09-20 09:45:33 +02:00
Rémi Verschelde
7da532275b
Merge pull request #65541 from clayjohn/renderer-setting
...
Split rendering driver project setting into renderer_name and rendering_driver
2022-09-20 09:43:59 +02:00