Open Wenti-D opened 8 months ago
液态键盘高度为0,这个bug确实是有的
Additional context 顺便问问,这不 3.2.18 的测试版吗,怎么构建出来的版本有时还挂着 3.2.17 呢?
构建出来的版本 3.2.17
可能是因为你clone后编译,可以检查git tag。
构建出来的版本
3.2.17
可能是因为你clone后编译,可以检查git tag。
好了,现在成 nightly 了。
現在 liquid keyboard 會將高度設定為 keyboard_height
。
你是有什麼原因不想寫 keyboard_height
嗎?
因为我主题的不同键盘本身就高度不一,如果指定 keyboard_height
会让键高不一致。
現在 liquid keyboard 會將高度設定為
keyboard_height
。你是有什麼原因不想寫
keyboard_height
嗎?
现在最新的版本keyboard_height似乎是不起作用呀,设置了高度,切换键盘还是有闪烁
因为我主题的不同键盘本身就高度不一,如果指定
keyboard_height
会让键高不一致。
你為了令每個鍵高一致,而放棄了鍵盤高度的一致? 那麼你希望 liquid keyboard 的高度是什麼?
你為了令每個鍵高一致,而放棄了鍵盤高度的一致?
差不多,以前用 Gboard 就是键盘高度固定而键高会有变化,个人感觉难受。
那麼你希望 liquid keyboard 的高度是什麼?
一些想法:
当前liquid keyboard的高度是由height(按键高度)控制的,与普通的keyboard一样。 个人认为这个设计已经出现了一些问题:
liquid_keyboard/height
keyboard/height
)不能直观反映整个键盘的高度。style/keyboard_height
)在正常工作的情况下,是锁定全局键盘高度的,可以很直观反映整个键盘的高度,但部分键盘有自定义高度的需求,比如中文键盘4排按键、英文键盘5排按键(多一排数字键),这时候就希望英文键盘高一点。我认为可以:
style/keyboard_height
)的同级增加一个配置项,来决定是否锁定全局键盘高度,而键盘高度(style/keyboard_height
)只用来指定键盘的缺省高度。liquid_keyboard/keyboard_height
keyboard/keyboard_height
)用来设定该键盘的高度。liquid_keyboard/height
keyboard/height
)参数的作用进行重新定义,向按键宽度看齐,数值也就是占整个键盘高度的百分比。如:height: 10
表示占键盘高度的10%,这与 width: 10
表示占整个键盘宽度10%类似。当前liquid keyboard的高度是由height(按键高度)控制的,与普通的keyboard一样。 个人认为这个设计已经出现了一些问题:
1. 按键高度(`liquid_keyboard/height` `keyboard/height`)不能直观反映整个键盘的高度。 2. 键盘高度(`style/keyboard_height`)在正常工作的情况下,是锁定全局键盘高度的,可以很直观反映整个键盘的高度,但部分键盘有自定义高度的需求,比如中文键盘4排按键、英文键盘5排按键(多一排数字键),这时候就希望英文键盘高一点。
我认为可以:
1. 在键盘高度(`style/keyboard_height`)的同级增加一个配置项,来决定是否锁定全局键盘高度,而键盘高度(`style/keyboard_height`)只用来指定键盘的缺省高度。 2. 在所有键盘中添加一个参数(如`liquid_keyboard/keyboard_height` `keyboard/keyboard_height`)用来设定该键盘的高度。 3. 对按键高度(`liquid_keyboard/height` `keyboard/height`)参数的作用进行重新定义,向按键宽度看齐,数值也就是占整个键盘高度的百分比。如:`height: 10` 表示占键盘高度的10%,这与 `width: 10` 表示占整个键盘宽度10%类似。
參考你的建議,我覺得可以:
style/keyboard_height
,鎖定全局鍵盤高度,必須填寫 (或內置)。liquid_keyboard/keyboard_height
: 定義 Liquid keyboard 高度,沒有的話使用 keyboard_height
。preset_keyboards/[KEYBOARD_ID]/keyboard_height
: 若為正數的話,會使用此作為高度。為 0
或沒有填寫的話,使用 keyboard_height
。負數的話,程式需使用 key_height
來計算高度。沒有任何 key 的話,高度為 0
。key_height_pc
(key height in percent) 去表示,以兼容舊版本。@Wenti-D 这其实符合预期。因为液态键盘一直是和主键盘同样高度的,以前没有显式地表现出来。技术上来说,液态键盘曾经和主键盘同住一个“屋檐下”,主键盘多高,液态键盘就有多高。而现在分离开了,为了保持它们大部分时候能够同高,液态键盘直接取回了 keyboard_height
作为自己的高度,所以如果你没有这个参数,当然是显示不出来的。
因为液态键盘一直是和主键盘同样高度的,以前没有显式地表现出来。
那也就是说之前的液态键盘高度是当前输入法目标键盘的高度?有点接近「设定为切换前键盘的高度」。
因为液态键盘一直是和主键盘同样高度的,以前没有显式地表现出来。
那也就是说之前的液态键盘高度是当前输入法目标键盘的高度?有点接近「设定为切换前键盘的高度」。
应是如此。不过我得承认这部分目前的实现并不是很好。
刚刚更新到f-droid最新版也遇到了这个问题,通过添加keyboard_height显示出来了,太感谢了
@Wenti-D 之前解释得不是很清楚,最近修了一些问题后想把现状再说一下:
style/keyboard_height
(不管是不是没设或者等于 0)candidate_view_height
+ comment_height
+ keyboard_height
)那问题来了,主题有一个设置项是默认键高(key_height
),键盘定义中也可以写参数 height
来覆盖默认键高,如果现状如你所说,那这个参数不是完全没用了吗……
那问题来了,主题有一个设置项是默认键高(
key_height
),键盘定义中也可以写参数height
来覆盖默认键高,如果现状如你所说,那这个参数不是完全没用了吗……
当然不是这样。这只是让键盘定义中的参数优先生效,如果没写或者为 0,才用主题样式设定里的。
呃,可能我表述不清了。我是想说,style/keyboard_height
决定了键盘高度,那么,现在的情况下 key_height
和 height
参数是不是就不起效了?
在有键盘高度这个参数的情况下,键高应该会由键盘高度和行数计算而来。而现在你说「至少有一个地方有高度设置」,也就是必须存在键盘高度这一参数,所以 key_height
参数没法起效。
另外我试了,在键盘中设定了 height
参数,的确无效,仍然是「整体键盘高度不变,键高由整体键盘高度和行数计算而来」。但在键中设定高度 height
则对那一行有效。
Describe the bug 若主题文件中
style
下没有keyboard_height
一行,调用液态键盘时它不会显示出来(可能看起来像高度为 0)To Reproduce
tongwenfeng.trime.yaml
第 82 行keyboard_height: 250
注释掉;Expected behavior 在之前一段时间,未指定
keyboard_height
不影响液态键盘显示,看起来有一个「默认高度」什么的。Log com.osfans.trime-2024-03-29T07_07_12Z.txt
Screenshots (这是使用同文风主题测试的结果,把整个手机屏幕全截下来了)
Smartphone (please complete the following information):
Additional context 顺便问问,这不 3.2.18 的测试版吗,怎么构建出来的版本有时还挂着 3.2.17 呢?