Disable logic that triggers automatic focus gain as the Godot Editor is loaded

For the Godot Android Editor, this is an inconvenience as it causes the soft keyboard to show and block half of the view
This commit is contained in:
Fredia Huya-Kouadio 2022-09-05 22:13:03 -07:00
parent b38ac3f09f
commit c875f23750
3 changed files with 8 additions and 0 deletions

View file

@ -584,10 +584,12 @@ void EditorAssetLibrary::_notification(int p_what) {
} break; } break;
case NOTIFICATION_VISIBILITY_CHANGED: { case NOTIFICATION_VISIBILITY_CHANGED: {
if (is_visible()) { if (is_visible()) {
#ifndef ANDROID_ENABLED
// Focus the search box automatically when switching to the Templates tab (in the Project Manager) // Focus the search box automatically when switching to the Templates tab (in the Project Manager)
// or switching to the AssetLib tab (in the editor). // or switching to the AssetLib tab (in the editor).
// The Project Manager's project filter box is automatically focused in the project manager code. // The Project Manager's project filter box is automatically focused in the project manager code.
filter->grab_focus(); filter->grab_focus();
#endif
if (initial_loading) { if (initial_loading) {
_repository_changed(0); // Update when shown for the first time. _repository_changed(0); // Update when shown for the first time.

View file

@ -469,7 +469,9 @@ void ScriptTextEditor::set_edit_state(const Variant &p_state) {
} }
if (editor_enabled) { if (editor_enabled) {
#ifndef ANDROID_ENABLED
ensure_focus(); ensure_focus();
#endif
} }
} }

View file

@ -1791,11 +1791,13 @@ void ProjectManager::_notification(int p_what) {
} }
} break; } break;
case NOTIFICATION_READY: { case NOTIFICATION_READY: {
#ifndef ANDROID_ENABLED
if (_project_list->get_project_count() >= 1) { if (_project_list->get_project_count() >= 1) {
// Focus on the search box immediately to allow the user // Focus on the search box immediately to allow the user
// to search without having to reach for their mouse // to search without having to reach for their mouse
project_filter->search_box->grab_focus(); project_filter->search_box->grab_focus();
} }
#endif
if (asset_library) { if (asset_library) {
// Suggest browsing asset library to get templates/demos. // Suggest browsing asset library to get templates/demos.
@ -2332,6 +2334,7 @@ void ProjectManager::_on_filter_option_changed() {
} }
void ProjectManager::_on_tab_changed(int p_tab) { void ProjectManager::_on_tab_changed(int p_tab) {
#ifndef ANDROID_ENABLED
if (p_tab == 0) { // Projects if (p_tab == 0) { // Projects
// Automatically grab focus when the user moves from the Templates tab // Automatically grab focus when the user moves from the Templates tab
// back to the Projects tab. // back to the Projects tab.
@ -2343,6 +2346,7 @@ void ProjectManager::_on_tab_changed(int p_tab) {
// The Templates tab's search field is focused on display in the asset // The Templates tab's search field is focused on display in the asset
// library editor plugin code. // library editor plugin code.
#endif
} }
void ProjectManager::_bind_methods() { void ProjectManager::_bind_methods() {