-
-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
反馈:指示器行为 #15
Comments
对于“当前活动窗口”的范围可以进一步缩小到“当前操作的输入框”的话,暂时不了解输入框相关API,不太清楚是否存在以及是否可以实现,后续有时间研究。
如果按照您说的想法,将选项包含所有已经添加的输入法和布局,而且我认为这种情况下得是多选的形式,如果这样操作起来有些麻烦,似乎不够智能;而且现在IBus的GJS接口似乎只提供了获取输入法引擎的方法,未提供获取输入法内部输入状态的方法,所以您的想法目前来看无法实现。 目前的话程序逻辑是只要是输入指针发生了移动(监听 IBus "set-cursor-location" 事件)时就会进行判断,如果当输入法面板打开时指示器就会关闭。您说的这种情况唯一的可能性就是您所述的程序在输入时没触发 IBus "set-cursor-location" 事件,这可能涉及到上游问题了。 |
对于2,我注意到只要当托盘图标中显示的字符只是菜单中输入法列表每项右侧的字符时,一般都是单模式输入法 |
and a show delay for input source indicator. #15 Signed-off-by: Hollow Man <hollowman@hollowman.ml>
using single mode IME. #15 Signed-off-by: Hollow Man <hollowman@hollowman.ml>
抱歉,对于1之前的承诺,因为我注意到在切换窗口调用_onWindowChanged()时,似乎可能是因为程序之间焦点的变化,即使强制调用显示指示框,还是会出现不稳定的情况,即指示器有时候会显示,有时候不显示,或者一闪而过。所以v76版只增加了启用指示器自动显示时延的功能,这个功能没添加。 对于2之前的承诺:#15 (comment) 自动维护对应单模式输入法的托盘指示字符,用于使用键盘布局时不提示,并增加相应功能开启选项。 |
第1点,添加的“启用指示器自动显示时延”不好用。原本问题是,没有接换输入法、没有切换窗口时,同个指示状态不要频繁显示。但添加的这个延迟,会屏蔽掉延时期间指示状态发生变化的情况。个人认为这个选项没有解决问题,也没有其他使用场景,不应该添加进去。 |
您说的 之前所说的切换窗口时指示遇到了一些技术问题,如果可能的话会尽量解决。 |
原来您说的是这个,这个的话我觉得有一种可能就是在gedit下输入法面板关闭的时候没有触发"set-cursor-location"事件,但是这种可能性比较低。 更有可能的原因就应该是同这里了 #15 (comment) |
这是正确表现的话,那反而 gedit 是表现正常的(我测试了 gnome-web 也是这个正常行为),我测试的其他程序:firefox、telegram-desktop、gnome-terminal、nautilus……就表现不正常,输入法模块不一致吗? |
不好意思,之前忽略了输入完成中文指示继续弹出的情况,理解有误。gedit应该是不正确的。 gedit不正确表现猜想刚刚已经回复: #15 (comment) |
嗯,大家输入习惯和环境不同,很容易忽略一些情况。 |
那今晚先这样了,我得去睡觉了,时间不早了,还有问题的话明天早上起床后回复。😀 |
不影响,我并不使用那个英文选项。我默认输入英文(使用键盘布局)而不是使用中文输入法。
Hollow Man ***@***.***> 于 2021年10月31日周日 13:26写道:
… [image: Peek 2021-10-31 12-28]
<https://user-images.githubusercontent.com/43995067/139568562-3f482811-bba1-4ef8-8591-946fdff524a9.gif>
v77 切换窗口和ibus engine时做到了立刻显示指示器,但是我注意到目前对于切换窗口立刻显示有一些小问题,但是没有太多影响使用:
1. 当从其他窗口切换到gedit有的时候不会显示指示器,这应该和之前输入完成在gedit上中文指示不能继续弹出的情况类似。
2. 再从1的情形切换到其他窗口(有可能,无法一直复现),输入字符时可能会有一次不遵循延迟出现,后面才会继续正常遵循延迟出现。
另外我还测试了在gedit下指示器出现那种情况是否因为是失去焦点关闭了,结果发现似乎与指示器失去焦点关闭无关,那应该是gedit或者ibus或者输入法的问题了,应该还是在gedit下输入法面板关闭的时候没有触发"set-cursor-location"事件,而没有触发的原因也可能是ibus与gedit焦点争夺的问题,当然以上只是推测,我并非gedit开发者,也有可能是其他原因。
另外之前忘说了,我决定不将zh加入英文输入法的托盘指示字符,因为zh也可以是注音输入(zhuyin(m17n)),这时候输入的并非英文。
如果您希望在您的输入习惯下正确定义英文输入,建议将zh替换为en(英语(美国))键盘布局来达到目的,谢谢!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#15 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABSBPV2YWMUIATIDRUHOAS3UJTHSDANCNFSM5HABH4NA>
.
|
…showing delay is enabled Signed-off-by: Hollow Man <hollowman@hollowman.ml>
我的想法是,如果光标焦点一直存在于当前活动窗口内,在未切换输入法时就不要继续弹出指示器,或者设定一个弹出静默期。如果更细致的话,“当前活动窗口”的范围可以进一步缩小到“当前操作的输入框”。
“仅当输入英文时指示”这个选项,我使用 zh 键盘布局(无输入法)打字时不会定义为英文输入,我想 CJK 的键盘布局在不使用输入法时输入的都是英文。而且限定在英文的选项用途不够广泛,可以的话把英文改成可选项,选项包含所有已经添加的输入法和布局。
指示器在 gedit 上的表现跟其他程序上的不同。如果输入法已经切换到中文(ibus-libpinyin)上,在其他程序上打字会一直弹出指示器,在 gedit 上打字就不会弹出。
The text was updated successfully, but these errors were encountered: