Commit Graph

2760 Commits (58e404650b7b88c75b4b19787af7cc18d84c142f)

Author SHA1 Message Date
Don Ho 58e404650b Remove not used codes 2022-02-22 00:54:10 +01:00
Don Ho 456fdaa680 Simplify the localization in codes
and fix the bug that menu "Window" not translated:
5917fdefb0 (commitcomment-67151276)
2022-02-21 17:59:25 +01:00
exd0tpy fc064d3254 Fix UDL dialog crash issue on over 30 created UDL
Add index check when add User Defined Language
If user create User Defined Language over 30 (NB_MAX_USER_LANG) times app is crash.

Fix #11257, close #11251
2022-02-21 15:48:56 +01:00
VinsWorldcom 80ba58773d Fix auto-completion sort order problem due to fx icon
Fix #11233, close #11234
2022-02-21 03:42:09 +01:00
Don Ho 5917fdefb0 Fix translation problem for "Sort By"
Make "Plugins" & "Window" menu static to simplify the code.
2022-02-21 00:57:15 +01:00
deebash 1c8b867395 Add "Sort By" commands under Window Menu
Add commands by name, path, type and by size for sorting under Window Menu.

Fix #10393, close #11190
2022-02-20 18:52:07 +01:00
mpheath 726ad7f580 Fix autocomplete case insensitive not working issue
Fix #11187, close #11191
2022-02-20 18:13:41 +01:00
xomx b233c0c3e0 Fix saving problem (regression) with "Sysnative" alias in x86 binary
Removing the 'case sensitive' default flag FILE_FLAG_POSIX_SEMANTICS fixes the CreateFile ERROR_PATH_NOT_FOUND, when working with files like "C:\Windows\Sysnative\drivers\etc\hosts".

Without the FILE_FLAG_POSIX_SEMANTICS the WIN32 IO (CreateFile/WriteFile) way will be equivalent with the previously used POSIX IO (fopen/fwrite) way.

More info about this "Sysnative" alias: https://docs.microsoft.com/en-us/windows/win32/winprog64/file-system-redirector

Fix #11196, close #11225
2022-02-18 16:48:34 +01:00
Don Ho 2321e648ae Fix regression: file can't be saved if it's set to other charset before
Fix #11238
2022-02-18 14:49:21 +01:00
Don Ho 637f470b6e Add more Easter Eggs for the coming Easter Sunday 2022-02-17 15:20:07 +01:00
Don Ho 2df765e189 Code enhancement: prevent from signed integer overflow
Ref:
94154b0f0e (commitcomment-66609009)
2022-02-16 19:13:35 +01:00
Don Ho 51b1c9377c Fix incorrect message on double click on search result regression
This regression was inserted by commit c0be50494c (PR #11107).

Fix #11215, Fix #11106
2022-02-16 18:22:47 +01:00
Don HO 5c02505998 Notepad++ v8.3.1 release
Boycotting Beijing 2022 continues in this release
2022-02-15 16:32:03 +01:00
Don Ho 94154b0f0e Code enhancement: Fix comparison of different signs integers 2022-02-09 20:06:59 +01:00
Don Ho 785453147b Inialize all memebers of struct (instead of its 1st member) to zero
The curly brace initiator in C/C++ is quite confusing (at least to me).
The C style array uses {0} for initializing all the array to 0,
whereas C++ struct uses {0} for initializing only the 1st member's value to 0.
If we want to set all members' value in a struct to 0, we should use {} instread of {0}.

This commit fix the error which initialize only the 1st member's value to 0 in the structures.

Ref:
1. https://docs.microsoft.com/en-us/cpp/cpp/initializing-classes-and-structs-without-constructors-cpp?view=msvc-170
2. https://en.cppreference.com/w/c/language/struct_initialization
2022-02-09 16:41:56 +01:00
Don Ho 2e9342ae24 Code enhancement: Initialize member variables 2022-02-09 04:40:16 +01:00
Daniel Fuchs dee3bad29d Make variable list combobox translatable in printing preferences
The list of variables defined under Preferences > Print can be translated using the following method:

https://github.com/notepad-plus-plus/notepad-plus-plus/pull/11093/files#diff-a6ac7ceba70d88bf1547fd1defd760bd55052dcdb78c44f9d46d99ef1f450472R999-R1007

However as pointed out by others this will break the "Add" button, so translation is currently not possible. The result is, that nothing is added to the current field.

This commit makes translation possible without breaking "Add" feature.

Fix #11114, close #11115
2022-02-08 19:40:23 +01:00
Don Ho f815b7057f Revert "Enable backup on save (simple) feature by default"
This reverts commit 40fbae1f76.
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/10725#issuecomment-1032106977
2022-02-08 02:10:23 +01:00
xomx 85e7207eef Enhance error handling while opening file
In FileManager::loadFileData method:
1. Fix unnecessary GCC crashes when opening larger files in 32-bit Notepad++ binary.
2. Take into account and report correctly also other possible Scintilla error states there (than the previously handled SC_STATUS_BADALLOC).
3. Catch and report correctly also exceptions not handled by the Scintilla exception handler.
4. Catch and report correctly also Notepad++ code exceptions there.

Fix #11103, close #11112
2022-02-07 23:34:54 +01:00
Don Ho 9baaef786b Fix Path Completion not working regression
Fix #11147
2022-02-07 23:17:07 +01:00
Don Ho 6c345e907b Optimize setting image call in auto-completion
In PR #11088 the calling scinitilla is not optimized:
SCI_REGISTERIMAGE & SCI_AUTOCSETTYPESEPARATOR need to be called only once.
2022-02-07 20:12:45 +01:00
VinsWorldcom c394a890aa Add icons on function items of auto-completion to distiguish from word items
Fix #11087, close #11088
2022-02-07 19:01:47 +01:00
mere-human b5a5baf13b Fix file dialog "Append extension" checkbox not working in empty dir
Use hooks for keyboard and window procedure instead of subclassing controls.
Use a handle map for transferring instance data to the hook procedure.
This approach should be more reliable than the previous one.

Fix #10436, close #11050
2022-02-07 15:38:21 +01:00
Don Ho bbe8a7db26 Restore auto-completion insert selection default setting (ENTER & TAB)
Since auto-completion feature appeared in Notepad++, its selected item insertion default setting has had been always both "ENTER" & "TAB" keys. In commit 68d339d224eba0fa7aeb2e0f7526b3311cc02c5a:
68d339d224
this default setting was changed to only "TAB", that made a lot users who used "ENTER" for insertion unhappy.
In this commit the old default value has been restored. Users can always change this behaviour in auto-completion settings of preferences dialog.

Ref:
https://community.notepad-plus-plus.org/topic/22425/notepad-v8-2-1-release/34?_=1644179730538
2022-02-06 23:45:04 +01:00
xomx deb99ae45b Fix cmdline '-n' param not working and wrong cursor position regression
When file is opened via "Edit with Notepad++", cursor position is placed on the 2nd position instead of the first.
This fixes the signed/unsigned mismatch there arisen from the current 2GB+ changes.

Fix #11131, close #11132
2022-02-05 19:23:13 +01:00
ArkadiuszMichalski 9fccc37987 Fix Dark Mode Customized tone link part is not persistent
Fix #11095, close #11102
2022-02-04 18:02:25 +01:00
Christian Grasser c0be50494c Fix NPPM_RELOADFILE with 8.3 path containing bug
Fixes issue seen with pythonscript testcase https://github.com/bruderstein/PythonScript/blob/master/PythonScript/python_tests/tests/NotepadWrapperTestCase.py#L383-L397 using NPPM_RELOADFILE with a 8.3 path containing.

Fix #11106, close #11107
2022-02-04 17:17:37 +01:00
Don HO 73a4cdc104 Fix XML tag mark deletion crash Notepad++ v8.3
The uninitialized structure members contain the random value.
The crash is fixed by initializing them with a default value.

Fix #11128
2022-02-04 15:20:55 +01:00
Don HO ae6361fa35 Notepad++ release v8.3 (Boycott Beijing 2022) 2022-02-03 23:35:12 +01:00
Don Ho 993506af0a Fix Find in Files crash 2022-01-31 03:55:28 +01:00
Don Ho 6d311e102e Fix 2 logic error (wrong copied/pasted)
ref:
774321e099 (r64847350)
2022-01-29 15:11:59 +01:00
Don Ho 4077ec2f69 Fix crash regression in UDL dialog
Fix #11101
2022-01-28 23:27:27 +01:00
Don Ho 774321e099 Improve 200MB+ files loading/editing performance
While loading files over more 200MB, they are all considered as Normal text files, that improve loading speed (for example for huge XML or SQL file).
Also, the feature as braces match, smart highlightingg, tag match and URL colorization are disabled for not penalizing the editing performance.
2022-01-28 19:49:58 +01:00
Don Ho db3308329b Fix crash on opening file with wild card characters
And redefining Sci_PositionCR to 64 bits on x64 build for managing 2GB+ files.
(ref: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/11047#issuecomment-1021540298)

Fix #11098
2022-01-28 04:17:45 +01:00
Don Ho 44004d41d4 Enhance large file loading: disable 4 features for large files
Dur to the performaance issue, the loading of large files will disable automatically the following feature:
1. auto-completion (only for large files)
2. snapshot periode backup (only for large files)
3. backup on save (only for large files)
4. word wrap (persistent for all files. Need to enable it manually)

Ref: https://community.notepad-plus-plus.org/topic/22438/notepad-v8-2-2-release-candidate/6?_=1643194615292

Fix #8802
2022-01-27 16:12:50 +01:00
Don Ho edabe44000 Disable Word Wrap while load a 2GB+ file 2022-01-26 18:44:58 +01:00
Don Ho 2132505cba Fix unsaved untitled files not being opened on the next session regression
Fix #11080
2022-01-26 17:49:37 +01:00
Don Ho 961a133a60 Remove 2GB file open restriction for x64 binary
Fix #10921, close #11047
2022-01-25 18:08:05 +01:00
Christian Grasser 5b5dbbd3f9 Fix ARM64 build doesn't contain 64 bits information
Fix #11068, close #11069
2022-01-25 01:51:21 +01:00
Don Ho 7df6af7e2e Fix Find dialog visual glitch
Ref:
https://community.notepad-plus-plus.org/topic/22399/notepad-8-2-1-release-candidate/2?_=1643043577513

Close #11067
2022-01-24 18:54:00 +01:00
VinsWorldcom fcfa034cc5 ESC key clears function list filter & search result
Even the focus is not on filter field but on one of tree view entries.

Fix #11063, close #11064
2022-01-24 18:39:16 +01:00
Don HO 2b99372169 Notepad++ v8.2.1 release 2022-01-24 15:58:07 +01:00
Don Ho 234941c180 Fix regression of bg/fg color disabling visual glitchy
The regression is due to:
7c9f4204ea (diff-473b357ab7088152f46cb49e9d3336344425ab463c209b10b2fe16df98cc3b76)

Fix #11051
2022-01-19 16:49:04 +01:00
Don Ho cb7bbef4fe Fix "File is too big to open" message isn't modal issue
And plus some refactoring.
2022-01-14 15:09:13 +01:00
Don Ho 7ebb1e3672 Add Find/Replace text swap button in Find replace dialog
Fix  #6010, close #11037
2022-01-13 18:44:03 +01:00
Don Ho 3ce90f56d6 Fix wrong keywords (of preprocessor in C) highlighting in Java
Remove C Preprocessor color settings from stylers.model.xml + all theme files.

Fix #11026
2022-01-12 18:09:55 +01:00
Don Ho e048f83420 Make menu folders on context menu translatable
Make the following context menu items translatable:
1. "Style all occurrences of token"
2. "Style one token"
3. "Clear style"
4. "Plugin commands"

Note for translators: to test your translation, you have to replace the old "contextMenu.xml" with the new one (modified in this commit).

Fix partially #8972
Fix #9713, close #11031
2022-01-11 15:07:55 +01:00
Don Ho 5dada11848 Fix Debug information wrong OS information detected with windows 11 issue
Fix #11011
2022-01-11 02:05:38 +01:00
Don Ho 68d339d224 Auto-completion currently use both ENTER and TAB to insert the selected item,
in some circumstance people have to ENTER twice to have 1 newline feed.

In this commit, 2 options (ENTER & TAB) are given in Auto-completion settings, so users can choose one of these 2 keystrokes (or both, or none). By default ENTER is disabled and TAB is enabled.
If auto-completion is disabled and completion is triggered manually, then the settings of ENTER & TAB won't be considered, both ENTER & TAB will be able to insert the selection.

Fix #4799, fix #4631, fix #8389, fix #10915, close #11016
2022-01-10 15:10:54 +01:00
Don Ho ed40f11515 Fix loaded session being empty on exit
In the following configuration loaded session will be empty on exit
* Remember current session for next launch: OFF
* Open session in a new instance: ON

This commit fix the issue.

Fix #10986, close #11017
2022-01-10 15:05:44 +01:00