Closese #2029
Added a basic conflict detection functionality to the Shortcut Mapper.
This includes:
* Marking conflicts with a different background color.
* Displaying conflict information.
* Warning when attempting to assign an already existing short-key.
Some more related changes to the Shortcut Mapper:
* Fixed some bugs, for instance:
1. Babygrid was shrinking on any attempt to adjust its position to integral
rows.
2. Context menu entries were enabled for empty lists. Using them would crash
Npp.
3. ... some more minor bug fixes.
* Performance enhancements to Babygrid.
* Minor UI improvements.
* Babygrid is configured dpi aware.
Closes#2061
To reproduce such bug, the file foo.txt to monitor should be in the root folder (ie. c:\foo.txt).
The algorithm is check if folder path has '\' at the end, if no, then add a '\' then append file name.
In the original code, instead of checking folder path, the file name is checked. Since file name doesn't contain '\' (ie. c:\temp), a '\' is always added on folder path which has no '\' at the end. it works for none root folder such as C:\, E:\ or F:\.
Scintilla got a [new Pascal lexer] in version 1.78, which was included in
Notepad++ version 5.4.4. However, this lexer also introduced [new style IDs]
and most of Notepad++'s bundled themes that were created before version 5.4.4
haven't been updated in all that time.
Fixes#249, closes#1912
Fix GCC compile error: extra qualification 'WordList::' on member 'SetWordAt' [-fpermissive]
Fix GCC compile error: a storage class can only be specified for objects and functions
Fix GCC compile error with invalid usage of conditional operator
Invoke the "afterthought" part of the for loop in the normal code at the
end of the loop where proper conditions can be used.
Error message:
third operand to the conditional operator is of type 'void', but the second operand
is neither a throw-expression nor of type 'void'
closes#1656closes#1655
While trying to save a untitled empty document, user could open a existing
file that erases the untitled document's buffer, then save action make
Notepad++ crash:
https://www.youtube.com/watch?v=balHtvy4TocFixes#1857, Closes#1904
CmdLineParams object of the block "case COPYDATA_PARAMS" is always made
by another instance of Notepad++, (located usually in C:\Program Files
(x86)\Notepad++\) which is launched by NppShell.dll.
If CmdLineParams structure is modified in the local instance, and file
is opened via NppShell.dll, then crash happeds.