View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0034825||Lazarus||IDE||public||2019-01-06 14:33||2019-01-06 22:35|
|Reporter||Denis Golovan||Assigned To||Martin Friebe|
|Product Version||Product Build|
|Target Version||2.0||Fixed in Version||2.0|
|Summary||0034825: [Regression] Complex IDE shortcuts stopped working|
Since upgrading to Lazarus 2.1.0 (rev. 59970), I noticed that my shortcuts like Ctrl+X followed Ctrl+S no longer work as before.
Lazarus configuration is ok, see screenshot.
So I assume something is broken.
|Tags||No tags attached.|
|Fixed in Revision||60019|
First of all:
Please make a backup of your config (this may be needed to reproduce the issue)
Copy the folder ./lazarus in your home folder. (or if you use a diff primary config path, then back that up)
Files of interest: editoroptions.xml, maybe environmentoptions.xml
Have you seen all the conflicts?
Are the none working shortcuts part of any of those conflicts?
Then of course they would not work. To be exact only one of 2 conflicting shortcuts can work. Which one that is may have changed, but then it was never guaranteed which one would work.
Did you have the same conflicts in (I assume) 1.8.6 ?
As for your config, does it still work with 1.8.6?
Or has it been changed by the update, so it is now broken in both versions?
(If it is broken, the backup is not needed.... A restored config would be required.)
What about 2.0.rc3?
About the issue:
If you had the conflicts before, then this is NOT a bug.
If you did not have them, then we need to reproduce this. For that we need:
- A configuration file, that we can load in 1.8.6, and get a conflict free, and working keymap
- That we can then use in 2.1, and get the conflicts.
Some conflicts may be due to new shortcuts in 2.1. But seeing the amount of conflicts, that would only be a tiny subset.
For newly added shortcuts conflicts can happen. That is not optimal, but currently that is how it works (afaik, need to double check)
editoroptions.xml hasn't changed since my last upgrade (11 version is still there).
I've made a backup of my .lazarus and removed all the conflicts.
Checked, Ctrl+X and Ctrl+S shortcut still does not work.
Then I've removed .lazarus folder altogether, started Lazarus, attached Ctrl+X and Ctrl+S => still no luck. See screenshot.
Can you attach your editoroptions.xml ?
(Unlikely,but) to make sure your OS is not "stealing" ctrl-x, what happens if you assign an action to only ctrl-x (and remove all other shortcuts that start with ctrl-x)
editoroptions.xml (12,017 bytes)
OS does not steal Ctrl+X as other applications work fine.
Single Ctrl+X works fine as well (no conflicting keys).
Is it only shortcuts starting with ctrl-x?
Or are there others? Do you have a list?
The strange think is that (for me) it works, *IF* there is text selected.
But if no text is selected then it does not work.
Yes, the only one.
And yes, it works when selection exists.
Please test and close if ok.
To patch it yourself for testing:
Find TSynCustomPluginMultiCaret.TranslateKey (around line 1908)
At the very end of the function insert 2 new lines:
Handled := (Command <> ecNone) or IsStartOfCombo; // <<<<<<<<< EXISTING LINE
if IsStartOfCombo then
ComboKeyStrokes := FKeyStrokes;
end; // <<<<<<<<< EXISTING LINE
Works as expected.
Thanks a lot.
|2019-01-06 14:33||Denis Golovan||New Issue|
|2019-01-06 14:33||Denis Golovan||File Added: Shortcuts.png|
|2019-01-06 15:06||Martin Friebe||LazTarget||=> -|
|2019-01-06 15:06||Martin Friebe||Note Added: 0113206|
|2019-01-06 15:06||Martin Friebe||Status||new => feedback|
|2019-01-06 15:33||Denis Golovan||Note Added: 0113207|
|2019-01-06 15:33||Denis Golovan||Status||feedback => new|
|2019-01-06 15:33||Denis Golovan||File Added: Shortcuts2.png|
|2019-01-06 17:05||Martin Friebe||Note Added: 0113209|
|2019-01-06 17:53||Denis Golovan||File Added: editoroptions.xml|
|2019-01-06 17:57||Denis Golovan||Note Added: 0113213|
|2019-01-06 19:57||Martin Friebe||Note Added: 0113217|
|2019-01-06 20:08||Denis Golovan||Note Added: 0113218|
|2019-01-06 22:14||Martin Friebe||Assigned To||=> Martin Friebe|
|2019-01-06 22:14||Martin Friebe||Status||new => assigned|
|2019-01-06 22:18||Martin Friebe||Fixed in Revision||=> 60019|
|2019-01-06 22:18||Martin Friebe||LazTarget||- => 2.0|
|2019-01-06 22:18||Martin Friebe||Note Added: 0113222|
|2019-01-06 22:18||Martin Friebe||Status||assigned => resolved|
|2019-01-06 22:18||Martin Friebe||Fixed in Version||=> 2.0|
|2019-01-06 22:18||Martin Friebe||Resolution||open => fixed|
|2019-01-06 22:18||Martin Friebe||Target Version||=> 2.0|
|2019-01-06 22:35||Denis Golovan||Note Added: 0113223|
|2019-01-06 22:35||Denis Golovan||Status||resolved => closed|