You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-12-05 17:15:09 +00:00
Fix HTML5 feature tags
'HTML5' is the platform tag, the 'JavaScript' tag indicates availability of the JavaScript.eval singleton. Also report texture compression support.
This commit is contained in:
@@ -71,7 +71,7 @@ public:
|
|||||||
virtual void get_platform_features(List<String> *r_features) {
|
virtual void get_platform_features(List<String> *r_features) {
|
||||||
|
|
||||||
r_features->push_back("web");
|
r_features->push_back("web");
|
||||||
r_features->push_back("JavaScript");
|
r_features->push_back(get_os_name());
|
||||||
}
|
}
|
||||||
|
|
||||||
EditorExportPlatformJavaScript();
|
EditorExportPlatformJavaScript();
|
||||||
@@ -130,7 +130,7 @@ String EditorExportPlatformJavaScript::get_name() const {
|
|||||||
|
|
||||||
String EditorExportPlatformJavaScript::get_os_name() const {
|
String EditorExportPlatformJavaScript::get_os_name() const {
|
||||||
|
|
||||||
return "JavaScript";
|
return "HTML5";
|
||||||
}
|
}
|
||||||
|
|
||||||
Ref<Texture> EditorExportPlatformJavaScript::get_logo() const {
|
Ref<Texture> EditorExportPlatformJavaScript::get_logo() const {
|
||||||
|
|||||||
@@ -81,12 +81,6 @@ void OS_JavaScript::initialize_core() {
|
|||||||
FileAccess::make_default<FileAccessBufferedFA<FileAccessUnix> >(FileAccess::ACCESS_RESOURCES);
|
FileAccess::make_default<FileAccessBufferedFA<FileAccessUnix> >(FileAccess::ACCESS_RESOURCES);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OS_JavaScript::set_opengl_extensions(const char *p_gl_extensions) {
|
|
||||||
|
|
||||||
ERR_FAIL_COND(!p_gl_extensions);
|
|
||||||
gl_extensions = p_gl_extensions;
|
|
||||||
}
|
|
||||||
|
|
||||||
static EM_BOOL _browser_resize_callback(int event_type, const EmscriptenUiEvent *ui_event, void *user_data) {
|
static EM_BOOL _browser_resize_callback(int event_type, const EmscriptenUiEvent *ui_event, void *user_data) {
|
||||||
|
|
||||||
ERR_FAIL_COND_V(event_type != EMSCRIPTEN_EVENT_RESIZE, false);
|
ERR_FAIL_COND_V(event_type != EMSCRIPTEN_EVENT_RESIZE, false);
|
||||||
@@ -975,7 +969,25 @@ int OS_JavaScript::get_power_percent_left() {
|
|||||||
|
|
||||||
bool OS_JavaScript::_check_internal_feature_support(const String &p_feature) {
|
bool OS_JavaScript::_check_internal_feature_support(const String &p_feature) {
|
||||||
|
|
||||||
return p_feature == "web" || p_feature == "s3tc"; // TODO check for these features really being available
|
if (p_feature == "HTML5" || p_feature == "web")
|
||||||
|
return true;
|
||||||
|
|
||||||
|
#ifdef JAVASCRIPT_EVAL_ENABLED
|
||||||
|
if (p_feature == "JavaScript")
|
||||||
|
return true;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
EMSCRIPTEN_WEBGL_CONTEXT_HANDLE ctx = emscripten_webgl_get_current_context();
|
||||||
|
// all extensions are already automatically enabled, this function allows
|
||||||
|
// checking WebGL extension support without inline JavaScript
|
||||||
|
if (p_feature == "s3tc" && emscripten_webgl_enable_extension(ctx, "WEBGL_compressed_texture_s3tc_srgb"))
|
||||||
|
return true;
|
||||||
|
if (p_feature == "etc" && emscripten_webgl_enable_extension(ctx, "WEBGL_compressed_texture_etc1"))
|
||||||
|
return true;
|
||||||
|
if (p_feature == "etc2" && emscripten_webgl_enable_extension(ctx, "WEBGL_compressed_texture_etc"))
|
||||||
|
return true;
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void OS_JavaScript::set_idbfs_available(bool p_idbfs_available) {
|
void OS_JavaScript::set_idbfs_available(bool p_idbfs_available) {
|
||||||
@@ -992,7 +1004,6 @@ OS_JavaScript::OS_JavaScript(const char *p_execpath, GetUserDataDirFunc p_get_us
|
|||||||
|
|
||||||
set_cmdline(p_execpath, get_cmdline_args());
|
set_cmdline(p_execpath, get_cmdline_args());
|
||||||
main_loop = NULL;
|
main_loop = NULL;
|
||||||
gl_extensions = NULL;
|
|
||||||
window_maximized = false;
|
window_maximized = false;
|
||||||
soft_fs_enabled = false;
|
soft_fs_enabled = false;
|
||||||
canvas_size_adjustment_requested = false;
|
canvas_size_adjustment_requested = false;
|
||||||
|
|||||||
@@ -52,7 +52,6 @@ class OS_JavaScript : public OS_Unix {
|
|||||||
|
|
||||||
VisualServer *visual_server;
|
VisualServer *visual_server;
|
||||||
AudioDriverJavaScript audio_driver_javascript;
|
AudioDriverJavaScript audio_driver_javascript;
|
||||||
const char *gl_extensions;
|
|
||||||
|
|
||||||
InputDefault *input;
|
InputDefault *input;
|
||||||
Vector2 windowed_size;
|
Vector2 windowed_size;
|
||||||
@@ -139,8 +138,6 @@ public:
|
|||||||
|
|
||||||
virtual bool has_touchscreen_ui_hint() const;
|
virtual bool has_touchscreen_ui_hint() const;
|
||||||
|
|
||||||
void set_opengl_extensions(const char *p_gl_extensions);
|
|
||||||
|
|
||||||
virtual Error shell_open(String p_uri);
|
virtual Error shell_open(String p_uri);
|
||||||
virtual String get_user_data_dir() const;
|
virtual String get_user_data_dir() const;
|
||||||
String get_executable_path() const;
|
String get_executable_path() const;
|
||||||
|
|||||||
Reference in New Issue
Block a user