Issue 55356 - Impossible to use IME's single character Hangul/Hanja Conversion instead of OOo's
Summary: Impossible to use IME's single character Hangul/Hanja Conversion instead of O...
Status: CLOSED FIXED
Alias: None
Product: Writer
Classification: Application
Component: code (show other issues)
Version: OOo 2.0 Beta
Hardware: All Windows, all
: P3 Trivial with 31 votes (vote)
Target Milestone: ---
Assignee: eric.savary
QA Contact: issues@sw
URL:
Keywords:
: 52363 (view as issue list)
Depends on:
Blocks:
 
Reported: 2005-10-02 19:38 UTC by hambak
Modified: 2013-08-07 14:42 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Copy of illustration for issue 51914 (59.91 KB, image/png)
2005-10-03 06:22 UTC, hambak
no flags Details
screenshot shows IME Hanja problem (62.27 KB, video/x-ms-wmv)
2005-10-07 18:12 UTC, jeongkyu.kim
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description hambak 2005-10-02 19:38:37 UTC
Note: This might look similar to issue 52363: IME Hanja key should invoke single
character conversion, http://qa.openoffice.org/issues/show_bug.cgi?id=52363
It's not.

I use Windows XP (de-DE), where I have installed Korean fonts and a Global input
method editor (IME) for Korean, as is freely available for all Windows versions
since 95.

As has been described in issue 52363, whenever a user types hangeul and presses
Ctrl (when using the Global IME on non-Korean Windows) or the hanja key (on
Korean systems), OOo kills the Global IME's (or the Korean windows' built-in
IME's) Hanja single character conversion pop-up and instead pops up its own
Hangul/Hanja conversion dialog.
In OOo 2.0 Beta (I haven't tried Beta2 yet), this dialog's suggestions box will
be empty by default. Once the user has ticked the "Replace by character"
checkbox, it will list Hanja candidates.

As I understand it, issue 52363 merely demands that "Replace by character" be
checked by default ― after all, having it unchecked would not make sense unless
OOo gets StarSuite's Hanja dictionary.

I feel there should be a preference in OOo allowing the user to set which of the
following should happen by default when the Ctrl key or Hanja key is pressed:
a) OOo's conversion dialog pops up or
b) the Global IME's (or Korean Windows' IME's) list pops up.


Steps to reproduce:

a) On Korean windows:

1. In OOo options, enable enhanced support for "Asian languages"
2. Open a text document in OOo
3. Type anything in hangeul (need not be a complete hanja syllable)
4. Press hanja key on keyboard

Actual result:
OOo's Hangul/Hanja conversion dialog pops up suggesting nothing (unless "Replace
by character" is enabled)

Expected result:
Depending on how you have set a preference in the OOo option's language
settings, either the OOo's dialog pops up or Windows' built-in IME's Hanja
conversion is allowed to pop up.


b) On non-Korean windows:

1. Install support for Korean from microsoft.com
2. In OOo options, enable enhanced support for "Asian languages"
2. Open a text document in OOo
3. Type anything in hangeul (need not be a complete hanja syllable)
4. Press Ctrl key on keyboard

Actual result:
OOo's Hangul/Hanja conversion dialog pops up suggesting nothing (unless "Replace
by character" is enabled)

Expected result:
Depending on how you have set a preference in the OOo option's language
settings, either the OOo's dialog pops up or the Global IME's Hanja conversion
is allowed to pop up.


Currently the only way to suppress OOo's annoying pop-up is disabling enhanced
language support for "Asian languages", which strongly decreases functionality.

If you are curious as to why a Windows user might prefer Global IME's Hanja
conversion over OOo's, have a look at
http://www.openoffice.org/nonav/issues/showattachment.cgi/28160/hanja_ime.png
The part of the image labeled "2. Microosft Office 2003" shows how the Global
IME's hanja conversion looks like:
A small pop-up appears above or below the caret or in the screen's lower right
corner. It uses screen real estate efficiently, shows 9 hanja at a time with
those most frequently used on top and those least used accessible by scrolling
down. You can select one by either clicking on it or typing the number shown
next to it. Each hanja is clearly distinguishable and has its Korean name and
pronunciation next to it to help the user decide.
None of the above applies to OOo's huge dinosaur of a dialog, which you can see
labeled "1. OpenOffice.org 2.0" in the above-mentioned image, and OOo's dialog
has few advantages over the IME's.

PS. Not sure whether this issue affects other parts of OOo as well; it was only
Writer in 1.1.4. Also not sure whether this would be a mere enhancement, but it
completely breaks OOo for use with Hanja for me.
Comment 1 jeongkyu.kim 2005-10-03 05:26:51 UTC
*** Issue 52363 has been marked as a duplicate of this issue. ***
Comment 2 hambak 2005-10-03 06:22:07 UTC
Created attachment 30074 [details]
Copy of illustration for issue 51914
Comment 3 hambak 2005-10-03 06:25:06 UTC
Sorry, the link contained in the original description text leads to the wrong image.
The image I actually intended is now attached.
Comment 4 jeongkyu.kim 2005-10-03 22:32:00 UTC
I belive the problem is caused by incorrect key binding. I mean Hanja key (
VK_HANJA ) is not for Writer's conversion.

When Korean IME is in composition mode, Hanja key brings up IME conversion
windows. This behavior is common to every windows applications even including
Calc, Draw and Impress. However, only Writer invokes its own conversion
function. Because of this, IME conversion window disappears immediately ( the
dialog steals focus and terminates composition mode).

My suggestion, for now, is not to bind Hanja key to Writer's conversion function
considering consistency with another OO.o applications.

FYI, the key binding is implemented in ImplHandleKey() function
(gsl/vcl/source/window/winproc.cxx).

http://www.go-oo.org/lxr/source/gsl/vcl/source/window/winproc.cxx#1157

1157     if( aKeyCode.GetCode() == KEY_HANGUL_HANJA  &&
1158         aKeyCode.GetModifier() == 0
1159         )
1160     {
1161         if ( nSVEvent == EVENT_KEYUP )
1162             ImplCallCommand( pChild, COMMAND_HANGUL_HANJA_CONVERSION, NULL );
1163         else
1164             // ignore hangul-hanja key_down to avoid having it processed twice
1165             return 0;
1166     }
1167     pChild->mpWindowImpl->mpFrameData->mbTriggerHangulHanja = FALSE;


However, this is not all. There is a big room for improvement of how we handle
Hanja key when IME is not in composition mode. For example, MS office and IE
have custom code to handle this situation. And it improves user's experience a
lot. I will file another issue for this.
Comment 5 michael.ruess 2005-10-04 08:33:54 UTC
Reassigned to US.
Comment 6 youzin 2005-10-06 17:00:48 UTC
*** Issue 55356 has been confirmed by votes. ***
Comment 7 ulf.stroehler 2005-10-07 16:39:55 UTC
> "However, only Writer invokes its own conversion function."

@Falko: intended or bug?
Bottom line: described "Global input method editor" is afaik unsupported by OO.o.

Reassigning to sba due to limited resources.
Comment 8 jeongkyu.kim 2005-10-07 18:12:30 UTC
Created attachment 30217 [details]
screenshot shows IME Hanja problem
Comment 9 jeongkyu.kim 2005-10-07 18:38:29 UTC
Please take a look at the second screenshot. You will see the difference between
Writer and Calc in responding Hanja key. As you see, Wrtier's dialog prevents
user from using IME Hanja conversion. It is bad (also funny).

The solution is simple. Just do not anything when Hanja key is pressed, then IME
will take care of it. In other words, we need to remove the Hanja key handling
code described in my previous comment. Don't worry about Writer's custom
conversion function. It already has its own shortcut - Ctrl+Shift+F7.
Comment 10 jeongkyu.kim 2005-10-07 18:51:03 UTC
By the way, let me clarify that this is Korean specific issue. How we're
supposed to handle language specific issue? Is there any Korean QA or developer
from Sun who can take a look at this?



Comment 11 hambak 2005-10-08 20:00:11 UTC
> "Bottom line: described 'Global input method editor' is afaik unsupported by
OO.o."

I would like to clarify that AFAIK *no* program specifically supports the Global
IME. Rather, Global IME would under normal circumstances work by itself in any
program, without any "support" work on the developers' side.
We do not demand that OOo "provide support" for Global IME (on non-Korean
windows) / IME (on Korean windows), but rather that OOo let the IME do its job,
instead of blocking it by popping up a dialog that "steals focus [from the IME]
and terminates composition mode", as jeongkyu has described.


> "By the way, let me clarify that this is Korean specific issue. How we're
supposed to handle language specific issue?"

