summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* bufferoutputstream: be defensive about dereferencing nul bytegtksourceview-5-4Christian Hergert2023-04-271-1/+2
| | | | | | | | If we don't own the buffer, then we don't have a guarantee that the buffer is one byte bigger than any count/length we've received. Mke sure to only dereference that byte when we do. Related #309
* Add Abkhazian translationNart Tlisha2023-01-062-0/+776
|
* Update Belarusian translationVasil Pupkin2022-12-071-110/+161
|
* hover: don't show assistant if hover display is emptyChristian Hergert2022-07-113-3/+13
|
* hover: fix positioning of assistantsChristian Hergert2022-07-111-7/+0
| | | | This was changed to be buffer coordinates and should be replicated here.
* build: pin sysprof 3-44 for CIChristian Hergert2022-06-241-1/+2
| | | | | This had lots of changes in master, so we should pin to the release that matches this version of GtkSourceView.
* Merge branch 'meson-libxml2' into 'gtksourceview-5-4'Christian Hergert2022-06-241-2/+13
|\ | | | | | | | | build: Also try finding libxml2 with CMake See merge request GNOME/gtksourceview!267
| * build: Also try finding libxml2 with CMakeChun-wei Fan2022-06-241-2/+13
|/ | | | | | | | | | | | | | | | | | | | For Windows builds of libxml2, one may be using its supplied NMake Makefiles to build libxml2, which do not have complete pkg-config files, or use CMake, which optionally crafts its pkg-config files that may need some tinkering for proper use. Instead, save from such issues to try finding again libxml2 with CMake, which actually manually search for libxml2's headers and libraries like what we used to do, for us, if a proper pkg-config file cannot be found by Meson, before we resort to the fallback. If at one point we require Meson 0.60.0 (or so) or later, we can just put the package strings that we want to search for in a form like ['libxml-2.0', 'LibXml2'], but let's just do this for the time being. The "LibXml2" format follows the CMake docs at [1]. [1]: https://cmake.org/cmake/help/latest/module/FindLibXml2.html
* Release GtkSourceView 5.4.25.4.2Christian Hergert2022-06-121-1/+1
| | | | See NEWS for release information.
* NEWS: update release notes for 5.4.2Christian Hergert2022-06-121-0/+37
|
* gutterrenderer: allow opting out of query_dataChristian Hergert2022-06-121-5/+15
| | | | | | | | That callback is not necessarily needed in many cases and will cause signal emission (for better compatibility with older GtkSourceView). So check for NULL and skip that in the hot path for cases where we know it won't be used such as some high-priority subclasses.
* perl.lang: fix POD =begin keywordMatt Merhar2022-06-122-2/+37
| | | | | | | | | | | | | | There were two issues: - The first regex was matching =end as well - The wrong capture variable was being referenced in the =end regex These led to =end being completely ignored, causing syntax highlighting to cease for anything after the initial =begin (including =cut). This also modifies the file.pl test cases to include a section of POD that'll break highlighting without this commit applied. An example of __END__ was added as well. The POD in the file additionally now renders properly with 'perldoc'.
* solarized: add styling for diffsChristian Hergert2022-06-122-0/+14
| | | | | | | | | This makes things look somewhat similar to Solarized patch viewing in other editors. The change-line is kept yellow instead of orange since that isn't really used for display anywhere notable, yet can be used by IDE tooling for the gutters and orange is too close to red there.
* .gitlab-ci.yml: bump fedora imageChristian Hergert2022-06-121-2/+6
| | | | | - Update to Fedora 36 - Add some additional packages to reduce what needs to be built
* assistants: measure and present togetherChristian Hergert2022-06-121-1/+8
| | | | And avoid if there is no surface yet or not visible.
* snippets: jump to iter instead of scrollingChristian Hergert2022-06-121-1/+29
| | | | | | | | And update the informative immediately afterwards as the visible rect will have changed. This doesn't use jump_to_iter because we don't care about any particular alignment and this seems to get the job done more correctly.
* assistant: take visible rect coords and gutter into accountChristian Hergert2022-06-121-0/+21
| | | | Otherwise we'll only place things correctly on the first visible page.
* assistant: remove unnecessary present callsChristian Hergert2022-06-121-4/+0
| | | | These appear to be unnecessary.
* snippets: avoid creating informative until necessaryChristian Hergert2022-06-121-12/+24
| | | | | This fixes GtkSourceStyleSchemePreview so that it doesn't create a new informative for every widget. GtkSourceMap as well.
* snippet: be a bit more defensive with snippetsChristian Hergert2022-06-121-4/+10
|
* testsuite: reset vim regiseters between runsChristian Hergert2022-06-121-0/+5
| | | | | Now that we (more correctly) have vim registers shared between GtkSourceVim stacks, we need to reset them before each test case.
* vim: make register state globalChristian Hergert2022-06-121-48/+28
| | | | | | | | So that they can be shared between instances of GtkSourceView with a vim controller attached. This moves the state global rather than the register object global which caused issues with leave/enter semantics.
* vim: add API to reset registersChristian Hergert2022-06-122-0/+18
| | | | We want to use this internally with tests.
* testsuite: compare strv using set comparisonChristian Hergert2022-06-121-13/+40
| | | | | | | | The two strv should be compared in such a way that the complete set is in both strv but in any order and no more. Just a general set theory comparison of the two strv. Based on suggestion from Sébastien Wilmet on discourse.gnome.org.
* completion: hide before clearing valuesChristian Hergert2022-06-121-1/+1
| | | | This just results in doing less work while the widget is already hidden.
* completion: protect against spinning while doing updatesChristian Hergert2022-06-121-1/+13
| | | | | This turns out to happen more than anticipated, and could cause us to get into a situation where we loose allocations on the source view.
* completion: avoid updates before visible rowChristian Hergert2022-06-121-2/+7
| | | | But only when the offset will not change (added == removed).
* map: protect against spurious adjustment notificationsChristian Hergert2022-06-121-6/+24
| | | | | | Sometimes GtkTextView will cause us to get notifications when things didn't really change. This protects against that with a cached value so that we can more readiliy avoid extraneous size allocations.
* Update Friulian translationFabio Tomat2022-05-071-84/+109
|
* hover: dismiss hover when cursor movesChristian Hergert2022-04-271-1/+62
| | | | This will dismiss a pending hover if the user moves the cursor first.
* hover: ignore synthesized motionChristian Hergert2022-04-271-0/+6
|
* Adwaita-dark.xml: add styling for common markdown featuresChristian Hergert2022-04-271-1/+3
| | | | Related #265
* c.lang: highlight C99 Unicode escapesElias Aebi2022-04-271-1/+3
|
* snippets: avoid empty strings for snippetsChristian Hergert2022-04-271-2/+8
|
* gutter: ensure prelit calculation is includedChristian Hergert2022-04-271-7/+62
|
* gutterlines: include quark for selected linesChristian Hergert2022-04-271-0/+15
| | | | This was missing from the implementation by accident it appears.
* Release GtkSourceView 5.4.15.4.1Christian Hergert2022-04-212-1/+23
|
* Revert "gutterlines: add helper to check for any quark set"Christian Hergert2022-04-212-26/+0
| | | | | | This reverts commit 67d6e60d7382cc3236825749b272e1dd7489bdf9. This shouldn't have been backported.
* vim: handle setting NULL client-widget on GtkIMContextChristian Hergert2022-04-211-30/+34
|
* map: react to changes in GtkSourceView:right-margin-positionChristian Hergert2022-04-211-6/+11
| | | | | | This ensures we go through a resize-cycle when the right-margin-position is updated in the linked GtkSourceView. Otherwise our size will not update with the linked view.
* styleschemepreview: Simplify layout and use box-shadow for stylesAlexander Mikhaylenko2022-04-212-19/+11
| | | | | Make it more flexible so apps can e.g. add .card and get libadwaita styles on it.
* gutterlines: add helper to check for any quark setChristian Hergert2022-04-212-0/+26
|
* gutter: include extra line in gutter rangeChristian Hergert2022-04-211-0/+8
| | | | | | It can be helpful to have an extra line before/below when rendering gutter contents so that you can fill in information you need based on a single neighboring line.
* Adwaita-dark.xml: set cursor colorChristian Hergert2022-04-211-0/+1
| | | | Fixes #263
* map: improve fallback map overlay stylingChristian Hergert2022-04-212-24/+41
| | | | | | | | Rather than hardcoding specialized values in fallback schemes, we should generate better values automatically as some schemes in the whild will be missing these values anyway. Fixes #260
* assistants: don't force measurementsChristian Hergert2022-04-211-21/+0
| | | | | | This code existed before the simplified gtk_popover_present() implementation and it shouldn't be necessary anymore. It only breaks sizing making it grow significantly anyway.
* assistants: remove size hack during repositionChristian Hergert2022-04-211-24/+1
| | | | | This shouldn't be necesary anymore and gets in the way now that present should basically be doing the right thing in GTK.
* assistantchild: remove use of layout managerChristian Hergert2022-04-211-22/+44
| | | | | | If we use a layout manager, we will never get a size_allocate call which we are expecting to setup various assistant positionings. Since we have a simple bin setup, we can just do the size_allocate and measure manually.
* completioncell: short-circuit common reset pathsChristian Hergert2022-04-211-1/+31
| | | | | If code paths are resetting a cell which is essentially already empty, then we want to short-circuit and do nothing.
* completioncell: add gi-doc for set_text()Christian Hergert2022-04-211-0/+7
|