241 Commits

Author SHA1 Message Date
ozone10
1214319839 Don't reset style & icons, when changing dark tone
Improve title bar dynamic redraw when changing mode.

Fix #10049, fix #10196, close #10272
2021-07-28 17:03:47 +02:00
Don Ho
7c82c523b6 Add "Switch to Document List" command for shortcut
Fix #9015
2021-07-26 19:07:38 +02:00
ozone10
7c4a428e47 Make dark colors consistent
1. Make dark colors consistent for panel toolbars.
2. Make dark colors consistent style configurator edit controls.
3. Make dark colors consistent for docking elements.

* BackgroundColor(), BackgroundBrush() – should be used for items which have some interactions, or need to be different from Darker variant.
* DarkerBackgroundColor(), DarkerBackgroundBrush() – should be used for static/top backgrounds.
* SofterBackgroundColor(), SofterBackgroundBrush() – should be used for items , which have interactions, or have focus.

Fix #10242, close #10243
2021-07-26 15:00:49 +02:00
Ashfaaq18
7b1e6546a1 Make Document List Panel togglable and shortcutable via View menu
1. Toggle toolbar item and view menu item for Document List Panel.
2. Added standard, filledFluent, darkmode->toolbar->(fluent and filledfluent) icons for the Document List Panel toggle.
3. Working shortcut for the Document List Panel under shortcut mapper.
4. Removed show document panel from the preference menu, kept the extension option.
5. Rename "Doc Switcher" to "Document list".

Fix #3526, fix #9015, close #10214
2021-07-23 16:14:22 +02:00
ozone10
8bf11be0b5 Restore edit zone border in dark mode
Restore functionality for option No edge in preference when using dark mode.

Fix #10205, close #10211
2021-07-21 23:53:01 +02:00
ozone10
066ef8a4a0 Make dark mode restartless
Fix #10121, close #10122
2021-07-09 12:25:49 +02:00
mere-human
6a4ef408f2 Fix GCC compiler warnings in Notepad++
Fix #10037, close #10048
2021-06-23 12:49:06 +02:00
ozone10
ffbf3af029 Make DarkMode title bar to apply on all dialog on dark mode
Also remove border from clipboard history panel.

Close  #10023
2021-06-20 19:09:35 +02:00
Adam D. Walling
7e139e1ba2 Remove menubar white line under dark mode
Fix #9984, close #9985
2021-06-11 20:15:09 +02:00
Don HO
8a898bae3f Add new API NPPM_ADDTOOLBARICON_FORDARKMODE for darkmode
Usage:
void NPPM_ADDTOOLBARICON_FORDARKMODE(UINT funcItem[X]._cmdID, toolbarIconsWithDarkMode iconHandles)

This new API NPPM_ADDTOOLBARICON_FORDARKMODE is for replacing obsolete NPPM_ADDTOOLBARICON which doesn't support the dark mode.
2 formats / 3 icons are needed:  1 * BMP + 2 * ICO
All 3 handles below should be set so the icon will be displayed correctly if toolbar icon sets are changed by users, also in dark mode.
	struct toolbarIconsWithDarkMode {
		HBITMAP	hToolbarBmp;
		HICON	hToolbarIcon;
		HICON	hToolbarIconDarkMode;
	};

Close #9928
2021-06-01 01:36:07 +02:00
Don HO
46b3e3c7b2 Fix wrong plugin toolbar icon display if the ICO format is absent
An empty icon will be displayed after this fix.
2021-05-29 16:56:02 +02:00
Adam D. Walling
1089e239ba Add the capacity to customize the color of Notepad++ (not only dark)
1. Customizable colors easily handled now by tweaking a few custom drawing implementations.
2. make dark mode less intense by default.

Close #9848
2021-05-10 12:14:03 +02:00
Adam D. Walling
85aaef2fba Dark Mode independent of OS setting
Close #9802
2021-04-27 01:38:24 +02:00
Adam D. Walling
5a3bf49c86 Add Dark Mode for not attracting bugs
Toolbar, status bar, tab bar, menu bar, dark scrollbar, handle switching between light and dark, docking splitters and headers, flicker fixes. Minor tweaks to DarkMode.h. Mostly handles the dark mode request for the main interface for #7692 and also follows the windows system theme settings like #9183.

