aboutsummaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)AuthorFilesLines
2 daysadded a dummy RunStyles.cxxHEADsciteco-rel-5-5-7Robin Haberkorn1-0/+0
Allows building Scinterm without removing references to RunStyles.o. 63cee0686964d789e6b53406abcc0bdbed50206a, which removed RunStyles.cxx, is still experimental and not yet merged upstream.
2 daysimplicitly instantiate RunStyles: support ptrdiff_t if it has the same ↵Robin Haberkorn12-378/+272
storage size as int, but does *not* alias it * This is the case e.g. on NetBSD 10 for ARMv6 where Sci::Position == ptrdiff_t == long int, but obviously for other platforms as well, where it causes "invalid conversion" and "undefined symbol" errors. Scintilla was testing for aliasability by comparing the storage size with sizeof() or PTRDIFF_MAX == INT_MAX at the preprocessor level. This was fundamentally flawed. * In LineVector<T>::InsertLines() we are now using the C++17 construct std::is_convertible_v<From*,To*> instead. * We need RunStyles<ptrdiff_t> as well on the affected platforms. AFAIK this is impossible to test for in a constant expression that can be used with the preprocessor. A workaround has been added previously for Haiku: https://groups.google.com/g/scintilla-interest/c/xPXquJUIXo8/m/BLXBpTTgBwAJ The workaround is not very robust, as probably nobody guarantees that ptrdiff_t never aliases on Haiku. If it does, you will suddenly get errors about duplicate template instantiations. Quite possibly, the explicit instantiations of RunStyles were wrong on certain 32-bit Linux variants as well. * We could have tried to explicitly instantiate RunStyles for all scalar types that could possibly be behind ptrdiff_t. Unfortunately, it would result in "possible loss of data" warnings on MSVC. Instead, we now implicitly instantiate RunStyles.
2 daysRevert "support ptrdiff_t if it has the same storage size as int, but does ↵Robin Haberkorn2-7/+5
*not* alias it" This reverts commit 0953ffeee80abdd8e79ddacc7066eb02c78968e7.
2025-08-26support ptrdiff_t if it has the same storage size as int, but does *not* ↵Robin Haberkorn2-5/+7
alias it * This is the case e.g. on NetBSD 10 for ARMv6 where Sci::Position == ptrdiff_t == long int, but obviously for other platforms as well, where it causes "invalid conversion" and "undefined symbol" errors. Scintilla was testing for aliasability by comparing the storage size with sizeof() or PTRDIFF_MAX == INT_MAX at the preprocessor level. This was fundamentally flawed. * In LineVector<T>::InsertLines() we are now using the C++17 construct std::is_convertible_v<From*,To*> instead. * We need RunStyles<ptrdiff_t> as well on the affected platforms. AFAIK this is impossible to test for in a constant expression that can be used with the preprocessor. A workaround has been added previously for Haiku: https://groups.google.com/g/scintilla-interest/c/xPXquJUIXo8/m/BLXBpTTgBwAJ The workaround is not very robust, as probably nobody guarantees that ptrdiff_t never aliases on Haiku. If it does, you will suddenly get errors about duplicate template instantiations. Instead we now instantiate RunStyles for all scalar types that could possibly be behind ptrdiff_t. This will always be more than what is required on any particular platform, but the linker should eliminate unused symbols.
2025-08-22disable automatic scrolling and choosing the X that caret sticks toRobin Haberkorn1-1/+7
* SciTECO needs to avoid automatic scrolling as an optimization. While this works partially by avoiding certain messages like SCI_GOTOPOS (in favor of SCI_SETEMPTYSELECTION), there aren't alternatives for all messages that scroll. For instance SCI_UNDO will always call EnsureCaretVisible(). Also, even if we could avoid all scrolling messages, there is no guarantee that will not suddenly and unexpectedly break in the future. * Instead, every scrolling is now disabled except for an explicit SCI_SCROLLCARET. SciTECO can therefore use the more intuitive messages like SCI_GOTOPOS. * SetLastXChosen() (choosing the X that caret sticks to) has been found to be a major slow down during UNDO and serves no purpose on SciTECO anyway - we have to implement such an algorithm at the SciTECO language level. We therefore simply disable SetLastXChosen().
2025-08-22commented out Editor::SetRepresentations()Robin Haberkorn1-1/+1
* This sets the default key representations on every SCI_SETDOCPOINTER which is very inefficient considering the way that SciTECO uses the Q-Register view. Furthermore it meant, we had to reset the representations to their SciTECO versions again after every SCI_SETDOCPOINTER. * This patch only does not cause problems because we initialize the representations anyway for every Scintilla view. This patch is not meant to be upstreamed!
2025-07-03Feature [feature-requests:#1563]. Move main range in selection serialized form.masterZufu Liu5-41/+54
Avoid processing characters multiple times by relying on from_chars munching digit characters instead of searching for delimiters.
2025-06-26Fix some typos and indentation.Neil4-11/+11
2025-06-22Stop making .BSC file as not needed and shows warnings.Neil1-1/+1
2025-06-17Feature [feature-requests:#1557]. Fix finding sub-line of position inZufu Liu1-10/+8
bidirectional mode which is used for accessibility on macOS with VoiceOver. Avoid out-of-bounds access.
2025-06-17Feature [feature-requests:#1557]. Shorten expression.Zufu Liu1-1/+1
2025-06-12Squash some warnings, mostly by defining constants symbolically.Neil3-22/+26
2025-06-12Bug [#2482]. Force list colours to be opaque.Sven Ritter2-2/+16
Enlarge bitmap to avoid visible blank background between items.
2025-06-08Added tag rel-5-5-7 for changeset ba0e2f317940Neil1-0/+1
2025-06-08Updated release date.rel-5-5-7Neil2-3/+3
2025-06-03Updates for version 5.5.7.Neil9-20/+20
2025-06-01Add SCI_SCROLLVERTICAL API.Neil15-4/+84
2025-05-29Recreate all pixmaps if any null as this may better handle cases where someNeil3-10/+6
allocations succeed and others fail.
2025-05-29Minor validity fixes.Neil1-3/+3
2025-05-28Bug [#2481]. Refresh pixmaps later inside Paint so non-null when dereferenced inNeil2-3/+6
for validity check.
2025-05-25Feature [feature-requests:#1557]. Simplify LineLayout deallocation.Zufu Liu2-25/+3
2025-05-24Remove line end space.Zufu Liu8-8/+8
2025-05-24Change the line wrap memory growth strategy to handle huge documents better.Zufu Liu1-2/+2
Clarify code a little.
2025-05-20Feature [feature-requests:#1557]. Simplify line wrapping.Zufu Liu1-15/+7
2025-05-18Modify wrapping fix to be more efficient.Zufu Liu2-7/+4
https://github.com/notepad-plus-plus/notepad-plus-plus/pull/16373
2025-05-16Feature [feature-requests:#1488]. Update IME cursor position inside retrievejohnsonj2-0/+11
surrounding to better position candidate window.
2025-05-16Fix wrapping bug for UTF-8 where \r\n could wrap between the characters.Neil2-0/+10
https://github.com/notepad-plus-plus/notepad-plus-plus/pull/16373
2025-05-16Silence warning with intermediate constant.Neil1-1/+2
2025-05-15Remove else after return when that clarifies code.Neil1-104/+90
2025-05-13Remove directories no longer included in Scintilla and document Qt.Neil1-2/+2
2025-05-12Add SCI_AUTOC{G,S}ETIMAGESCALE and implement for Qt and GTK.orbitalquark15-14/+97
2025-05-12Fix building for Qt on Linux. Was broken by change 9738 (0327fa0f000b).Neil Hodgson1-1/+1
2025-05-11Feature [feature-requests:#1476]. Fix IME delete surrounding when tentativejohnsonj2-0/+8
composition active.
2025-05-10Change CallTipPosStart to a 'get' to match CallTipSetPosStart.Mitchell Foral1-1/+1
2025-05-06Feature [feature-requests:#1476]. Simplify code for retrieve surrounding text.johnsonj1-17/+2
2025-05-05Bug [#2416]. Reset vertical scroll bar synchronously in SCI_SETDOCPOINTER to fixNeil Hodgson2-0/+7
bug where scroll position not restored in non-wrap mode.
2025-05-03Use noexcept, emplace_back, avoid a cast, and simplify code.Neil2-9/+10
2025-05-03Remove else after return when that clarifies code.Neil1-61/+42
2025-04-27Added a table for virtual space options.Neil1-1/+30
2025-04-26For Korean IME VK_HANJA key, simplify code and avoid duplication and warnings.Neil1-19/+14
2025-04-23Encapsulate IME input context fully in IMContext class. All access to HIMC goesNeil1-71/+86
through this now.
2025-04-23Fix inaccuracy in description of margin 2 which hasn't defaulted to showingNeil1-3/+3
folding symbols for many years.
2025-04-23Added link to video on writing a lexer and using wxStyledTextCtrl.Neil1-0/+2
2025-04-22Silence warnings for else-after, no default in switch, default destructor,Neil1-26/+18
parameter naming.
2025-04-22Move common IME code from platform layers to ScintillaBase.Neil7-89/+34
2025-04-19Decrease warnings for reinterpret_cast since it is a common Win32 idiom to passNeil1-6/+6
pointers as integers to window procedures.
2025-04-19Move most of the implementation of the static ListBoxX::ControlWndProc to theNeil1-22/+25
member function ListBoxX::ListProc so it can directly access state. Stop using GWLP_USERDATA to hold the previous window procedure of subclassed window since it can be stored in the ListBoxX object with better type-safety. Decrease warnings for reinterpret_cast since it is a common Win32 idiom to pass pointers as integers to window procedures.
2025-04-18Control restoring vertical scroll position for undo withNeil7-4/+21
SC_UNDO_SELECTION_HISTORY_SCROLL flag to SCI_SETUNDOSELECTIONHISTORY.
2025-04-17Tweak SC_MARK_BAR to be slightly wider.Neil2-1/+12
2025-04-10Avoid 'magic' number with constexpr and add comments.Neil1-8/+12