aboutsummaryrefslogtreecommitdiffhomepage
path: root/gtk/ScintillaGTKAccessible.cxx
AgeCommit message (Collapse)AuthorFilesLines
2019-04-05Bug [#2095]. gtk: Accessible: emit the text deletion signal before deletionColomban Wendling1-7/+3
This allows the accessibility layer to request detail, such as which characters have been deleted. ATK will query the deleted range to report the data that was removed, so it must still be available for the query to give a correct answer. So, emit the signal in BEFOREDELETE instead of DELETETEXT.
2019-04-05Bug [#2094]. gtk: Accessible: use the built-in character position cacheColomban Wendling1-10/+6
It's quite a lot faster even after trying and optimizing the custom version, and it makes the code simpler. Also improve ByteOffsetFromCharacterOffset() to make use of the cache, making it drastically faster.
2019-03-29Include "CharacterCategory.h" in all files that include "Document.h" as it willNeil1-0/+1
be needed for adding a CharacterCategory feature.
2019-03-27Fix problem with MinGW which defines NOMINMAX itself.Neil1-0/+1
2019-03-27Replace NULL/0 with nullptr. Mark noexcept where simple.Neil1-47/+47
Move some static functions into anonymous namespace.
2019-03-27Add <algorithm> for std::min/max. Standardize on _WIN32 to gate Win32 features.Neil1-1/+3
Protect from windows.h definition of min/max.
2019-01-07Stop variable shadowing. This makes the code easier to understand and improvesNeil1-1/+1
performance very slightly.
2018-05-14Include <string_view> to allow future use in Platform interface and Unicode.Neil1-0/+1
2018-05-02Decrease use of casts and replace reinterpret_cast with static_cast.Neil Hodgson1-1/+1
2018-03-24Feature [feature-requests:#1212]. Move Unicode conversions into UniConversion.Zufu Liu1-1/+0
Move Unicode conversion functions UnicodeFromUTF8 and UTF8FromUTF32Character into UniConversion.
2018-03-15Use forward class definitions of XPM and RGBAImage so only code that uses themNeil1-1/+0
needs to #include "XPM.h". Move definition of standard methods on LineMarker from header to implementation to reduce included text and further isolate use of XPM and RGBAImage.
2017-09-11The Scintilla namespace is always active for internal symbols and for the lexerNeil1-2/+0
interfaces ILexer4 and IDocument.
2017-08-28New header ILoader.h defines ILoader interface as it does not belong in ↵Neil1-0/+1
ILexer.h.
2017-05-21Make SparseVector work with move-only types.Neil1-0/+1
Define UniqueString as a move-only string and use in a SparseVector for ContractionState. Remove SparseVector method specializations that are no longer needed.
2017-04-01Standardize on C++ headers, remove headers that aren't needed and add <cstddef>Neil1-2/+3
where it may be needed in the future.
2017-03-31Using Sci::Position and Sci::Line to mark variables that are document positionsNeil1-29/+29
and lines.
2017-03-08Bug [#1910]. Fixed more duplicate code.Neil1-7/+0
2017-03-07Bug [#1910]. Accessibility support may be queried and, on GTK+, disabled.Neil1-0/+23
2017-03-06Use several C++11 features as examples so problems with these features are seen.Vicente1-0/+1
Features used are move constructor, unique_ptr, deleted functions, enum class, lambda expression, and range for loop.
2017-03-04Use C++11 keyword "override" for methods that override a base class.Neil1-1/+1
2017-02-21Bug [#1910]. GTK a11y: Speed up converting byte offsets to character offsetsColomban Wendling1-0/+7
Use a per-line cache to avoid re-computing the offset from the start of the buffer each time. This dramatically speeds up multiple replacements on large files.
2017-02-26Bug [#1907]. GTK: Fix crash after destroying the widget on GTK < 3.3.6Colomban Wendling1-1/+3
On GTK2 and GTK3 < 3.3.6 there is no GtkAccessibleClass::widget_unset() method, so we can't destroy our accessible object right away. So, to avoid accessing a destroyed widget, we need to check whether the widget still exists in the the ScintillaGTKAccessible destructor. In other methods it's not necessary because the wrapping GObject class makes sure not to forward other when the widget has been destroyed, but we still have to destroy the C++ instance no matter what, so the check has to be on this side.
2017-02-08Bug [#1907]. GTK: Prevent running signal handlers on a destroyed a11y objectColomban Wendling1-0/+1
Avoid crash when detaching the widget from the accessible object without destroying that widget. In such situations, the widget is still valid but we will have destroyed the orphaned accessible object. Thus, we must make sure we disconnected the signal handlers the late accessible had set up on the widget, as they won't be implicitly disconnected by widget finalization in this case.
2016-12-18GTK: Ensure styles are valid when retrieving them for accessibility purposesColomban Wendling1-3/+4
2016-12-18GTK: Fix reporting deletion length in the accessibleColomban Wendling1-2/+8
We cannot compute the length in characters after the text has been deleted, so we need to compute it in BEFOREDELETE. However, we need to emit the signal once the buffer has actually changed, so we need to cache the value in-between those events.
2016-12-18GTK: Fix off-by-one error in accessible attribute runsColomban Wendling1-3/+3
2016-12-18GTK: Fix accessible object lifetime on GTK < 3.8Colomban Wendling1-20/+20
2016-10-24GTK: Add some documentation on accessible object reference ownershipsColomban Wendling1-0/+22
2016-10-26Include windows.h on Windows and provide a ATK_CHECK_VERSION if not defined.Neil1-0/+8
2016-10-23Bug [#1874]. GTK: Avoid warnings about unused parametersColomban Wendling1-2/+2
Either remove the parameter name if it is never used, or mark it with G_GNUC_UNUSED when it might be used depending on some preprocessor flags.
2016-10-21Initial accessibility support for the GTK platform v7Colomban Wendling1-0/+1197