Commit Graph

459 Commits

Author SHA1 Message Date
Alan Kilborn 2e4ad67dff Refactor FindFirstFile-FindNextFile code blocks
Fix #14853, fix #14847, fix 060396c#r139323315, close #14857
2024-03-14 20:15:14 +01:00
ozone10 9d92b0a869 Fix some gcc warnings
Fix #14845, close #14846
2024-03-09 03:40:04 +01:00
xomx 4e1a3eef4a Add FlushFileBuffers-fail user notification
Close #14842
2024-03-09 03:28:15 +01:00
Don Ho 060396c698 Fix NPPM_RELOADFILE API return wrong result issue
Now NPPM_RELOADFILE returns the correct value: TRUE if reloading file succeeds, otherwise FALSE.

Ref: https://community.notepad-plus-plus.org/topic/25533/nppm_reloadfile-should-return-true-_only_-on-success/4
2024-03-04 03:04:56 +01:00
Don Ho 9a6614ea98 Enhance NPPN_GLOBALMODIFIED notification
The commit enhances 49e6957d48
2024-02-21 19:03:31 +01:00
Don Ho 49e6957d48 Fix Replace All action not notifying plugins of modification regression
Add NPPN_GLOBALMODIFIED to notify plugins that the current document is just modified by Replace All action.
	//scnNotification->nmhdr.code = NPPN_GLOBALMODIFIED;
	//scnNotification->nmhdr.hwndFrom = BufferID;
	//scnNotification->nmhdr.idFrom = 0; // preserved for the future use, must be zero

For solving the performance issue (from v8.6.4), Notepad++ doesn't trigger SCN_MODIFIED & other Scitilla notifications during Replace All action anymore.
Plugin devs should monitor NPPN_GLOBALMODIFIED instead. This notification is implemented in Notepad++ v8.6.5.

Ref: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/14685#issuecomment-1955229867

Fix #14767, close #14768
2024-02-21 16:30:25 +01:00
vlakoff c927ee8ce5 Add .mjs extension to the "web script" file associations
close #14689
2024-02-08 05:06:09 +01:00
Don Ho c0eaf544a6 Add "Plugin Communication" reference
and update copyright year for plugin header files.
2024-01-28 13:47:49 +01:00
Don Ho bb278b26fc Enhance API description in comment
Close #14587
2024-01-28 05:20:22 +01:00
xomx ca403b6627 Fix possible PluginsManager FindClose WINAPI errors
Otherwise the ERROR_INVALID_HANDLE (0x6) can be triggered.

Close #14356
2023-11-15 18:08:28 +01:00
Don Ho 2337a7b5b6 Fix network shared files saving regression
Cause:
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/14300#issuecomment-1791313760

Solution:
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/14300#issuecomment-1798075334

Enhancement:
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/14300#issuecomment-1804910680

Fix  #14300, close #14344
2023-11-11 01:32:30 +01:00
Dmitry cb1f2d1479 Check NULL pointer while opening filees to prevent Notepad++ from crash
Fix #14131, close #14094
2023-09-17 20:34:25 +02:00
Don Ho b068aa9033 Fix saving files loosing Alternate Data Stream issue
Fix #1498, fix #8451, fix #8013, close #14039
2023-09-14 13:53:51 +02:00
Don Ho 3aa9e9280f Fix session file saving problem if it's read-only
Refactoring and fix a typo.

Fix #14024, fix #13894, fix #13859, close #14035
2023-08-22 13:57:07 +02:00
Alan Kilborn de25873cb3 Add new API: indicator allocation for plugins
Fix #5744, close #13985
2023-08-12 19:44:56 +02:00
Don Ho 391f4281ef Fix leading & tailling spaces being allowed after renaming tab issue
Ref: https://github.com/notepad-plus-plus/notepad-plus-plus/issues/13344#issuecomment-1665687932

