Skip to content

Commit bd598d5

Browse files
committed
Merge pull request #85678 from KoBeWi/editor_walktime
Add separate feature tags for editor runtime
2 parents 34a1287 + 3ebb5b8 commit bd598d5

File tree

7 files changed

+23
-4
lines changed

7 files changed

+23
-4
lines changed

core/config/project_settings.cpp

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1473,7 +1473,9 @@ ProjectSettings::ProjectSettings() {
14731473
GLOBAL_DEF(PropertyInfo(Variant::INT, "display/window/size/window_height_override", PROPERTY_HINT_RANGE, "0,4320,1,or_greater"), 0); // 8K resolution
14741474

14751475
GLOBAL_DEF("display/window/energy_saving/keep_screen_on", true);
1476-
GLOBAL_DEF("display/window/energy_saving/keep_screen_on.editor", false);
1476+
#ifdef TOOLS_ENABLED
1477+
GLOBAL_DEF("display/window/energy_saving/keep_screen_on.editor_hint", false);
1478+
#endif
14771479

14781480
GLOBAL_DEF("animation/warnings/check_invalid_track_paths", true);
14791481
GLOBAL_DEF("animation/warnings/check_angle_interpolation_type_conflicting", true);
@@ -1531,6 +1533,10 @@ ProjectSettings::ProjectSettings() {
15311533
GLOBAL_DEF_BASIC("internationalization/rendering/root_node_auto_translate", true);
15321534

15331535
GLOBAL_DEF(PropertyInfo(Variant::INT, "gui/timers/incremental_search_max_interval_msec", PROPERTY_HINT_RANGE, "0,10000,1,or_greater"), 2000);
1536+
GLOBAL_DEF(PropertyInfo(Variant::FLOAT, "gui/timers/tooltip_delay_sec", PROPERTY_HINT_RANGE, "0,5,0.01,or_greater"), 0.5);
1537+
#ifdef TOOLS_ENABLED
1538+
GLOBAL_DEF("gui/timers/tooltip_delay_sec.editor_hint", 0.5);
1539+
#endif
15341540

15351541
GLOBAL_DEF_BASIC("gui/common/snap_controls_to_pixels", true);
15361542
GLOBAL_DEF_BASIC("gui/fonts/dynamic_fonts/use_oversampling", true);

core/os/os.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,6 +398,11 @@ bool OS::has_feature(const String &p_feature) {
398398
if (p_feature == "editor") {
399399
return true;
400400
}
401+
if (p_feature == "editor_hint") {
402+
return _in_editor;
403+
} else if (p_feature == "editor_runtime") {
404+
return !_in_editor;
405+
}
401406
#else
402407
if (p_feature == "template") {
403408
return true;

core/os/os.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ class OS {
6363
bool _stdout_enabled = true;
6464
bool _stderr_enabled = true;
6565
bool _writing_movie = false;
66+
bool _in_editor = false;
6667

6768
CompositeLogger *_logger = nullptr;
6869

doc/classes/ProjectSettings.xml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,7 @@
254254
Path to an image used as the boot splash. If left empty, the default Godot Engine splash will be displayed instead.
255255
[b]Note:[/b] Only effective if [member application/boot_splash/show_image] is [code]true[/code].
256256
[b]Note:[/b] The only supported format is PNG. Using another image format will result in an error.
257+
[b]Note:[/b] The image will also show when opening the project in the editor. If you want to display the default splash image in the editor, add an empty override for [code]editor_hint[/code] feature.
257258
</member>
258259
<member name="application/boot_splash/minimum_display_time" type="int" setter="" getter="" default="0">
259260
Minimum boot splash display time (in milliseconds). It is not recommended to set too high values for this setting.
@@ -797,8 +798,8 @@
797798
<member name="display/window/energy_saving/keep_screen_on" type="bool" setter="" getter="" default="true">
798799
If [code]true[/code], keeps the screen on (even in case of inactivity), so the screensaver does not take over. Works on desktop and mobile platforms.
799800
</member>
800-
<member name="display/window/energy_saving/keep_screen_on.editor" type="bool" setter="" getter="" default="false">
801-
Editor-only override for [member display/window/energy_saving/keep_screen_on]. Does not affect exported projects in debug or release mode.
801+
<member name="display/window/energy_saving/keep_screen_on.editor_hint" type="bool" setter="" getter="" default="false">
802+
Editor-only override for [member display/window/energy_saving/keep_screen_on]. Does not affect running project.
802803
</member>
803804
<member name="display/window/handheld/orientation" type="int" setter="" getter="" default="0">
804805
The default screen orientation to use on mobile devices. See [enum DisplayServer.ScreenOrientation] for possible values.
@@ -1071,6 +1072,9 @@
10711072
<member name="gui/timers/tooltip_delay_sec" type="float" setter="" getter="" default="0.5">
10721073
Default delay for tooltips (in seconds).
10731074
</member>
1075+
<member name="gui/timers/tooltip_delay_sec.editor_hint" type="float" setter="" getter="" default="0.5">
1076+
Delay for tooltips in the editor.
1077+
</member>
10741078
<member name="input/ui_accept" type="Dictionary" setter="" getter="">
10751079
Default [InputEventAction] to confirm a focused button, menu or list item, or validate input.
10761080
[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are necessary for the internal logic of several [Control]s. The events assigned to the action can however be modified.

editor/project_settings_editor.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -287,6 +287,8 @@ void ProjectSettingsEditor::_add_feature_overrides() {
287287
presets.insert("s3tc");
288288
presets.insert("etc2");
289289
presets.insert("editor");
290+
presets.insert("editor_hint");
291+
presets.insert("editor_runtime");
290292
presets.insert("template_debug");
291293
presets.insert("template_release");
292294
presets.insert("debug");

main/main.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1746,6 +1746,7 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
17461746
}
17471747
}
17481748

1749+
OS::get_singleton()->_in_editor = editor;
17491750
if (globals->setup(project_path, main_pack, upwards, editor) == OK) {
17501751
#ifdef TOOLS_ENABLED
17511752
found_project = true;

scene/main/viewport.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4954,7 +4954,7 @@ Viewport::Viewport() {
49544954
unhandled_key_input_group = "_vp_unhandled_key_input" + id;
49554955

49564956
// Window tooltip.
4957-
gui.tooltip_delay = GLOBAL_DEF(PropertyInfo(Variant::FLOAT, "gui/timers/tooltip_delay_sec", PROPERTY_HINT_RANGE, "0,5,0.01,or_greater"), 0.5);
4957+
gui.tooltip_delay = GLOBAL_GET("gui/timers/tooltip_delay_sec");
49584958

49594959
#ifndef _3D_DISABLED
49604960
set_scaling_3d_mode((Viewport::Scaling3DMode)(int)GLOBAL_GET("rendering/scaling_3d/mode"));

0 commit comments

Comments
 (0)