Fix #9183, fix #7692, close #9587
2021-04-23 16:22:57 +02:00
Don HO
15b7a26c87 Remove unecessary const type qualifier 2021-04-16 02:37:05 +02:00
Don HO
1a9307b02d Add padding options in the edit zonze
Fix #2323
2021-04-11 19:59:30 +02:00
Don HO
92038c1653 Make struct VisibleGUIConf conform to coding standard 2021-04-07 18:02:30 +02:00
Udo Hoffmann
5c884a80c6
Add "Find in Projects" features
Close #8125, close #9534
2021-02-27 23:58:17 +01:00
Don HO
dbac42edd0
Use unary operator '!' instead of "not" 2021-02-20 04:44:34 +01:00
Don HO
ab5c1d3e2a
Upgrade Notepad++ License
Update GPL version from v2 to v3.

Fix #9425, close #9441
2021-01-24 01:51:19 +01:00
Scott Sumner
aca736b766
Fix logic bug in NPPM_SETLINENUMBERWIDTHMODE
Fix #9338, close #9340
2021-01-03 00:04:54 +01:00
Don HO
c9c2d1e376
Add an option for displying constant line number width
1. Add an option for displying constant line number width in Preferences dialog.
   This option set the line number constant width according the total line number in the document (minimun 4 digits).
   It ensures no unexpected visual effect while scrolling content vertically.
   If the document content is modified and the total number of lines is increased or decreased, more digits will be added or removed according the number of digits in total number of lines.

2. Add new plugin messages NPPM_GETLINENUMBERWIDTHMODE & NPPM_SETLINENUMBERWIDTHMODE for getting or setting LINENUMWIDTH_DYNAMIC / LINENUMWIDTH_CONSTANT.
   So plugins may send NPPM_SETLINENUMBERWIDTHMODE message with LINENUMWIDTH_CONSTANT to Notepad++ for avoiding some unexpected visual effect (while scrolling).

Fix #5670
2020-12-06 16:38:53 +01:00
Don HO
7874f8dab3
Add new API NPPM_GETSETTINGSONCLOUDPATH for plugins
#define NPPM_GETSETTINGSONCLOUDPATH (NPPMSG + 98)
	// INT NPPM_GETSETTINGSCLOUDPATH(size_t strLen, TCHAR *settingsOnCloudPath)
	// Get settings on cloud path. It's useful if plugins want to store its settings on Cloud, if this path is set.
	// Returns the number of TCHAR copied/to copy. If the return value is 0, then this path is not set, or the "strLen" is not enough to copy the path.
	// Users should call it with settingsCloudPath be NULL to get the required number of TCHAR (not including the terminating nul character),
	// allocate settingsCloudPath buffer with the return value + 1, then call it again to get the path.

Close #9168
2020-11-19 04:29:50 +01:00
Udo Hoffmann
d155f0326a
Add context menu with "Copy link" ability
Close #2435, close #9154
2020-11-17 03:47:09 +01:00
Scott Sumner
c28116a04f
Add color samples on menu items for styling features
Fix #8983, close #9089
2020-11-02 15:15:37 +01:00
Don HO
71ae2cfce6
Fix dialogs remain issue after minimizing to systemtray
Fix #9044
2020-10-22 04:35:07 +02:00
Udo Hoffmann
41d619d9b7
Fix Floating dockable panels don't minimize to system tray issue
Fixes #8928, close #8953
2020-10-22 00:45:50 +02:00
Udo Hoffmann
0a20939334
Fix URLs losing the underlines occasionally issue
Improve URL update on resize

The reason for the effect is, that the addHotSpot calls for resizing are in the WM_SIZE of the application. This works, as long as the size of the whole application changes, but not, when the application size remains constant and only the size of the document window inside the application changes.

The solution for this is, to remove the addHotSpot calls from the WM_SIZE of the application and add them to the DocTabView::reSizeTo function instead. Since addHotSpot cannot be called directly from this function, I took the detour over NPPM_INTERNAL_UPDATECLICKABLELINKS.

Fix #9032, close #9034
2020-10-21 03:06:32 +02:00
Udo Hoffmann
5aab1ddbf1
Make tray icon work again in administrator mode
Fix #8528, close #8944
2020-10-04 16:51:23 +02:00
Don HO
bb175082d2
Fix the build error 2020-09-30 04:47:32 +02:00
Don HO
285172e36b
Make alternate icons of Tab bar changing dynamically 2020-09-30 03:33:37 +02:00
Udo Hoffmann
1a37b64fe6
Avoid unnecessary notifications
This is an enhancement of PR #8475 which fixed (and still fixes) #8466.

