[Update] xcin-2.5.2-pre5
各位好:
有興趣的朋友請試試這一版:
ftp://xcin.linux.org.tw/pub/xcin/xcin/devel/xcin-2.5.2-pre5.tar.gz
ftp://xcin.linux.org.tw/pub/xcin/xcin/patch/2.5.2-pre4_2.5.2-pre5.diff.gz
這一版有一些 OverTheSpot 外觀上的改變,其實只是將積欠了很久的功能
寫出來而已。大家可以看看這兩個 screen shot:
http://xcin.linux.org.tw/xcin-2.5/overspot1.png
http://xcin.linux.org.tw/xcin-2.5/overspot2.png
相對應地, xcinrc 中的選項也有了更動:
1. OVERSPOT_DRAW_AREA3 與 OVERSPOT_DRAW_LCCH 刪除,以後這兩項永遠都是
開啟的。
2. 新增 OVERSPOT_USE_USRFONTSET 與 OVERSPOT_FONTSET,其中前者可以指定
OverTheSpot 視窗所用的字型,後者可以設定是否直接使用前者所指定的字
型。預設是不使用。由於在某些情況下, XIM client 可能不會提供可用的
fontset 給 OverTheSpot 視窗,故 OverTheSpot 就會用 OVERSPOT_FONTSET
所指定的 fontset 來畫字,否則的話就用 client 所提供的。如果您希望
OverTheSpot 永遠使用 OVERSPOT_FONTSET 的字型的話,您就要將
OVERSPOT_USE_USRFONTSET 開啟。
3. 新增 START_MAINWIN2 以及 MAINWIN2_GEOMETRY 選項。請注意,這目前仍需
要時間考驗,因此預設是關閉的。您若發現使用上有任何問題,請立即回報。
這是什麼玩意兒?簡單地說, xcin 主視窗有雙胞兄弟了。各位在第一個
screen shot 見到是原來的主視窗,如果打開 START_MAINWIN2 後,另一個
較小的主視窗就會啟動,直接取代原來那個大的,也就是各位在第二個 screen
shot 中見到的情況。而原來那個大的則只有在遇到使用 Root input style
的 client 時才會啟動。
很多人認為原來的大視窗很礙眼,特別是在 OverTheSpot 的情況,故才有這
樣的設計。有興趣的朋友不妨試試。若您希望改變預設小視窗的大小位置時,
可以改變 MAINWIN2_GEOMETRY 的值。
除此之外,還有許多看不見的改變及 bug 修正,就不多說了,有興趣的朋友請自
行看看 Change log。
希望這一版可以是最後的功能敲定了。接下來需要完成的工作有:
1. gen_inp pinyin.cin (Big5) review
2. 繼續補齊 doc
3. 加入 man page
4. Update po & Big5 translation
Change log:
=======================================================================
xcin-2.5.2-pre5: 2000/08/25
------------------------------
1. IM module change: add a terminate() function all.
2. Add signal catch: SIGTERM, SIGQUIT, SIGINT.
3. XCIN termination now change to the following processes:
1. Call xim_close(), turn on XCIN_RUN_EXIT flag, and check if currently
there is an IC on focus:
if yes: Send XIM Sync signal to the client, and waits for the reply.
if no: turn on XCIN_RUN_EXITALL flag.
2. If XCIN_RUN_EXIT on, turn off any XIM action (do nothing but only
return True), but loop continuous, untill the reply for the Sync
signal from the client to xim_sync_reply_handler(). Then call
IMCloseIM() and turn on XCIN_RUN_EXITALL flag.
3. If XCIN_RUN_EXITALL on, stop the loop and terminate the XIM engine
and all the IM modules. Then exits.
4. Mozilla M16 work-around:
a. xim_IC.c: ignore get_ic_value & set_ic_value for null name/value.
Also modify the set_ic_value: XNFontSet part.
b. Fix bug in gui_overspot.c fontset updating part.
c. Add get_ic_value(): XNPreeditState handler.
Thanks to "Huei_ru, Chen (Cathy Chen)" <cathy@mitux.tatung.com.tw>
Yung-Fong Tang <ftang@netscape.com>
Masaki Katakai <Masaki.Katakai@Japan.Sun.COM>
<CyberMax.bbs@openbazaar.net>
5. Fix bug in call_switch_out(): When IM_2BYTES on & switch between clients,
the IM_2BYTES state of xcin window cannot update.
6. IMdkit, i18nPtHdr.c: add include config.h.
7. Remove xcin_mode flag: XCIN_RUN_FIRSTIM. Use static variable to indecate
the "first call" of that function in Change_IM() & ic_create().
Add IC_FOCUS check in xim_set_focus_handler() & xim_unset_focus_handler()
Thanks to Chuang Ming-Che <r8921131@ms1.cc.ntu.edu.tw>
8. Fix bug in gen_inp: fillpage(): inpinfo->mcch_pgstate assignment.
9. Fix bug in IMdkit: During the operation of xcin and the XIM clients, the
X-Atoms generated by xcin will continuously increase. Now using the garbage
collection mechanism IMdkit will reuse the free connect_id and the
"_server%d_%d" X-Atoms will not increase indefinitely.
Thanks to Cheng, Yuan Chen <ycheng@sinica.edu.tw>.
10. Documentation updation.
11. Remove big5/cantonese.cin & gb/zhiranma.cin & gb/biaoxingma.cin tables
because of potentially license problem.
Thanks to Anthony Fok <foka@debian.org>, zhaoway <zw@zhaoway.com>,
hashao <hashao@china.com>, Ben Luo <benluo@etang.com>
12. Add fontset resource management functions.
13. OverTheSpot improvement:
a. Add OVERSPOT_USE_USRFONTSET and OVERSPOT_FONTSET options in xcinrc,
such that the user can specify the fontset of overspot window.
Thanks to suggestion of zhaoway <zw@zhaoway.com>.
b. Remove OVERSPOT_DRAW_AREA3 and OVERSPOT_DRAW_LCCH options. They will
always be enabled.
c. Change the drawing for lcch to "lcch [preedit keystroke]" style.
Thanks to suggestion of KIRIN <kirin@ms7.url.com.tw>.
d. Add draw_lcch_grouping function.
14. a, Merge the functional of WIN_CHANGE_IM_CONTEXT & WIN_CHANGE_IM, and add
new flag WIN_CHANGE_REDRAW, and simplify the updation of gui_mainwin.
b. Also, to work around the problem of IC focus change of Mozilla, the
xim_set_focus_handler() & xim_unset_focus_handler will always set
WIN_CHANGE_REDRAW flag. The side effect is when the clients are in
English mode, changing the input focus will always result the redrawing
of xcin main window.
15. Add xcin_mainwin2, and if it is enabled, it will replace the original
xcin_mainwin to take care all the operations, and xcin_mainwin will only
be active in Root input style in this situation.
16. In trigger key handler, it will set xccore->ic and xccore->ic->ic_state
IC_FOCUS will enabled. Then the focus window checking in ic_create() can
be removed (it is useless).
T.H.Hsieh
Reply to: