Closed Bug 186549 Opened 22 years ago Closed 20 years ago

add a pref. that allows different windows to retain their own input locale settings

Categories

(Core :: Internationalization, enhancement)

x86
Windows XP
enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
Future

People

(Reporter: cstef, Assigned: masayuki)

References

Details

(Keywords: intl, Whiteboard: parity-ie)

Attachments

(1 file, 4 obsolete files)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.2.1) Gecko/20021130
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.2.1) Gecko/20021130

When working with a number of simultaneously opened Mozilla windows (for
example, composing mail message while looking for information in another page)
it would be useful each window to reatin its own input locale settings. When I
compose mail in russian and have to look into some web page, I have to switch
input locale to english to type in URL, and then to switch back to continue
writing. It would be useful that while composing mail in russian, when I switch
to another window (navigator), it has its own input locale (english or whatever
original locale it had).

Reproducible: Always

Steps to Reproduce:
1. Open two Mozilla windows
2. In window 1, switch input locale
3. Switch to another window

Actual Results:  
In another window, switched locale is turned on.

Expected Results:  
Another window has its own original input locale.
-> internationalization I guess
Assignee: asa → smontagu
Component: Browser-General → Internationalization
QA Contact: asa → ylong
Don't know whether it's a bug or not, cc more people.
Keywords: intl
This looks like a Windows issue, and not a Mozilla one. I think it is intended
behaviour. This bug should be marked INVALID. 
I disagree. I guess it's a valid enhancement request (hey, you asked for it :-))
and I guess it's doable (but I don't know how :-)). However, I'm setting the
target to 'future' because we don't have any one to work on it at the moment.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Target Milestone: --- → Future
(In reply to comment #4)
> I disagree. I guess it's a valid enhancement request (hey, you asked for it :-))
> and I guess it's doable (but I don't know how :-)). However, I'm setting the
> target to 'future' because we don't have any one to work on it at the moment.
No, it was another Constantin - me who asked for it.
I do not agree that it is Windows issue - if you look at IE behaviour, it makes
it as I want - every window has its own setting.
For me, this feature is most annoying  when I composing a message in Russian,
and need to look at some web page for reference - I open new window, and have to
switch to English to type URL. After I saw what I want I have to switch back to
Russian to continue typing message text.
Alike things sometimes happen with two browser windows - in one I type some text
in Russian (for example, search terms in Google), in another want to open custom
URL - the same switching.
Or switching to reading news - I press 'N' to look at next new message, but it
does not work because Russian is on, and Mozilla does not understand, that it is
the same key (this problem does not apply to keys with modifiers - everithing is
OK there).
Oops. Sorry for the mix-up. Anyway, I agree with you that it's doable and we
should do it. I wish I had more time to spend working on Mozilla. 
This is an IE parity issue. 
Blocks: 164421
(In reply to comment #5)
> I do not agree that it is Windows issue - if you look at IE behaviour, it makes
> it as I want - every window has its own setting.

There are some pluses and some minuses in this feature. I'd rather have it as it
is (the same locale for all windows). 

As far as I can remember, Macs always have had the same locale for ALL
applications. Moreover, there was a big discussion about the Windows' behaviour
of having separate locales for each application. 

FYI, Microsoft Word 2002 has the same locale for all windows. 
(In reply to comment #8)
> There are some pluses and some minuses in this feature. I'd rather have it as
it > is (the same locale for all windows). 
> As far as I can remember, Macs always have had the same locale for ALL
> applications. Moreover, there was a big discussion about the Windows' behaviour
> of having separate locales for each application. 
> 
> FYI, Microsoft Word 2002 has the same locale for all windows.
Well, there are pros and cons. But as for me, separate settings for different
windows are preferrable. Maybe that could be a feature which may be turned on by
a user pref, and the current behaviour will be the default.
I asked for it because I would like it to exist. If this feature may be switched
on and off - everybody can choose whatever he wants.

OS: Windows 2000 → Windows XP
Whiteboard: parity-ie
Summary: Different windows should retain its own input locale settings → add a pref. that allows different windows to retain their own input locale settings
We can get the keyboard layout by |GetKeyboardLayout| API.
But |SetKeyboardLayout| API does not exist.
I think that this bug cannot be fixed on Mozilla.
Because Mozilla has only one thread for UI.
(One thread has an active keyboard layout).
Sorry, it is existing. But the name is |ActivateKeyboardLayout|.
Attached patch Patch rv0.1 (obsolete) — Splinter Review
O.K. I created this patch.
This patch switch the keyboard layout by window.
My idea for pref name is...
"intl.keyboardlayout.switchbywindow"

Is it O.K.?
Attached patch Patch rv1.0 (obsolete) — Splinter Review
Attachment #165157 - Attachment is obsolete: true
Attachment #165174 - Flags: review?(jshin)
Comment on attachment 165174 [details] [diff] [review]
Patch rv1.0

Oops..

Sorry, the patch has an performance issue.
Attachment #165174 - Attachment is obsolete: true
Attachment #165174 - Flags: review?(jshin)
Attached patch Patch rv1.1 (obsolete) — Splinter Review
Attachment #165183 - Flags: review?(jshin)
Comment on attachment 165183 [details] [diff] [review]
Patch rv1.1

I changed reviewer.
Becuase Jungshik is internationalization, but this patch is widget/windows.
Attachment #165183 - Flags: review?(jshin) → review?(emaijala)
Comment on attachment 165183 [details] [diff] [review]
Patch rv1.1

I think you should read the pref at the same time config.trim_on_minimize is
read in the end of StandardWindowCreate. That would save you some code.

I'd suggest something like intl.keyboard.per_window_layout for the pref name.

Move the line
+pref("intl.keyboardlayout.switchbywindow",  false);
to the first #ifdef XP_WIN block around line 1062.
Attachment #165183 - Flags: review?(emaijala) → review-
Attached patch Patch rv1.2 (obsolete) — Splinter Review
Attachment #165183 - Attachment is obsolete: true
Attachment #165780 - Flags: review?(emaijala)
Comment on attachment 165780 [details] [diff] [review]
Patch rv1.2

No need to do other changes in StandardWindowCreate than add the lines
+    PRBool switchKeyboardLayout;
+    if
(NS_SUCCEEDED(prefBranch->GetBoolPref("intl.keyboard.per_window_layout",
+					      &switchKeyboardLayout)))
+      gSwitchKeyboardLayout = switchKeyboardLayout;

after the reading of trim_on_minimize. This way the pref is read exactly once
when the hidden window is created and gTrimOnMinimize == 2.
Attachment #165780 - Flags: review?(emaijala) → review-
Attached patch Patch rv1.3Splinter Review
Attachment #165780 - Attachment is obsolete: true
Attachment #165864 - Flags: review?(emaijala)
Attachment #165864 - Flags: review?(emaijala) → review+
Attachment #165864 - Flags: superreview?(bryner)
*** Bug 258924 has been marked as a duplicate of this bug. ***
Comment on attachment 165864 [details] [diff] [review]
Patch rv1.3

I change superreviewer to bzbarsky.
Because superreview? has been set a month before.
Attachment #165864 - Flags: superreview?(bryner) → superreview?(bzbarsky)
Comment on attachment 165864 [details] [diff] [review]
Patch rv1.3

sr=bzbarsky
Attachment #165864 - Flags: superreview?(bzbarsky) → superreview+
Ere:

Would you check-in the patch?
Assignee: smontagu → masayuki
Patch checked in to trunk.
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
No longer blocks: 164421
Blocks: 158464
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: