-
-
Notifications
You must be signed in to change notification settings - Fork 378
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
fix: shift + arrow keys not working to select text #1545
base: develop
Are you sure you want to change the base?
Conversation
app/src/main/java/com/osfans/trime/ime/core/TrimeInputMethodService.kt
Outdated
Show resolved
Hide resolved
反馈一下patch测试情况,供参考:
|
@if-can 结合这个问题可能还麻烦你之后测一下调整 |
感谢测试反馈,我尝试复现你所描述的问题,但并未遇见 Shift 锁定下使用 Ctrl + Home/End 键无法选择文本的情况。无论是使用预设的组合键,还是通过“编辑键盘”进行单独按键点击,都能正常工作。 从理论上讲,如果预设的组合键能够正常处理,那么单独按键点击也应该不会出现问题,因为这两者的按键事件都是通过 因此,我推测问题可能出在你的源代码中。 我查看了你的主页,和我想的一样,你有对同文进行 Fork 并增加了自己的特色,因此似乎并没有与上游同步。 (如果你不是直接 Clone 我的仓库进行编译测试,那问题大概就出在你的源码上了) 我并知晓你的本地情况,请提供更多的信息。 例如,预设键的具体配置、复现问题的步骤等。 |
我编译是使用的1.4号的官方develop分支代码,再手工加上patch修订,没有改其它地方。 edit: Shift1: {functional: false, label: ☩, preview: ☩, send: Shift_L, shift_lock: click} |
340c002
to
7c75077
Compare
…h the current keyboard's modifier state
题外话:没做好备份,本地仓库被我弄坏了……回滚了但没用,就只好重新拉取最新分支来重新提交了,因此多了几条强制推送的记录。 该问题源于历史遗留的设计缺陷,具体原因在于组合键的修饰状态没有与当前键盘的修饰状态进行合并。 在发送单个按键时,会使用当前键盘的修饰标志状态。 但在发送组合键时,仅会应用该组合键本身的修饰标志状态。 这种设计确保了组合键能够正常生效,但没有考虑到当前键盘的修饰标志状态。 因此,即使键盘视图显示 Shift 键已被按下并锁定,但在发送组合键时,仍然不会拥有 Shift 修饰状态,除非该组合键本身已经包含 Shift 键。 |
Pull request
Issue tracker
Fixes will automatically close the related issues
Fixes #1521
Feature
Describe features of this pull request
Code of conduct
Code style
make sytle-lint
Build pass
make debug
Manually test
Code Review
Daily build
Login and download artifact at https://github.com/osfans/trime/actions
Additional Info