1 Star 0 Fork 8

wenlongd/gtk4

forked from src-openEuler/gtk4 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
0001-focus-fall-back-to-old-behaviour-if-we-didn-t-focus-.patch 1.17 KB
一键复制 编辑 原始数据 按行查看 历史
wenlongd 提交于 2023-02-01 15:53 . Update to 4.9.1
From e07f8ef50657dab0d5184d4c6927acc0683bc07d Mon Sep 17 00:00:00 2001
From: Adam Williamson <awilliam@redhat.com>
Date: Tue, 1 Nov 2022 17:26:29 -0700
Subject: [PATCH] focus: fall back to old behaviour if we didn't focus anything
8455b9ac74 seems to have introduced a problem where we can wind
up focusing no widget at all if the `while (parent)` loop doesn't
find a widget it can successfully move the focus to. This 'fixes'
that by falling back to doing the previous thing if we make it
all the way through that loop without moving the focus. Thanks to
@coreyberla for a hint to improve the implementation.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
---
gtk/gtkwindow.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index a7cbde18bc..21dfb49880 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -4703,6 +4703,9 @@ maybe_unset_focus_and_default (GtkWindow *window)
parent = _gtk_widget_get_parent (parent);
}
+ if (!parent)
+ gtk_widget_child_focus (GTK_WIDGET (window), GTK_DIR_TAB_FORWARD);
+
priv->move_focus = FALSE;
g_clear_object (&priv->move_focus_widget);
}
--
2.38.1
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/dwl301/gtk4.git
git@gitee.com:dwl301/gtk4.git
dwl301
gtk4
gtk4
master

搜索帮助

D67c1975 1850385 1daf7b77 1850385