It takes into account, that `WM_ACTIVATE` is not called only, when the window is being activated, but also, when the window is being **de**activated. In the latter case it is not necessary to do the activation actions.

This was pointed out to me by @Predelnik, who had a problem with the additional `SCN_UPDATEUI/SC_UPDATE_H_SCROLL` notification occurring when the window is being deactivated, see https://github.com/Predelnik/DSpellCheck/issues/221#issuecomment-696652074 for details.
2020-09-28 23:16:28 +02:00
Udo Hoffmann
783798e1ab Enable project panels toggle from menu
Close #8533
2020-08-11 00:04:16 +02:00
Udo Hoffmann
267da64d33
Fix wrong horizontal scroll bar position after restoring Window position
Fix #8466, close #8475
2020-06-30 20:58:15 +02:00
Udo Hoffmann
5e2e167d3e
Fix Save function in Windows dialog
Fix #8455, close #8478
2020-06-30 19:39:33 +02:00
Udo Hoffmann
f657618887
Fix URL underline always black, invisible in dark themes
Fix #8405, close #8409
2020-06-16 21:02:52 +02:00
Scott Sumner
71b98a7a28
Add ability to find-all in selected text
Fix #7927, close #8133, close #8213, close #5089, close #8413
2020-06-16 01:39:19 +02:00
Udo Hoffmann
4738c96318
Fix clickable links break syntax highlighting issue
By using indicators instead of stylers to make code shorter and cleaner.

Fix #999, close #8263
2020-05-15 17:49:23 +02:00
Don HO
c3ec0cbf6e
Make vertical edge (column marker) usage easier
Simplify the UI to make vertical edge easy to use.
2020-04-17 16:20:34 +02:00
Don HO
cc2c9b7740
Implement multi-line edge feature
Close #3128
2020-04-13 04:15:32 +02:00
Don HO
3de506bf48
Update copyright
Close #5919
2020-04-04 23:03:18 +02:00
Don HO
62efa463b0 Fix Notepad++ doesn't exit correctly while Windows 10 update restart
If Windows 10 update needs to restart, and Notepad++ has one (some) dirty document(s), and "Enable session snapshot and periodic backup" is not enabled, then WM_ENDSESSION is send with wParam == FALSE, not waiting for WM_QUERYENDSESSION's treatment finish. In this case Notepad++ should quit after saving its current session.

Fix #6086, fix #5831, fix #7854
2020-02-24 03:57:15 +01:00
Don HO
6e6341cc61
Make some codes conform to the defined coding style 2020-01-28 02:20:44 +01:00
Don HO
7a1096de5b
Make filling find field of Find dialog with selected word(s) optional
Close #3243
2019-12-25 13:32:40 +05:00
Rajendra Singh
3a1244177c
Code enhancement: Function arguments pass by reference
Close #6063
2019-08-18 01:16:23 +02:00
Don HO
06db9ee338
Code improvement for NppParameters 2019-08-14 22:13:24 +02:00
Don HO
bbc55d06f2
Code improvement for WcharMbcsConvertor 2019-08-14 01:54:56 +02:00
Don HO
2c764d7221
Code improvement for FileManager 2019-08-14 01:32:01 +02:00
Don HO
4a80a125c0
Fix the crash due to NPPM_DESTROYSCINTILLAHANDLE message
Destroying allocated Scintilla makes Notepad++ crash because created Scintilla view's pointer is added into _referees of Buffer object automatically.
The deallocated scintilla view in _referees is used in Buffer::nextUntitledNewNumber().

So we do nothing here and let Notepad++ destroys allocated Scintilla while it exit and we keep this message for the sake of compability withe the existing plugins.

Fix #4487, close #1500, close #5949
2019-07-26 09:39:52 +02:00
Rajendra Singh
1a97d3c854
Workarround to MS ReadDirectoryChanges bug
This is an workaround to deal with Microsoft issue in ReadDirectoryChanges notification
If command prompt is used to write file continuously (e.g. ping -t 8.8.8.8 > ping.log)
Then ReadDirectoryChanges does not detect the change.
The workarround is about using Notepad++ notification while Notepad++ getting focus.

Close #5773
2019-06-14 11:23:06 +02:00