找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 1637|回复: 2

[软件及汉化] 解決just type中文輸入,首字母問題

[复制链接]
发表于 2011-4-20 12:59 | 显示全部楼层 |阅读模式
我是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

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入我们

×
回复

使用道具 举报

发表于 2011-4-20 13:13 | 显示全部楼层
谢谢分享,越来越多的人加入到开发自定义的行列中了!
回复 支持 反对

使用道具 举报

发表于 2011-4-20 14:31 | 显示全部楼层
还在用qq云啊。试试wbee吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

QQ|Archiver|手机版|小黑屋|吹友吧 ( 京ICP备05078561号 )

GMT+8, 2024-12-22 21:18 , Processed in 0.289556 second(s), 16 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表