summaryrefslogtreecommitdiff
path: root/platform/web
AgeCommit message (Collapse)Author
2023-04-26Fix crash caused by invalid mix_rate assignment due to bogusEoin O'Neill
project settings. We'll default to a sensible value in the case that a user has somehow managed to modify the configuration file incorrectly. Closes 69819 (cherry picked from commit 5a08091168782a924cd3a23baf31c5cd4cd63906)
2023-04-07[Web] Fix keycode/physical keycode mixed up.bruvzg
(cherry picked from commit 744bf604bf48c853f927154da5f2243fa9709dd3)
2023-03-27Fix "Download Project Source" for Web Editorator-dev
- Correctly pass safe project name and safe datetime to `vformat` (cherry picked from commit dfb405b702b61cb3a8656f53eb85016608621b57)
2023-03-13[Web] Fix some missing keycode mappings.bruvzg
(cherry picked from commit 0b0587af9775dc5e6fe5707f99634f280e22f4c7)
2023-02-17Fix crash with bogus shape index to DisplayServer.cursor_set_custom_image()Rémi Verschelde
Fixes #66605.
2023-02-14[InputEventKey] Avoid setting both key and modifier to the same value.bruvzg
2023-02-09Further refactoring to AudioDriver implementations after #69120.Emmanouil Papadeas
- Rename all instances of `capture_start()` and `capture_end()` to their new names. Fixes #72892. - More internal renames to match what was started in #69120. - Use `override` consistently so that such refactoring bugs can be caught. - Harmonize the order of definition of the overridden virtual methods in each audio driver. - Harmonize prototype for `set_output_device` and `set_input_device`. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-01-28[Net] Remove StreamPeerTLS.blocking_handshake option.Fabio Alessandrelli
Which was unused internally, and can be replaced by: ``` while tls.get_status() == tls.STATUS_HANDSHAKING: tls.poll() ```
2023-01-28[NET] Refactor TLS configuration.Fabio Alessandrelli
Use a TLSOptions configuration object which is created via static functions. - "TLSOptions.client": uses the standard CA and common name verification. - "TLSOptions.client_unsafe": uses optional CA verification (i.e. if specified) - "TLSOptions.server": is the standard server configuration (chain + key) This will allow us to expand the TLS configuration options to include e.g. mutual authentication without bloating the classes that uses StreamPeerTLS and PacketPeerDTLS as underlying peers.
2023-01-23Cleanup and unify keyboard input.bruvzg
- Unify keycode values (secondary label printed on a key), remove unused hardcoded Latin-1 codes. - Unify IME behaviour, add inline composition string display on Windows and X11. - Add key_label (localized label printed on a key) value to the key events, and allow mapping actions to the unshifted Unicode events. - Add support for physical keyboard (Bluetooth or Sidecar) handling on iOS. - Add support for media key handling on macOS. Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-01-20Web Editor: Fix callable binding for Download Zip menu itemRémi Verschelde
Fixes #71702.
2023-01-18[Web] User FS (user://) now correctly uses project name.Fabio Alessandrelli
This allows multiple instances to co-exist in the same domain while keeping their user data separate (each in its own folder).
2023-01-17Improve DisplayServer message for video card drivers failureRémi Verschelde
And remove leftover duplicated message on Android.
2023-01-14Update all outdated online documentation linksYuri Sizov
2023-01-13Merge pull request #71325 from reduz/refactor-project-setting-overridesRémi Verschelde
Refactor ProjectSetting overrides
2023-01-13Merge pull request #63312 from bruvzg/one_clickRémi Verschelde
[Export] Add one-click deploy over SSH for the desktop exports.
2023-01-13Refactor ProjectSetting overridesJuan Linietsky
* Overrides no longer happen for set/get. * They must be checked with a new function: `ProjectSettings::get_setting_with_override()`. * GLOBAL_DEF/GLOBAL_GET updated to use this This change solves many problems: * General confusion about getting the actual or overriden setting. * Feature tags available after settings are loaded were being ignored, they are now considered. * Hacks required for the Project Settings editor to work. Fixes #64100. Fixes #64014. Fixes #61908.
2023-01-09Merge pull request #70626 from Faless/web/4.x_expose_force_fs_syncFabio Alessandrelli
[Web] Expose API to force file system sync.
2023-01-09Bump json5 from 1.0.1 to 1.0.2 in /platform/webdependabot[bot]
Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2. - [Release notes](https://github.com/json5/json5/releases) - [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md) - [Commits](https://github.com/json5/json5/compare/v1.0.1...v1.0.2) --- updated-dependencies: - dependency-name: json5 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
2023-01-08Use BitField<> in core type masksJuan Linietsky
* All core types masks are now correctly marked as bitfields. * The enum hacks in MouseButtonMask and many other types are gone. This ensures that binders to other languages non C++ can actually implement type safe bitmasks. * Most bitmask operations replaced by functions in BitField<> * Key is still a problem because its enum and mask at the same time. While it kind of works in C++, this most likely can't be implemented safely in other languages and will have to be changed at some point. Mostly left as-is. * Documentation and API dump updated to reflect bitfields in core types.
2023-01-07Add support for the custom initial screen for the main window, fix primary ↵bruvzg
screen detection.
2023-01-05One Copyright Update to rule them allRémi Verschelde
As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
2022-12-29[Export] Add one-click deploy over SSH for the desktop exports.bruvzg
Add one-click deploy over SSH for the desktop exports. Add ZIP export option for Linux and Windows. Change export plugin icons to SVG format.
2022-12-27[Web] Expose API to force file system sync.Fabio Alessandrelli
Mostly useful for modules and extensions that can't use FileAccess to write files.
2022-12-12Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextensionRémi Verschelde
Rename all gdnative occurences to gdextension
2022-12-12Rename all gdnative occurences to gdextensionGilles Roudière
Non-exhaustive list of case-sensitive renames: GDExtension -> GDNative GDNATIVE -> GDEXTENSION gdextension -> gdnative ExtensionExtension ->Extension (for where there was GDNativeExtension) EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION) gdnlib -> gdextension gdn_interface -> gde_interface gdni -> gde_interface
2022-12-07Merge pull request #69712 from bruvzg/real_sizeRémi Verschelde
Rename `window_get_real_size`, add position counterpart.
2022-12-07Rename `window_get_real_size` to `window_get_size_with_decorations`, add ↵bruvzg
`window_get_position_with_decorations`.
2022-12-07Fix Determining Window for TouchscreenMarkus Sauermann
DisplayServer::screen_is_touchscreen will likely never utilize its parameter p_screen. This PR replaces this function by DisplayServer::is_touchscreen_available() with the same functionality. This solves the problem, that a SubViewport was used for determining the screen, which resulted in error messages.
2022-12-02Merge pull request #68870 from dsnopek/master-webxr-inputRémi Verschelde
Get WebXR fully working in Godot 4!
2022-12-01Get WebXR fully working in Godot 4!David Snopek
2022-11-28Merge pull request #67815 from Calinou/html5-improve-feature-errorsRémi Verschelde
Improve feature errors in HTML5 for easier understanding
2022-11-08Fix viewport doesn't auto-resize on Web.Zae
2022-11-05[Web] Force WebGL2 when supported.Fabio Alessandrelli
2022-11-05[Web] Improve Godot shutdown and cleanup.Fabio Alessandrelli
2022-11-02Style: Misc docs and comment style and language fixesRémi Verschelde
- 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-10-31CI: Update minimatch npm dependency to silence security reportRémi Verschelde
No risk for us as this is only used for static checks on CI.
2022-10-28Merge pull request #67790 from kdada/fix-flash-windowClay John
Make creating window do not flicker when specify custom position
2022-10-24Make window creation with custom position do not flashWei Guo
2022-10-23Improve feature errors in HTML5 for easier understandingHugo Locurcio
2022-10-21Add multiview to the opengl3 driverDavid Snopek
2022-10-13[WebSocket] Fix debugger implementation.Fabio Alessandrelli
Register module during core initialization so the remote debugger can properly handle the "wss://" protocol.
2022-10-12[Web] Add the "serve" and "run" scons targets.Fabio Alessandrelli
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-12Merge pull request #67252 from zaevi/web_fix_export_file_lockedRémi Verschelde
[Web] Fix file locked issue when exporting to Web.
2022-10-11[Web] Add auto-formatting to HTML files.Fabio Alessandrelli
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-11Fix file locked issue when exporting to Web.Zae
2022-10-10Fix Object type in GodotJSWrapper.Zae
2022-10-07Change auto to default in cursor css settings.Jason Knight
2022-10-05Merge pull request #64886 from Calinou/web-editor-add-local-web-server-2Rémi Verschelde
Replace local web server setup for web editor with a Python-based solution
2022-10-04Replace local web server setup for web editor with a Python-based solutionHugo Locurcio
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>