Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • G gtksourceview
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 23
    • Issues 23
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 3
    • Merge requests 3
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GNOMEGNOME
  • gtksourceview
  • Merge requests
  • !165

GTK 4 port of GtkSourceView

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Christian Hergert requested to merge wip/chergert/gsv-gtk4 into master Sep 21, 2020
  • Overview 0
  • Commits 248
  • Pipelines 0
  • Changes 186+

This is a substantial branch that includes a major port to GTK 4 as well as notable other features which were implemented on top of this branch while waiting for GTK 4 to be ready enough to land as our development branch.

Notably, this includes:

  • A basic GTK 4 port
  • Move to 5.x ABI (4.x stable branch is available on gtksourceview-4-8 branch series)
  • Changes how renderers are done (they are now widgets) as we've changed the necessary bits in GtkTextView to support that
  • A new abstraction GtkSourceLines to help reduce the overhead of gutter generation which has been a sore spot when it comes to rendering performance. This significantly reduces that overhead by allowing a single pass through line information generation. Renderers then use this to draw generated information.
  • A new snippet engine based upon GNOME Builder's, but with significant changes to be suitable upstream
  • Assistant subsystem to attach popups to textmarks
  • A new completion engine based on GNOME Builder's which allows for much reduced overhead in compiling and displaying results. It also supports Wayland popups more correctly
  • Informative tooltips to provide context information, such as to snippets

There is much stabilizing to do before 5.x is released, but the goal is to have a simultaneous or similar release cycle to GTK 4 this winter as many applications will require this to get started. Therefore, this needs to happen now.

Edited Sep 21, 2020 by Christian Hergert
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: wip/chergert/gsv-gtk4