I hope the above wording does not lead to any misunderstandings.
 This issue does not only affect Korean OOo. Fixes for this issue, as well as
related features, should be implemented in all OOo versions. Whoever needs such
functionality should get access to it simply by enabling enhanced support for
East Asian languages. I don't want to have to use Korean OOo to use this feature.
Comment 12 jeongkyu.kim 2005-10-09 02:52:25 UTC
> This issue does not only affect Korean OOo.

hambak, sorry for the confusion. I didn't mean this issue is specific to Korean
version. Actually, each language version is different merely in UI and locale
information. In fact, the change I suggested will affect every version of OO.o
if it is used with Korean IME.

My point was that we need help (or confirmation) from Korean guys working for
Sun because the change may affect StarOffice & StarSuite also. I hope we can
bring someone into this discussion and fix this issue soon.

Comment 13 jack.warchold 2005-11-11 12:19:16 UTC
just set a target
Comment 14 kleinstein 2005-12-13 14:35:46 UTC
it is a big Problem for korean users.. 
Comment 15 jeongkyu.kim 2005-12-14 02:09:10 UTC
Please take a look at the suggested solution in my previous comment. I believe
it is not hard to fix. Also, as kleinstein mentioned, this problem is important
to Korean users.

Why don't we reset the target milestone as reasonable one?
Comment 16 stefan.baltzer 2006-07-03 14:14:45 UTC
SBA: Removing FT from c/c as he is no longer working for OOo.
Note: As long as I use issue trackers, "Why..." questions hardly ever brought
things further.

SBA->ES: Welcome to the IME battleground :-)
Please take care of this one.
Comment 17 jeongkyu.kim 2006-07-03 16:08:19 UTC
Hi es,

I hate to trouble you, but I would be most grateful if you could set the target
milestone for this issue. The importance of this issue was already stated and
the possible solution was also proposed. If you need further help, I wlll do my
best to provide it.

Best,
Jeongkyu
Korean NL project lead
Comment 18 open_me 2006-08-22 09:50:11 UTC
The simple solution for this bug has been suggested by jeongkyu; why is it not
being implemented??

"The solution is simple. Just do not anything when Hanja key is pressed, then
IME will take care of it. In other words, we need to remove the Hanja key
handling code described in my previous comment. Don't worry about Writer's
custom conversion function. It already has its own shortcut - Ctrl+Shift+F7."
Comment 19 eric.savary 2006-08-22 11:42:07 UTC
ES->PL: as noticed, the solution looks simple: don't map anything on the hangul
key (right Ctrl key).

how to reproduce (short description to sum up):
- Text document
- Korean IME
- type for instance "to"
- press the right ctrl key
-> the Sytem Hangul/Hanja popup shows shortly up but soon the OOo dialog appears.

Arguments against this behavior:
- Users rather use the system popup
- AFAIK, the spec doesn't mention a call of the dialog over the hangul key
(http://specs.openoffice.org/g11n/HHC/Hangul-Hanja_Conversion.sxw)
- a system popup then immediatly an OOo dialog call looks "as is" like a bug
- Writer only: other apps (Calc, Draw) use the Edit engine which behaves
correctly. The UI (Dialogs etc) does it to.

Targetting to the next milestone though it's not a regression but a defect since
the original implementation and looks really disturbing. We can bargain the
target ;) but I definitively don't see this for "OOo Later".
Comment 20 jeongkyu.kim 2006-08-23 01:27:33 UTC
Finally this issue has fixed target milestone! Hope this to be fixed soon. :-)

Thanks,
Jeongkyu
Korean NL Project Lead
Comment 21 philipp.lohmann 2006-09-04 10:40:46 UTC
Will do.

pl->os: will remove emission of COMMAND_HANGUL_HANJA_CONVERSION event. Hope
that's ok with you.
Comment 22 philipp.lohmann 2006-09-06 17:42:51 UTC
removed hangul hanja command event as well as the emulation via right ctrl

committed in CWS vcl65
Comment 23 jeongkyu.kim 2006-09-06 18:43:26 UTC
jeongkyu -> pl: Thanks for your effort. Many Korean users will be happy with
this fix. :-)
Comment 24 philipp.lohmann 2006-09-08 10:50:25 UTC
please verify in CWS vcl65
Comment 25 eric.savary 2006-09-14 11:18:41 UTC
Verified in CWS vcl65
Comment 26 eric.savary 2006-10-20 15:23:46 UTC
closed