Fix #13967, close #13967
2023-08-05 18:59:30 +02:00
xomx 9122dc64fa Fix rejection of the standard filenames with dot at the end (regression)
Currently we cannot accept e.g. the "\\?\C:\file.", but when someone tries to open the standard variant 'C:\file.', we should accept that, as this is the way how to work with filenames without an extension.

Fixes #12849, close #13888
2023-07-16 01:54:20 +02:00
xomx 50f942c880 Fix MD5 dialog title not showing regression
One had to click on the Tools -> MD5 -> Generate from files... twice for showing up the dialog (only for the first time, next time it was ok).
Caused by the previous 'Add SHA-512 hash features' commit.

Close #13891
2023-07-13 10:38:40 +02:00
ozone10 a647991cd7 Fix some GCC and MSC warnings
-  optimize dark mode
-  add initializers

Fix #13867, close #13868
2023-07-07 19:51:39 +02:00
Christian Grasser d6bdc5d3f8 Fix cmake build
- update CMakeLists.txt to contain latest changes sha1 and sha512.cpp
- fixed uppercase issue on cross platform build with mingw on linux

Close #13865
2023-07-06 13:43:11 +02:00
BuzzTheGamer23 0786dc0adc Fix compiling on Scoop mingw-winlibs g++ 13
Fix #13821, close #13822
2023-07-05 13:53:32 +02:00
Don Ho 9e24ec55db Improve lines sorting memory consumption
Use reference instead of copy for the sorting result.
Also improve lines sorting performance slightly: Sorting a 200 MB text file takes 13.71 seconds instead of 14.63 seconds.

Fix #10435, close #13852
2023-07-02 03:32:55 +02:00
Don Ho 4ffd897ccf Add SHA-512 hash features
Fix also SHA-1 hash result wrong length bug while "Treat each line as a separate string" enabled.

Fix #13805, fix #13812, fix #13811, close #13806
2023-06-20 23:19:19 +02:00
Don HO 19c6895f83 Fix gcc compiling failure
Close #13793
2023-06-17 20:15:45 +02:00
Don Ho b883759c83 Add SHA-1 hash feature
Fix #13791, close #13792
2023-06-17 13:25:07 +02:00
Don Ho 7077e304aa Add CSHA1 2023-06-17 03:46:44 +02:00
Don Ho 3b823f358e Add SHA1 hash generator 2023-06-13 19:35:06 +02:00
ozone10 e7f321f21a Add message NPPM_DARKMODESUBCLASSANDTHEME
to allow plugin authors to use generic dark mode.
Unfortunately not for C# plugins.
related #13572

Fix #13574, close #13596
2023-05-28 11:52:14 +02:00
Don Ho 50b81eadef Backup session file in case of its corruption
It could be, in certain unknown circumstances, the session file (session.xml) is saved with the incorrect characters (for example NUL characters) which leads session file corrupted and empty session loaded on the next launch. This commit makes a backup of session file before rewritting it, then check the session file after it having been writting - if written session file is corrupted, the backup session file will be restored, otherwise the backup file will be removed.

Ref:
1. https://github.com/notepad-plus-plus/notepad-plus-plus/issues/6133#issuecomment-1121781830
2. https://github.com/notepad-plus-plus/notepad-plus-plus/issues/6133#issuecomment-1544703701

Fix #13514, close #13648
2023-05-15 05:59:14 +02:00
ozone10 7e6c4b3c6b GUI enhancement: MD5 and SHA256 Hash dialogs
- add accelerators
- add initializers
- optimize dark mod

Fix #13579, close #13580
2023-05-02 16:58:08 +02:00
Don Ho fff5f9b24c Add the UTF8 character ability for Run & Macro menu
Ref: https://github.com/notepad-plus-plus/notepad-plus-plus/issues/13221#issuecomment-1457325172

Fix #12670, fix #13221, fix #13488, close #13538
2023-04-19 02:06:40 +02:00
doug1234 81802e7d77 Fix search results output alignment for large file searches
Fix #13481, close #13482
2023-04-10 15:18:43 +02:00
afalkenhahn d21f7cbf5c Added Hollywood support
Close #13417
2023-03-26 23:39:47 +02:00
zeltop 816fa3e414 Add GDScript language
Adds GDScript language support, autocomplete file, functionlist, default and dark themes.

