Using the composition instead of the multiple inherence
1. For preventing from the diamond problem.
2. To fix the semantic problem by using DPIManagerV2 as class ancestor of class StaticDialog.
Remove also unecessary scaleX, unscaleX, scaleY & unscaleY methods.
Sintilla Release 5.5.0 (https://www.scintilla.org/scintilla550.zip)
Released 23 April 2024.
Add elements for inactive additional selections SC_ELEMENT_SELECTION_INACTIVE_ADDITIONAL_TEXT and SC_ELEMENT_SELECTION_INACTIVE_ADDITIONAL_BACK. When not set these default to SC_ELEMENT_SELECTION_INACTIVE_TEXT and SC_ELEMENT_SELECTION_INACTIVE_BACK. Bug #2417.
On Cocoa, avoid use of NSUserDefaults which will soon require justification when used in applications on the App Store.
Fix Win32 IME crash in windowed mode. Bug #2433.
Scale reverse arrow cursor for margins to match other cursors when user changes pointer size. Bug #2321.
Lexilla Release 5.3.2 (https://www.scintilla.org/lexilla532.zip)
Released 23 April 2024.
COBOL: Stop string literal continuing over line end. Issue #229.
COBOL: Stop doc comment assigning different styles to \r and \n at line end. Issue #229.
COBOL: Recognize keywords that start with 'V'. Issue #230.
COBOL: Recognize comments after tag or that start with '/'. Issue #231.
HTML: Implement substyles for tags, attributes, and identifiers SCE_H_TAG, SCE_H_ATTRIBUTE, SCE_HJ_WORD, SCE_HJA_WORD, SCE_HB_WORD, SCE_HP_WORD, SCE_HPHP_WORD.
HTML: Implement context-sensitive attributes. "tag.attribute" matches "attribute" only inside "tag".
HTML: Match standard handling of comments. Issue #232.
Lua: Implement substyles for identifiers SCE_LUA_IDENTIFIER.
Ruby: Allow non-ASCII here-doc delimiters. Issue #234.
Ruby: Allow modifier if, unless, while and until after heredoc delimiter. Issue #236.
Rust: Recognize raw identifiers. Issue #239, Pull request #240.
Close#15042
- reorder controls for consistent tab switch
- make spacing and position more consistent
- use system aware or gdi scaling for Color dialog and Color popup
ref #14959Close#15029
- StringDlg (Rename Current Tab, ...)
- UDL Styler
- UDL in undock state
- UDL allow tab switching between main dialog and subdialogs
- make controls spacing and size consistent
ref #14959Close#15024
- Run
- Run a Macro Multiple Times...
- Shortcut
- code enhancement
- add override in shortcut.h
- modify switches in WM_COMMAND
- optimize dark mode for shortcut
- avoid potential multiple subclassing for Run dialog
ref #14959Close#15017
Currently while flush file buffers action fails at not critical end session, a error message dialog display the problem.
It raises the problem of some external process interfering with the Notepad++ file saving (via NppSaveAsAdmin plugin).
This commit logs this error at critical end session, so if NUL characters content issue happens to the users again, we can try to know what was happening, plus users' plugin list.
Ref: https://github.com/notepad-plus-plus/notepad-plus-plus/issues/14990#issuecomment-2054242025Close#15003
- fix linux build on include upper/lowercase issue ../src/dpiManagerV2.cpp:20:10: fatal error: CommCtrl.h: No such file or directory
- avoid clang warning: 5>..\src\WinControls\Grid\BabyGrid.cpp(677,7): warning : unused variable 'rectwhole' [-Wunused-variable]
- avoid ../src/NppCommands.cpp:1790:24: warning: conversion from ‘int’ to ‘UCHAR’ {aka ‘unsigned char’} may change value [-Wconversion]
Close#15001
To be able to work with 2GB+ files, we have to use the Scintilla SC_DOCUMENTOPTION_TEXT_LARGE flag.
Until now, this flag was only used if a file > 2GB was to be loaded. For files smaller than 2GB or newly created empty ones, it was not used. This left the room for a Notepad++ crash situation because of the user has been left the possibility to cross this threshold (e.g. by pasting a data which in sum with the already existing ones in the Notepad++ filebuffer exceeds that 2GB...)
So one has two options: either a complex monitoring of the Notepad++ filebuffers size and reloading these with that large-flag when reaching the 2GB or simply using that large-flag as the default one from the start (which is what this patch does...).
Fix#14981, close#14982