Bug 51716 is probably not related, as the shortcuts are registered in officecfg/registry/data/org/openoffice/Office/Accelerators.xcu and work on Linux as expected.
We tested our LO 4.1 and 5.0 Windows builds. Mapping it to some other key, i.e. Ctrl + w, works as expected. Changing the keyboard mapping from German to English doesn't help.
Confirmed, master build from yesterday
There seems a lot of confusion, if AltGr can actually be used correctly on Windows:
Then there is the GetKeyState function, which is also used by LibreOffice, which retrieves the status of the specified virtual key:
Finally I found a question in comp.os.ms-windows.programmer.win32: "Alt Gr key and left Ctrl":
which suggests, that Windows handles
AltGR = GetKeyState(VK_RMENU) < 0 && GetKeyState(VK_LCONTROL) < 0
So in case of VK_RMENU the meaning of VK_LCONTROL is supposed to be inverted?!
The main problem is Windows send automatically, when press ALTGR, the left CTRL-Key (with German-Keyboard-Language). It is not possible to diffrent, is the CTRL-Key pressed or not.
The other problem is always filtering the kombination STRG+ALT that can be ALTGR or STRG+ALT, this i have fixed ,look to tdf#95761
I have made test with MS-Word 2013 with the same kombination "CTRL+]", under Word you set the key-strokes, and then it display "CTRL+ALT+9" and that works but not with the ALTGR-Key.
The other problem is the init in startphase here http://opengrok.libreoffice.org/xref/core/vcl/win/source/app/salinst.cxx#333 in windows you can switch the keyboard-language per application, but the application must be run, the start of LO is german, then when you switch to english, it doesn't work, the english keys not match with german VirtualKeys. It only works when you change the keyboard-language for the whole system, then when you start LO it works with "CTRL+ALTGR+]". It exist a static table too here http://opengrok.libreoffice.org/xref/core/vcl/win/source/window/salframe.cxx#526 and here http://opengrok.libreoffice.org/xref/core/vcl/win/source/window/salframe.cxx#3279 the function to choose what for table to use.
The next problem is the character-codes the GetMessage-function (GM) here in wParam http://opengrok.libreoffice.org/xref/core/vcl/win/source/window/salframe.cxx#3550
give only the blank key back (without Shift, ALT, ALTGR, STRG) and the PeekMessage (PM) here http://opengrok.libreoffice.org/xref/core/vcl/win/source/window/salframe.cxx#3558 give the converted character back.
* "ALTGR + ]" , GM = 0x39 Zeichen: 9 , PM = 0x5d Zeichen: ]
* " STRG + I" , GM = 0x49 Zeichen: I , PM = 0x09 Zeichen: tab
* " STRG + +" , GM = 0xBB Zeichen: (not in the following table), PM = 0x1d
* look https://msdn.microsoft.com/en-us/library/aa299374%28v=vs.60%29.aspx
When CTRL is pressed should us GM but when using ALTGR it need to use PM in depend with the funktion VkKeyScan, this must be the same as in the init of the startphase, look above.
A other side effect of the VkKeyScan is for e.g. the + in the table is that the Virtual-Key-Code 0xBB but when you press "CTRL+ +" then it is the code 0x1BB and then no match, in this case it needed the GM.
I think the best solution is we change the German-Hotkeys without ALTGR-Character. And change the Customise-Keyboard to let set the key-stroke from user, then we not need the init of the virtualkey in the startphase.
A other problem i see is, when change the "CTRL+[" in "CTRL+8" then after the change ist works, but the tooltip for the toolbar-buttons show the old "CTRL+[" that is confusing.
I have made a patch to solve the problem here: https://gerrit.libreoffice.org/#/c/20228/
This fix and that https://bugs.documentfoundation.org/show_bug.cgi?id=95761 solved a lot of hotkey problems under windows.
It exist two other problems:
First here: https://bugs.documentfoundation.org/show_bug.cgi?id=95936
Under windows you can change the keyboard layout per application, when run the application, for LO it is possible but the hotkey would be init in the start phase http://opengrok.libreoffice.org/xref/core/vcl/win/source/app/salinst.cxx#333, and when change the keyboard, in this case we must Register the windows message for the keyboard and reinit the hotkey again, otherwise this windows-feature not work correctly for the hotkeys.
We need this patch in libreoffice 5.0 too
This patch https://gerrit.libreoffice.org/#/c/20228/ solve the problem under Windows but under Linux it has the same problem, and need a other Patch, get no timeslot for that, now
** Please read this message in its entirety before responding **
To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year.
There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present.
If you have time, please do the following:
Test to see if the bug is still present on a currently supported version of LibreOffice
(5.2.7 or 5.3.3 https://www.libreoffice.org/download/
If the bug is present, please leave a comment that includes the version of LibreOffice and
your operating system, and any changes you see in the bug behavior
If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave
a short comment that includes your version of LibreOffice and Operating System
Please DO NOT
Update the version field
Reply via email (please reply directly on the bug tracker)
Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not
appropriate in this case)
If you want to do more to help you can test to see if your issue is a REGRESSION. To do so:
1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3)
2. Test your bug
3. Leave a comment with your results.
4a. If the bug was present with 3.3 - set version to "inherited from OOo";
4b. If the bug was not present in 3.3 - add "regression" to keyword
Feel free to come ask questions or to say hello in our QA chat: http://webchat.freenode.net/?channels=libreoffice-qa
Thank you for helping us make LibreOffice even better for everyone!
Manfred Blume committed a patch related to this issue.
It has been pushed to "master":
tdf#95635 use different font size keyboard shortcuts
It will be available in 6.0.0.
The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
Affected users are encouraged to test the fix and report feedback.
IMHO the bug itself is buggy ;)
My point of view:
Using the german keyboard layout (on Windows) the shortcuts CTRL+] and CTRL+[ will not work because there are *no* keys which returns the characters [ or ] without any modifier key.
Only the "shortcut" CTRL+ALT+8 returns the character [.
As long as the set of available characters is keyboard layout dependent, so the available shortcuts ModifierKey1+[ModifierKey2+---]+"Character" should language and/or keyboard layout dependent.