|
我是2.1的,嘗試了一下,解決了just type輸入中文時,出現英文首字母的問題.
8 s- {! i3 k6 F" m( E, ~& {7 ^0 ce.g. 以前拼音輸入"你好"會出現"n你好",修改後只會出現"你好" A- I# E0 `: y+ L# T( c. |) Q
# R. A; F/ H! v+ @& U' a* I5 P
" k% k3 v3 I% Y: |" l+ T1 X/usr/lib/luna/system/luna-applauncher/app/controllers/global-search-assistant.js
0 s9 ]1 n, r! I `) U5 o6 J- R$ s7 }3 e2 p: I* a6 Q
原本內容:5 W4 X3 m. c% i- ~& s
// try to handle the very first key event6 w* U* \; t' s4 D
var s;
4 u2 B5 |4 N; I x6 n+ W) E: { if (Mojo.Char.isPrintableChar(event.keyCode, true) && !event.ctrlKey) {
, @4 j9 G) b+ s8 q1 K' ~! `4 J' S s = String.fromCharCode(event.keyCode);
' G, M. ~- F0 a3 F z+ D! @" x1 d }, T, J2 r" ~$ A3 Y. X& V
if (s && this.searchTerm.length==0 && this.searchPressHoldTerm.length==0) {: n9 y" S' o6 b* J9 G
// first valid key press event
5 U) P3 Q g" q this.onActivate(s);
# l$ ~# F P P this.updateSearchTerm(s, true);; n6 P! M. B7 L- D$ g2 ^
4 |8 K% X. H1 [, L( K- c2 G' V: h // we manually updated the search field9 d4 g" m# c" c' _% z
event.preventDefault();. y! s j. B: d4 e
}
6 b: p5 P/ A! e8 z修改後內容:
# E) A$ I/ _" B // try to handle the very first key event( B, V2 H# t' Y4 d
var s=/^\w+$/;
$ \4 R# x" G% p# S7 W: S2 g: \% s if (Mojo.Char.isPrintableChar(event.keyCode, true) && !event.ctrlKey) {
8 l7 l" Z* S w3 E7 Q s = String.fromCharCode(event.keyCode);
$ z; p- g. C7 `5 L- i# C* q$ ^, A }
$ M3 ]. b! s+ \! M& |9 ~+ t if (s && this.searchTerm.length==0 && this.searchPressHoldTerm.length==0) {
2 l. ~% r! K& v // first valid key press event
3 y9 e+ b7 z% Y this.onActivate(s);: o/ ?6 J) ]8 b. w. I y- T
if(!s.test(str))
$ x4 i# P. r* s4 U6 s, n4 x! f this.updateSearchTerm(s,true);! b" @* v3 c9 v* @& h+ v* A4 k
else
2 E; z# N/ |$ }9 M1 K$ x5 h this.updateSearchTerm(" ",true);
b9 N, k& x8 s- Z/ }( W r // we manually updated the search field
6 F% q2 g Z! G' m* B event.preventDefault();
- p3 k7 e& p. _ }
, G& Q: L7 e$ L( ?原理:
; f5 M. \/ @3 D3 S. H% `s是上屏的首個字串,判斷是否英文或符號而決定是否上屏.+ o3 Y: K9 P# I! t0 G7 v' D3 D
Bug: Z& s1 S$ S0 X
有時候數字模式會檢測不到首個輸入字,而不會自動打開just type,或是在just tpye的光標會不見了,* B' c3 g7 K! \2 v
解決方法:手動按1下just type的輸入欄,光標重新出現,之後就可以正常使用4 h7 [& j, f. V6 E8 \
這bug不是經常出現,出現原因也不太清楚,
, P$ P$ q/ t7 a( H我只是個javascript新手,如果有人有更好的判斷方法,請分享一下.
/ b% z( b5 I8 C8 }6 N+ k0 K D7 k
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
×
|