Fix #13329, close #13335
2023-03-14 23:45:57 +01:00
Robert Di Pardo 01bbebf825 Add MS Transact-SQL
Add built-in support for Microsoft's SQL dialect, Transact-SQL, used by Microsoft SQL Server. This enables Lexilla's dedicated MS SQL lexer.
To preserve the current file extension mapping, the new lexer is mapped to the *.tsql file extension only.
Users can select "Microsoft Transact-SQL" from the Language menu to apply MS SQL Server style to scripts with the *.sql extension.

Keywords and styles copied from https://www.scintilla.org/mssql.properties

Fix #5940, fix #7988, fix #11718, fix #12610, fix #13160, close #13184
2023-03-14 01:03:37 +01:00
Don Ho c8e4e671da Code enhancement: remove some MSVS analisis warning 2023-03-06 17:55:53 +01:00
ozone10 278f694f3a Code enhancement: fix GCC implicit-fallthrough warnings
Fix #13142, close #13143
2023-02-17 15:00:53 +01:00
ozone10 4a4f96cefc Code enhancement: Fix GCC warnings
- fix conversion warnings
- fix missing-field-initializers warnings
- fix unused-parameter warnings
- fix deprecated-copy warnings
- add initializers

Fix #13122, close #13123
2023-02-15 21:06:38 +01:00
Don Ho 03a5c4795b Add new notification for lexer plugin
The NPPN_EXTERNALLEXERBUFFER is sent to plugins with buffer ID (idFrom) when a new lexer is applied to the buffer in question.

Fix #12351, close #13091
2023-02-11 19:20:57 +01:00
Don Ho 4d107e2691 Close doc in document list on middle mouse button up
In 94b83158dc, closing doc in document list was on middle mouse button down.
This commit make it on middle mouse button up (for aligning with closing tab behaviour in Notepad++, also with OS middle mouse button click behaviour).
2023-02-11 18:53:58 +01:00
ozone10 f38195a0da Fix GCC conversion warnings
Fix #13055, close #13056
2023-02-06 20:06:56 +01:00
ozone10 e003f5b45f Code enhancement: Use dlg resource parameters instead of reSizeTo
Fix #12857, close #12858
2023-01-31 19:54:14 +01:00
Don Ho 6e7901ecb3 Fix folder display mess in non-western languges under Macro/Run menu
Fix #12670
2023-01-26 23:32:51 +01:00
Don Ho 535bd8fa0e Use wide char version's function directely (part3)
ref: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/12613#discussion_r1045153278
2023-01-21 21:28:23 +01:00
ozone10 8add866460 Code enhancement: use conformant code
Fix #12818, close #12819
2023-01-21 04:32:56 +01:00
Don Ho 6140865351 Use wide char version's function directely (part2)
ref: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/12613#discussion_r1045153278
2023-01-19 04:12:29 +01:00
Don Ho 432dcb7f15 Use wide char version's function directely (part1)
ref: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/12613#discussion_r1045153278
2023-01-19 02:52:23 +01:00
ozone10 6078ec7369 Replace macro min/max with std::min/std::max
ref https://github.com/notepad-plus-plus/notepad-plus-plus/issues/11147#issuecomment-1365724574

Close #12784
2023-01-10 21:01:36 +01:00
Don Ho bdb06d5c10 Add JSON5 support
Currently, it's only JSONC (with js comment supported).
It will be enhanced in the future.

Usage: set your file to JSON5 via language menu, or change file extension to .json5 or .jsonc.
Note that the keywords and stylers are shared with JSON.

Fix #11676, fix #11713, close #12761
2023-01-06 14:25:19 +01:00
xomx c63c0035f3 Fix saving 4GB+ files file size cutting off issue
This commit fixes invalid 64-bit to 32-bit castings of filesize integers.

Fix #12526, close #12736
2022-12-31 17:52:20 +01:00