simplify the way window is allowed to steal focus, no longer relying on project.godot. Closes #9459
(cherry picked from commit 533014b88c
)
This commit is contained in:
parent
a6b160660c
commit
e8fb68e038
|
@ -130,8 +130,6 @@ void ScriptDebuggerRemote::debug(ScriptLanguage *p_script, bool p_can_continue)
|
||||||
ERR_FAIL();
|
ERR_FAIL();
|
||||||
}
|
}
|
||||||
|
|
||||||
OS::get_singleton()->enable_for_stealing_focus(Globals::get_singleton()->get("editor_pid"));
|
|
||||||
|
|
||||||
packet_peer_stream->put_var("debug_enter");
|
packet_peer_stream->put_var("debug_enter");
|
||||||
packet_peer_stream->put_var(2);
|
packet_peer_stream->put_var(2);
|
||||||
packet_peer_stream->put_var(p_can_continue);
|
packet_peer_stream->put_var(p_can_continue);
|
||||||
|
|
|
@ -53,8 +53,8 @@ Error EditorRun::run(const String &p_scene, const String p_custom_args, const Li
|
||||||
args.push_back(remote_host + ":" + String::num(remote_port));
|
args.push_back(remote_host + ":" + String::num(remote_port));
|
||||||
}
|
}
|
||||||
|
|
||||||
args.push_back("-epid");
|
args.push_back("-allow_focus_steal_pid");
|
||||||
args.push_back(String::num(OS::get_singleton()->get_process_ID()));
|
args.push_back(itos(OS::get_singleton()->get_process_ID()));
|
||||||
|
|
||||||
if (debug_collisions) {
|
if (debug_collisions) {
|
||||||
args.push_back("-debugcol");
|
args.push_back("-debugcol");
|
||||||
|
|
|
@ -110,6 +110,8 @@ static int init_screen = -1;
|
||||||
static bool use_vsync = true;
|
static bool use_vsync = true;
|
||||||
static bool editor = false;
|
static bool editor = false;
|
||||||
|
|
||||||
|
static OS::ProcessID allow_focus_steal_pid = 0;
|
||||||
|
|
||||||
static String unescape_cmdline(const String &p_str) {
|
static String unescape_cmdline(const String &p_str) {
|
||||||
|
|
||||||
return p_str.replace("%20", " ");
|
return p_str.replace("%20", " ");
|
||||||
|
@ -527,11 +529,10 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
||||||
} else {
|
} else {
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
} else if (I->get() == "-epid") {
|
} else if (I->get() == "-allow_focus_steal_pid") {
|
||||||
if (I->next()) {
|
if (I->next()) {
|
||||||
|
|
||||||
int editor_pid = I->next()->get().to_int();
|
allow_focus_steal_pid = I->next()->get().to_int64();
|
||||||
Globals::get_singleton()->set("editor_pid", editor_pid);
|
|
||||||
N = I->next()->next();
|
N = I->next()->next();
|
||||||
} else {
|
} else {
|
||||||
goto error;
|
goto error;
|
||||||
|
@ -958,6 +959,10 @@ Error Main::setup2() {
|
||||||
EditorNode::register_editor_types();
|
EditorNode::register_editor_types();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (allow_focus_steal_pid) {
|
||||||
|
OS::get_singleton()->enable_for_stealing_focus(allow_focus_steal_pid);
|
||||||
|
}
|
||||||
|
|
||||||
MAIN_PRINT("Main: Load Scripts, Modules, Drivers");
|
MAIN_PRINT("Main: Load Scripts, Modules, Drivers");
|
||||||
|
|
||||||
register_module_types();
|
register_module_types();
|
||||||
|
|
Loading…
Reference in New Issue