Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
10 days | Revert "support ptrdiff_t if it has the same storage size as int, but does ↵ | Robin Haberkorn | 1 | -2/+1 | |
*not* alias it" This reverts commit 0953ffeee80abdd8e79ddacc7066eb02c78968e7. | |||||
2025-08-26 | support ptrdiff_t if it has the same storage size as int, but does *not* ↵ | Robin Haberkorn | 1 | -1/+2 | |
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-01-22 | Bug [#1224]. Remember selection in undo history. SCI_SETSELECTIONUNDOHISTORY. | Neil | 1 | -0/+4 | |
2024-11-26 | Bug [#2458]. Add include of cstdint to provide intptr_t and uintptr_t. | Neil | 1 | -0/+1 | |
2024-07-28 | Add SCI_GETUNDOSEQUENCE to determine whether an undo sequence is active and its | Neil | 1 | -0/+4 | |
nesting depth. | |||||
2024-03-08 | Reformat with astyle. | Neil | 1 | -2/+2 | |
2024-03-02 | Feature [feature-requests:#1511] Add mayCoalesce argument to BeginUndoAction. | John Ehresman | 1 | -2/+2 | |
2024-02-27 | Restore change history to the extent possible when restoring undo history. | Neil | 1 | -59/+74 | |
2024-02-18 | Restore change history when restoring undo history. | Neil | 1 | -0/+58 | |
2024-02-16 | Implement detach point access with SCI_SETUNDODETACH and SCI_GETUNDODETACH. | Neil | 1 | -4/+12 | |
Write more documentation for undo history. | |||||
2024-02-15 | Perform validation of undo state when SCI_SETUNDOCURRENT called, setting status | Neil | 1 | -2/+2 | |
when invalid. | |||||
2024-02-09 | Implement API to read and write undo history from applications. | Neil | 1 | -0/+48 | |
2024-02-09 | Avoid overhead of extra start actions that delimited user operations. Now relies | Neil | 1 | -7/+7 | |
on mayCoalesce flag to indicate that a user operation is complete when false. | |||||
2024-02-01 | Store undo text in ScrapStack, a single allocation instead of one allocation per | Neil | 1 | -16/+6 | |
step. This saves about 50% for a long sequence of single byte actions. | |||||
2024-02-01 | Add UndoAction class as internal type for undo actions and make Action a struct | Neil | 1 | -25/+16 | |
that is used for reporting undo steps to Document. This will allow further minimization of undo memory use. | |||||
2024-02-01 | Move UndoHistory into its own module that is accessible from CellBuffer and | Neil | 1 | -288/+34 | |
tests but hidden from most of Scintilla. Access through std::unique_ptr. | |||||
2024-01-27 | Use noexcept where reasonable. | Neil | 1 | -16/+16 | |
2024-01-27 | Feature [feature-requests:#1458] Reduce memory used for undo actions. | Zufu Liu | 1 | -9/+4 | |
2023-12-08 | Throw error when allocating more than 2G without SC_DOCUMENTOPTION_TEXT_LARGE. | Neil | 1 | -0/+4 | |
2023-11-19 | Add const where possible. | Neil | 1 | -1/+1 | |
2023-11-19 | Fix type conversion warning. | Neil | 1 | -1/+1 | |
2023-10-26 | Implement LineEnd method in CellBuffer as it is a basic function and only uses | Neil | 1 | -0/+27 | |
CellBuffer fields. Declare LineEnd noexcept as it should never throw and that allows methods calling it to also be noexcept. Call LineEndPosition to simplify Editor::LineSelectionRange. | |||||
2023-06-25 | Strip line end white-space. | Neil | 1 | -1/+1 | |
2022-09-19 | Stop turning on change history when there are steps that can be undone as | Neil | 1 | -1/+1 | |
performing undo before start of change history can crash. | |||||
2022-07-31 | Added change history which can display document changes (modified, saved, ...) | Neil | 1 | -0/+94 | |
in the margin or in the text. | |||||
2022-07-30 | Add cast functions to simplify code and avoid warnings. | Neil | 1 | -24/+41 | |
Change targetAct type to avoid type widening warnings. | |||||
2022-07-30 | Apply rule-of-zero to CellBuffer internals. | Neil | 1 | -14/+0 | |
2022-07-29 | Apply rule-of-zero to delete standard methods where possible as handled by | Neil | 1 | -8/+1 | |
contained types. This allows flexibility as most lower-level data types can be moved and SplitVector and Partitioning of non-move-only types may be copied. CellBuffer still needs destructor due to incomplete type so retains all standard operations. | |||||
2021-10-26 | Explicit constructors. | Neil | 1 | -1/+1 | |
2021-10-26 | Ensure variables initialized. | Neil | 1 | -1/+1 | |
2021-08-24 | Remove line end white space. | Neil | 1 | -1/+1 | |
2021-07-15 | Feature [feature-requests:#1370] Implement SCI_ALLOCATELINES to allocate indices | Zufu Liu | 1 | -0/+23 | |
to hold some number of lines. This is an optimization that can decrease reallocation overhead. | |||||
2021-07-15 | Feature [feature-requests:#1381] Move SplitView to header so it can be used more | Neil | 1 | -0/+15 | |
widely. Ensure that case where all text is after the gap is as efficient as when all text is before the gap. | |||||
2021-05-24 | Define C++ version of the Scintilla API in ScintillaTypes.h, ScintillaMessages.h | Neil | 1 | -53/+56 | |
and ScintillaStructures.h using scoped enumerations. Use these headers instead of Scintilla.h internally. External definitions go in the Scintilla namespace and internal definitio0ns in Scintilla::Internal. | |||||
2021-05-20 | Prefer Sci::invalidPosition to INVALID_POSITION as Scintilla.h will eventually | Neil | 1 | -1/+1 | |
not be visible to most code. | |||||
2021-05-05 | Avoid some warnings in ResetLineEnds. | Neil | 1 | -3/+3 | |
2021-04-05 | Change actionType to an enum class. | Neil | 1 | -27/+27 | |
2021-03-18 | std::optional is a basic vocabulary type that may be used widely so include | Neil | 1 | -0/+1 | |
almost everywhere. | |||||
2021-03-18 | Move assert and debug trace functions into their own header Debugging.h. | Neil | 1 | -2/+1 | |
PLATFORM_ASSERT is used in data structure headers which led to including graphics and windowing APIs in data structure modules. | |||||
2021-03-17 | Extract geometry and colour definitions from Platform.h into src/Geometry.h. | Neil | 1 | -0/+1 | |
2020-06-11 | Use noexcept where safe and maintainable. | Neil | 1 | -1/+1 | |
2020-05-19 | Encapsulate common check for PS, LS, and NEL as UTF8IsMultibyteLineEnd. | Neil | 1 | -6/+3 | |
Avoids construction of temporary array. | |||||
2020-05-04 | Feature [feature-requests:1347]. Optimize large insertions by using a | Zufu Liu | 1 | -29/+122 | |
table-driven line end discovery algorithm and performing line insertions in batches. | |||||
2020-05-02 | Optimize LineVector by maintaining an activeIndices field to avoid calling | Neil | 1 | -30/+34 | |
LineStartIndex::Active. | |||||
2020-03-24 | Use noexcept where possible. | Neil | 1 | -19/+23 | |
2019-11-01 | Avoid calling vector::shrink_to_fit in destructors as it is not noexcept. | Neil | 1 | -1/+0 | |
The destructors of the members will ensure that everything is correct. Potential unhandled exceptions reported by Coverity. | |||||
2019-09-28 | Remove virtual call in constructor to stop warnings. | Neil | 1 | -1/+0 | |
Init was not needed in LineVector as each field is constructed to a good state. This code worked correctly before this change. | |||||
2019-09-26 | Remove extraneous check. | Neil | 1 | -3/+1 | |
2019-06-04 | Fix extra white space. | Neil | 1 | -2/+2 | |
2019-06-04 | Bug [#2104]. Use '%.0f' and casts to double to fix printf format string bugs. | Neil | 1 | -4/+8 | |
This will extend valid maximum position from 31-bits to 53-bits which is ample. |