134 Commits

Author SHA1 Message Date
Hugo Locurcio
1304b85c63
Add a welcome dialog to the HTML5 editor
This modal dialog displayed when the page is loaded. It can be
dismissed permanently by clicking the "OK, don't show again" button.
Clicking outside the modal will only dismiss it once.

This dialog is used to remind people that the HTML5 editor is still in
release candidate stage and isn't considered production-ready yet.

(cherry picked from commit 8b0814689423857efd05f1b2c2f16973202cfe1b)
2021-04-20 20:12:52 +02:00
Rémi Verschelde
1d20bba0c4
HTML5: Fix link to documentation on editor template 2021-03-30 11:47:43 +02:00
Hugo Locurcio
4126d27468
Add Open Graph metadata to the HTML5 editor
- Consistently use double quotes in the HTML markup.
- Define English language to assist screen readers and search engines.
- Add missing `alt` text for the logo image.
- Remove duplicate `id` for the preload project ZIP input.

(cherry picked from commit 197d391f084f669362316e87f66f2c79ef4178bf)
2021-03-26 13:47:53 +01:00
Rémi Verschelde
015973df04
doc: Make all tutorial links point to 3.3 branch of docs 2021-03-26 10:43:43 +01:00
Fabio Alessandrelli
193233e893
[HTML5] Clarify editor PWA manifest.json
Update name and description to clarify it's the web version.

(cherry picked from commit ecb792b1da1af1ba0eac47bc4d04f78ee2ffb477)
2021-03-24 11:53:08 +01:00
Fabio Alessandrelli
3ed72c3ef4
[HTML5] Fix bogus Web Editor manifest.
The `start_url` in the PWA manifest.json must be relative for it to
work in subfolders (like in the official Web Editor page).

(cherry picked from commit 85c1a41021b3006f556ede209055c30e976beae1)
2021-03-17 17:08:23 +01:00
Rémi Verschelde
0341251d0f
Bump version to 3.3-rc
We decided to rename the upcoming 3.2.4 release to 3.3 to better reflect that
it is a significant feature release, and not a maintenance update.

The `3.2` branch was also renamed to `3.x` and will now be the development
branch for future 3.x releases (3.3, 3.4, etc.).
2021-03-16 12:16:36 +01:00
Fabio Alessandrelli
64feaed39b [HTML5] Drag and drop zip in project manager.
With a very nice hack, a new hidden configuration option that delays
dropped files removal at exit.

This still leaks while the project manager is running, but will clear
memory as soon as it exits or load something.
(reminder, dropped files are reguarly removed after the signal is
emitted specifically to avoid leaks, but I prefer hacking the HTML5
config then the project manager).

(cherry picked from commit f1e810adcbba6d10ac096bbe1f39650e28330094)
2021-03-12 10:43:52 +01:00
Fabio Alessandrelli
d942d553ef [HTML5] Add PWA support to the editor page.
This allows to install it as an app, and provide offline support (after
the first run).
Practically, this boils down to adding a JSON file as a manifest, an
offline page to be displayed when the cached files are not avaialble,
and a JS file to cache resources and return them.

The reason for the "first run requirements" is that some browsers, will
emit an "install" by just visiting the page (to see if the JS code is
compatibile), and we do not want to force casual visitors to just
download the 10 MiB+ compressed editor WebAssembly file without pressing
the start button.

Special thanks to Hugo Locurcio (Calinou) for the initial work.
2021-03-08 17:06:41 +01:00
Fabio Alessandrelli
e3664e971b [HTML5] Make editor HTML build tag scons4-proof.
We used to have it like `$GODOT_VERSION` which caused inconsistencies
between different scons versions when substituting it.
It's now `@GODOT_VERSION@`, which is safe on both scons3 and scons4.

(cherry picked from commit 4404eb57e447a5a177af86cfd7cf2607e682bf36)
2021-02-26 15:22:51 +01:00
Hugo Locurcio
3b4dd88e56 Improve the editor HTML template
- Darken the header tab background to match the default editor
  background color.
- Hide the distracting focus outlines for the editor and game canvas.
- Use a pure black background for the game canvas to better distinguish it
  from the editor and provide a more neutral background.
- Use a bold font weight for the Start Godot editor button on the
  loader page.
- Link to the web editor documentation on the loader page.
- Clarify what happens when clicking "OK" in the persistent data removal
  warning dialog.
- Tidy up the HTML template by removing obsolete attributes.

(cherry picked from commit 35277569433ebdaa4ab16a35a8280c33ca383a96)
2021-02-25 22:37:49 +01:00
Riteo Siuga
6d7b25b98a Improve the MIME source file
- Add MIME definitions for resources, scenes and scripts
- Remove the "weight" property, which defaults to 50, a much saner value than the previous 100, which was a bit excessive.
- Changes their icon names in order to follow the XDG icon naming conventions.

(cherry picked from commit 876e165a49640a664bd8e60e228140a75c17cf74)
2021-02-25 15:14:32 +01:00
Marcel Admiraal
95272e11c4 Remove unused variables from full-size.html
(cherry picked from commit 548edfc4fefb6abea3f60580641e153b992d0d1f)
2021-02-22 10:18:26 +01:00
Fabio Alessandrelli
45a67fab35 [HTML5] Better fullscreen, canvas resizing.
Three canvas resize policies:
- `None`: Godot window settings are ignored.
- `Project`: Godot handles the canvas like a native app (resizing it
  when setting the window size).
- `Adaptive`: Canvas size will always adapt to browser window size.

Use `None` if you want to control the canvas size with custom JavaScript
code.
2021-02-19 05:13:44 +01:00
Fabio Alessandrelli
1eef8a318b [HTML5] Easier HTML templates, better deinit/cleanup. 2021-02-19 05:13:44 +01:00
Danil Alexeev
1fa8595bff
Change logo in the About dialog box (return Godot's teeth)
(cherry picked from commit c553ca54d5de4c9ce9ebdf1c416985a56f20a9a7)

And fixup previous bogus cherry-pick that included merge conflicts.
2021-02-16 14:27:39 +01:00
Fabio Alessandrelli
5abe08f484
[HTML5] Editor: ensure canvas focus when switching tabs.
(cherry picked from commit b148ea2a64992c2b573229a08ead2242822210c4)
2021-02-11 13:17:08 +01:00
Fabio Alessandrelli
cd2a996d9e
[HTML5] Fix web editor "clear persistent data".
Was broken after update to new persistent path "/home/web_user".

(cherry picked from commit 7866cd5881a0e30dcc2ef64477e79bf8bcb69200)
2021-02-11 13:12:06 +01:00
Fabio Alessandrelli
2668ca7a8c [HTML5] Make home path persistent in editor.
We used to only persist specific sub-folder of /home/web_user/ when
running the Web Editor. This resulted in bad UX about default project
creation path etc.
This PR makes the whole folder persistent, move the zip preloading to a
different folder (to avoid persisting it), and automatically prompt the
user to import it if present.
2021-02-03 17:18:28 +01:00
Rémi Verschelde
c2ea80348c
Revert "[3.2] Add separate simulator flag for iOS build, change main library to xcframework." 2021-01-27 21:53:16 +01:00
Rémi Verschelde
9f2c24e8ce
Cleanup: Remove executable bit from files which don't need it
Drop unused xpmfix.sh script.

(cherry picked from commit 76c6007aa68dd92248cd514f0582b39477da1048)
2021-01-26 17:00:15 +01:00
bruvzg
389a4bfa59
[3.2] Add separate simulator flag for iOS build, change main library to xcframework format. 2021-01-26 16:00:26 +02:00
Fabio Alessandrelli
276b831c45 [HTML5] Better editor HTML, small refactor.
Side and GDNative libraries are now added by engine.js , the dynlink pre
js had been deleted.
2021-01-25 20:16:44 +01:00
Sergey Minakov
d5047603a3 iOS Export: export modification to support plugins
Added plugin configuration.
Export options now use plugins that could be enabled/disabled.
Plugin changes are observed at runtime.
2021-01-14 15:38:05 +03:00
Sergey Minakov
614f701373 iOS Modules: separate main platform code from modules
Moved previously builtin modules 'GameCenter', 'AppStore', 'iCloud' to separate modules to be represented as plugin.
Modified 'ARKit' and 'Camera' to not be builtin into engine and work as plugin.
Changed platform code so it's not affected by the move.
Modified Xcode project file to remove parameters that doesn't make any effect.
Added basic '.gdip' plugin config file.
2021-01-14 15:30:00 +03:00
Hugo Locurcio
49c2f2fec2
Make links on the HTML5 editor more readable
This also tweaks the focus style to apply to all elements for
better keyboard navigation.

(cherry picked from commit 663466b88261d46dc91e8a0b84b48eba8f0a5fbe)
2021-01-13 16:17:08 +01:00
Rémi Verschelde
49646383f1
Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆

(cherry picked from commit b5334d14f7a471f94bcbd64d5bae2ad853d0b7f1)
2021-01-13 16:17:06 +01:00
Hugo Locurcio
3db7ff3d82
Fix and decrease Godot logo size in the HTML5 editor loader
The logo can no longer overflow the viewport.

(cherry picked from commit d80224934e01f19573852a50ae50d5f12ff04799)
2020-12-29 16:02:02 +01:00
Lorenzo Cerqua
70af74587a
Remove two very slightly displaced duplicate vertices on Gobot's face
They didn't show up at all in the rendered PNG, but were pretty annoying when working with Gobot face on Inkscape

(cherry picked from commit 17b9cb2cdf251b84ad43554d0cdb064aca200a32)
2020-12-29 13:54:08 +01:00
Fabio Alessandrelli
6936ac9d5d [HTML5] Add logo and favicon to editor html. 2020-12-09 18:09:30 +01:00
Hugo Locurcio
295b16dcf2 [HTML5] Improve the editor HTML template. 2020-12-09 15:35:17 +01:00
Fabio Alessandrelli
b4b1df613e [HTML5] Editor also persists cache. 2020-12-09 13:47:23 +01:00
Fabio Alessandrelli
4ad95cc039 [HTML5] EditorRunNative works with GDNative.
This "breaks" our loading bar logic (libraries are not counted).
Fixing it is non trivial and probably deserves investigating a different
strategy.
2020-12-05 01:00:29 +01:00
Marcel Admiraal
e1b72e1943
Add missing javascript semi-colons.
(cherry picked from commit f42284ed0721ad3a5dd1d2e8bb70f2ae3733ddde)
2020-11-17 22:25:32 +01:00
Hugo Locurcio
312d4aa390
Add files to create a Windows editor installer using Inno Setup
This partially addresses
https://github.com/godotengine/godot-proposals/issues/1432.

To fully address the proposal above, official Windows installers will
have to be compiled and distributed.

(cherry picked from commit 8baa303d1511d50066bf9d216b5cf3d930967c83)
2020-11-17 12:01:59 +01:00
Fabio Alessandrelli
294e9752bd Add JavaScript editor html file. 2020-10-14 11:20:20 +02:00
Rémi Verschelde
7ef6aa7342
Merge pull request #42266 from Faless/js/3.0_sync_fs_size_handlers
[3.2] [HTML5] Synchronous main, better persistence, handlers fixes, optional full screen.
2020-10-02 16:23:35 +02:00
Sergey Minakov
3386fac02c iOS: fix deprecations
Change deprecated method calls to new ones.
Guard iOS version dependant functionality behind availability checks.
2020-10-01 18:09:55 +03:00
Fabio Alessandrelli
e7d00d08f5 Make canvas resize optional in HTML5. 2020-09-19 18:27:21 +02:00
Fabio Alessandrelli
40f73f74ce Better HiDPI support in HTML5. 2020-09-19 18:27:21 +02:00
Rémi Verschelde
2d52da7b8f
Bump version to 3.2.4-beta 2020-09-18 08:28:18 +02:00
Hazar
a430f68364
fix GDScript UTI
changed from public.data to public.script

(cherry picked from commit 5e5100afca4822ec30af5ac1773563641bbcff77)
2020-08-21 02:28:18 +02:00
Hugo Locurcio
c2d7d81ac8 Fix inconsistent indentation in the FreeDesktop MIME type XML
(cherry picked from commit 4dc6efc08ec816b3ef2a4966ec78484aabcb0ce5)
2020-08-14 00:32:04 +02:00
Rémi Verschelde
b40f3f9740 Style: Sync other changes from new fix_style.sh and clang_format.sh 2020-07-24 10:39:18 +02:00
Rémi Verschelde
eda03831d6 Style: Add missing newlines to SVGs 2020-07-24 10:39:18 +02:00
Sergey Minakov
46c6383c8d iOS Export: add option to use storyboard for launch screen 2020-07-07 00:01:35 +03:00
Sergey Minakov
e2a45fe840 iOS Export: Updated Info.plist. Framework embedding. Fixes for search paths 2020-07-02 12:46:57 +03:00
bruvzg
43888ebfaf
[macOS, 3.2] Add support for the Apple Silicon (ARM64) build target. 2020-06-29 14:43:29 +03:00
Rémi Verschelde
11bb4ef4c3 Bump version to 3.2.3-beta 2020-06-26 20:48:27 +02:00
Sergey Minakov
e564ca0c1b Export: Fix iOS enabling push notifications capability 2020-06-22 23:16:22 +03:00