commit 0d76a20a4ef82011727f40cf14ddb35eacabb99d (HEAD -> master, tag: 0.77.0)
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jul 3 20:59:02 2024 +0200

    lib: uuid: Accept nil UUIDs

 src/uuid-test.cc | 9 +++++++++
 src/uuid.cc      | 9 ++++++---
 2 files changed, 15 insertions(+), 3 deletions(-)

commit 09451176c767d76c551956e30e4bf8f10ba21eb8
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jul 3 20:57:08 2024 +0200

    emulation: Increase OSC reply length
    
    This is necessary in test mode to process the termprop query reply for
    string, data and uri properties.

 src/vte.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b2ca78c914fc2ea7aac7a213e80b22611f79134a
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jul 3 20:57:08 2024 +0200

    app: Install double test termprop

 src/app/app.cc | 3 +++
 1 file changed, 3 insertions(+)

commit b2e9fc7e12d98228f09d3475450631ae265b630e
Author: Christian Persch <chpe@src.gnome.org>
Date:   Tue Jul 2 18:28:28 2024 +0200

    widget: termprops: Make sure to always set out params

 src/vtegtk.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 4a68971caca57a4fcdc02a6833423ff466f3d65d
Author: Christian Persch <chpe@src.gnome.org>
Date:   Tue Jul 2 18:28:28 2024 +0200

    widget: termprops: Remove reset function
    
    Remove API to reset a termprop for now. Termprop values are set/reset
    from the terminal side, not the API.  They may be added back if a use
    case manifests.

 src/vte/vteterminal.h |  8 --------
 src/vtegtk.cc         | 49 -------------------------------------------------
 2 files changed, 57 deletions(-)

commit d6c5fcbbd47dc6c1f91547a0ef197ffe85ff1c46
Author: Christian Persch <chpe@src.gnome.org>
Date:   Fri Jun 28 18:58:07 2024 +0200

    widget: docs: Docs fixes

 src/vtegtk.cc | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit a701191888af09bab9cdebc3e00e35de4dc06f7a
Author: Christian Persch <chpe@src.gnome.org>
Date:   Fri Jun 28 18:58:07 2024 +0200

    widget: termprops: Allow installing non-well-known termprop aliases
    
    Those must start with "vte.ext.".

 src/vtegtk.cc | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

commit 26c108a8df87d3b50b7f085cb9c02af6fba24d1d
Author: Christian Persch <chpe@src.gnome.org>
Date:   Fri Jun 28 18:58:07 2024 +0200

    widget: termprops: Change title termprop name
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2733#note_2151710

 src/vte/vteglobals.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 47f3924781a9024b16d9e85b2df54385d669dee2
Author: Christian Persch <chpe@src.gnome.org>
Date:   Thu Jun 27 20:55:42 2024 +0200

    widget: termprops: Allow installing non-well-known termprops
    
    Those must start with "vte.ext.".

 src/vtegtk.cc | 21 ++++++++++-----------
 1 file changed, 10 insertions(+), 11 deletions(-)

commit 5c2252e2882b1b386c2137284bece3181977fccf
Author: Christian Persch <chpe@src.gnome.org>
Date:   Thu Jun 27 20:55:42 2024 +0200

    widget: termprops: Inhibit notification when there is no change
    
    On reset, only notify the termprops that actually were reset to
    no-value, not all termprops.

 src/vteinternal.hh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit d8cb83df652a9c65fbac9fb101ca0aa78d2cbf85
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 26 23:00:11 2024 +0200

    widget: termprops: Relax naming rules slightly
    
    Allow digits-only components after the number of required components has
    been reached.
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2732

 src/termprops-test.cc |  5 +++++
 src/termprops.hh      | 12 +++++++-----
 2 files changed, 12 insertions(+), 5 deletions(-)

commit 41f7037ae6de2ea0004357677ed8529736429f16
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 26 19:18:43 2024 +0200

    widget: Add termprops to replace fedora patches
    
    Add termprops to replace the fedora patches adding toolbox support, as
    well as shell precmd/preexec and command completion notification.
    
    Also add code to parse the legacy OSC 777 fedora sequences to set these
    termprops, if enabled and these termprops are installed.
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2734

 src/app/app.cc        |   6 +++
 src/vte/vteenums.h    |  16 +++++++-
 src/vte/vteglobals.h  |  61 +++++++++++++++++++++++++++++
 src/vte/vteterminal.h |   8 +++-
 src/vtegtk.cc         |  94 +++++++++++++++++++++++++++++++++++++++++++-
 src/vtegtk.hh         |   1 +
 src/vteinternal.hh    |  20 ++++++++++
 src/vteseq.cc         | 105 +++++++++++++++++++++++++++++++++++++++++++++++++-
 src/widget.hh         |   3 ++
 9 files changed, 308 insertions(+), 6 deletions(-)

commit 2b51c07434c3349be0ec7943cd9694b575e7dbd3
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 26 19:18:43 2024 +0200

    app: Use termprop for title changes

 src/app/app.cc | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit f8de10f6c7e349bdd3cc3449de76b9c7678a4f6a
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 26 19:18:43 2024 +0200

    widget: Replace some properties with termprops
    
    Use termprops for the window title property. This is just on the API
    side; the sequences to set the property remains OSC 0/2.
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2733

 src/parser-glue.hh      | 11 +++++++++++
 src/vte.cc              | 12 +++---------
 src/vte/vtedeprecated.h |  4 ++++
 src/vte/vteenums.h      |  2 ++
 src/vte/vteglobals.h    | 14 ++++++++++++++
 src/vte/vteterminal.h   |  2 --
 src/vtedefines.hh       |  3 ---
 src/vtegtk.cc           | 28 ++++++++++++++++-----------
 src/vteinternal.hh      |  4 +---
 src/vteseq.cc           | 50 +++++++++++++++++++++++++++++++++++++------------
 10 files changed, 90 insertions(+), 40 deletions(-)

commit f44e1c207d49cf33a3efe57f5cc68948c18675c8
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 26 19:18:43 2024 +0200

    widget: termprops: Inhibit notification when there is no change
    
    When setting the cwd or cwf termprops to their current value, or resetting
    an already-reset termprop, don't notify.

 src/termprops-test.cc | 10 +++---
 src/termprops.hh      | 15 ++++----
 src/vtegtk.cc         | 38 +++++++--------------
 src/vteinternal.hh    | 11 +++---
 src/vteseq.cc         | 94 +++++++++++++++++++++++++--------------------------
 5 files changed, 79 insertions(+), 89 deletions(-)

commit 383d5c06e4fe0658a9eed13a43fb40e753f966ba
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 26 19:18:43 2024 +0200

    widget: termprops: Inhibit notification when there is no change
    
    When setting a termprop to its current value, or resetting an
    already-reset termprop, don't notify.

 src/vteseq.cc | 25 ++++++++++++++++---------
 1 file changed, 16 insertions(+), 9 deletions(-)

commit 9a6bc16e234758a8f4e3309527880ee8e65c34df
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 26 19:18:43 2024 +0200

    widget: termprops: Always allow reset via termprop OSC
    
    Allow to reset all termprops via the termprop OSC, even for termprops
    that cannot be set via the termprop OSC.

 src/vteseq.cc | 41 +++++++++++++++++++++++++++--------------
 1 file changed, 27 insertions(+), 14 deletions(-)

commit b4481add89c8f4c0d357997a275826cdca55422e
Author: Christian Persch <chpe@src.gnome.org>
Date:   Thu Jun 20 18:43:25 2024 +0200

    widget: termprops: More termprop tests
    
    Test that termprop values parse to the original value when re-parsed
    from their string representation

 src/termprops-test.cc | 9 +++++++++
 1 file changed, 9 insertions(+)

commit a7aa95cba528af126cba2c4bfd6ab56fda6fbd57
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 19 22:16:33 2024 +0200

    widget: termprops: Implement termprop query
    
    Only in debug builds, and only exposed in test mode. This will be used
    by esttest to test the termprop OSC.

 src/color-parser.cc |  49 ++++++++++++++-
 src/color-parser.hh |  21 +++++++
 src/color-test.cc   |  59 +++++++-----------
 src/color.hh        |   9 +--
 src/termprops.hh    | 169 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/vteinternal.hh  |   8 ++-
 src/vteseq.cc       |  50 +++++++++++++++-
 7 files changed, 317 insertions(+), 48 deletions(-)

commit b0a71dde0b04399a5c31b8fb3bf168f92a6854f6
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed Jun 19 22:16:33 2024 +0200

    widget: termprops: Rework installing built-in termprops

 src/termprops.hh |  2 +-
 src/vtegtk.cc    | 63 +++++++++++++++++++++++++++++++++++++++-----------------
 src/vteseq.cc    |  2 +-
 3 files changed, 46 insertions(+), 21 deletions(-)

commit 4bb767c342c099cafffb760cd0e7a255a72e9578
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sat Jun 15 21:11:58 2024 +0200

    widget: Replace some properties with termprops
    
    Use termprops for the current directory and current file URI
    properties.  This is just on the API side; the sequences to
    set these remain OSC 7 and 6, resp.
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2734

 src/vte.cc              |  16 ++------
 src/vte/vtedeprecated.h |   8 ++++
 src/vte/vteenums.h      |  15 +++++++
 src/vte/vteglobals.h    |  28 +++++++++++++
 src/vte/vteterminal.h   |   7 ++--
 src/vtegtk.cc           | 102 ++++++++++++++++++++++++++++++++++++++++++------
 src/vteinternal.hh      |  14 ++++---
 src/vteseq.cc           |  50 +++++++++++++++---------
 src/widget.hh           |  13 ++++++
 9 files changed, 202 insertions(+), 51 deletions(-)

commit 00d680f685ba15893fad76e15702a50580f45dea
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sat Jun 15 21:11:58 2024 +0200

    widget: termprops: Add URI type

 src/glib-glue.hh      |   1 +
 src/meson.build       |   2 +-
 src/termprops-test.cc |  24 +++++++++++
 src/termprops.hh      |  23 +++++++++-
 src/vte/vteenums.h    |   2 +
 src/vte/vteterminal.h |   8 ++++
 src/vtegtk.cc         | 117 +++++++++++++++++++++++++++++++++++++++++++++++---
 7 files changed, 168 insertions(+), 9 deletions(-)

commit 2b66579a50e43192ba12a068b47634f4314ae8d0
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sat Jun 15 21:11:58 2024 +0200

    parser: sixel: Recognise but not implement DECGCH

 src/parser-cat.cc    |  6 ++++++
 src/sixel-context.hh | 20 ++++++++++++++++++++
 src/sixel-parser.hh  |  4 ++--
 src/sixel-test.cc    |  7 +++++++
 4 files changed, 35 insertions(+), 2 deletions(-)

commit 17b3ca6d3224479eb545cf11185c29c6b1aefc9e
Author: Christian Hergert <chergert@redhat.com>
Date:   Mon Jun 10 12:41:35 2024 -0700

    fonts: ensure ref of font from glyph item analysis
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2789

 src/fonts-pangocairo.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 99d34f31d1e330944dd42bebc7d67e539205b2e0
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Jun 9 21:57:01 2024 +0200

    lib: More constexpr

 src/uuid.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit de6412e373dccde81277e3531ced9aa5b5f9a5fa
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Jun 9 21:57:01 2024 +0200

    widget: termprops: Rename function

 src/vte/vteterminal.h | 12 ++++++------
 src/vtegtk.cc         | 24 ++++++++++++------------
 2 files changed, 18 insertions(+), 18 deletions(-)

commit c2fd196b4347ea8dca44c7440d378b5fa29232ae
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Jun 9 21:57:01 2024 +0200

    emulation: Implement DECRQSS for DECSLPP

 src/parser-reply.hh | 1 +
 src/vteseq.cc       | 6 +++++-
 2 files changed, 6 insertions(+), 1 deletion(-)

commit fd5511f24b7269195a7083f409244e9787c705dc
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Jun 2 19:13:15 2024 +0200

    emulation: Restrict resize request to sane numbers
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2786

 src/vteseq.cc | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

commit 1803ba866053a3d7840892b9d31fe2944a183eda
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Jun 2 19:13:15 2024 +0200

    widget: Add safety limit to widget size requests
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2786

 src/vtegtk.cc | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

commit 19d82f68d47f3d684a363bd965c7d5abc3dc72d5
Author: Christian Persch <chpe@src.gnome.org>
Date:   Thu May 30 18:57:56 2024 +0200

    spawn: Use O_CLOEXEC for g_unix_open_pipe
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2777

 src/spawn.cc | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

commit e198b94a6c3a5ec0fbea60b766f5e19d5b402805
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sat May 25 00:02:25 2024 +0200

    widget: Make CSS parse warnings non-fatal
    
    This avoids aborting when newer gtk+ versions trigger warnings in the
    built-in CSS like gtk 4.15 does for the deprecation of "@define-color"
    and named colours.
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2784

 src/app/app.cc | 7 ++++++-
 src/vtegtk.cc  | 5 ++++-
 2 files changed, 10 insertions(+), 2 deletions(-)

commit e3b1110aae2fbd3cf97f3c8b7286f15fc68b23e1
Author: Christian Persch <chpe@src.gnome.org>
Date:   Thu May 23 23:34:34 2024 +0200

    emulation: Add function to collect parameter rectangle
    
    This will be used in implementing the rectangle functions.

 src/vteinternal.hh | 12 ++++++++
 src/vteseq.cc      | 82 ++++++++++++++++++++++++++++++++++++++----------------
 2 files changed, 70 insertions(+), 24 deletions(-)

commit 7bd6b7ca83d5f5eaa2dbc0ec0f0964ba84ea9405
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed May 22 23:15:13 2024 +0200

    build: a11y: Fix unused function warning on gtk < 4.15

 src/vteaccess-gtk4.cc | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 744aba66d2dcef568f6556dd932f4e1d0047b72f
Author: Christian Persch <chpe@src.gnome.org>
Date:   Wed May 22 23:15:13 2024 +0200

    draw: minifont: Split into multiple classes
    
    Split the Minifont code into the main Minifont class which uses cairo to
    draw the characters; MinifontCache which caches the characters and uses
    Minifont to draw into the cache, and MinifontGsk which special-cases
    some simple characters composed only of rectangles, and uses
    MinifontCache to draw the rest of the characters.

 src/drawing-cairo.cc   |   21 +-
 src/drawing-cairo.hh   |    5 +
 src/drawing-context.cc |    2 +-
 src/drawing-context.hh |    3 -
 src/drawing-gsk.cc     |    2 +-
 src/drawing-gsk.hh     |    2 +
 src/minifont.cc        | 1878 ++++++++++++++++++++++++++++--------------------
 src/minifont.hh        |   88 ++-
 8 files changed, 1192 insertions(+), 809 deletions(-)

commit 9d4e38343c93bc0866997dfe4ebdc12d4e1ae7a8
Author: Tau Gärtli <git@tau.garden>
Date:   Mon May 20 22:55:53 2024 +0200

    lib: Use strong types for colour indices
    
    ... and refactor OSC colour handling to use these.
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2781

 src/color-palette.hh |  75 +++++++++++++++++++++++
 src/meson.build      |   3 +
 src/osc-colors.cc    |  96 +++++++++++++++++++++++++++++
 src/osc-colors.hh    |  83 ++++++++++++++++++++++++++
 src/parser-glue.hh   |  25 +++++++-
 src/vte.cc           |  78 +++++++++++++++++-------
 src/vtedefines.hh    |   4 --
 src/vtegtk.cc        |   2 +-
 src/vteinternal.hh   |  28 +++++----
 src/vteseq.cc        | 166 +++++++++++++++++++++------------------------------
 10 files changed, 420 insertions(+), 140 deletions(-)

commit f9ca107adf18b58fecb30db662f9b94335676788
Author: Guntupalli Karunakar <karunakar@indlinux.org>
Date:   Tue May 7 17:10:20 2024 +0000

    Update Hindi translation

 po/hi.po | 131 ++++++++++++++++++++++++++++++++++++---------------------------
 1 file changed, 74 insertions(+), 57 deletions(-)

commit fdbd5d240e417a71a6ae74e565ca75707fe48605
Author: Christian Hergert <chergert@redhat.com>
Date:   Mon Apr 29 17:37:23 2024 -0700

    a11y: implement get_offset and get_extents for GTK 4
    
    This implements the new GtkAccessibleTextClass.get_offset and
    GtkAccessibleTextClass.get_extents virtual functions. These add support
    for finding the offset at a given x,y coordinate in widget coordinates as
    well finding the area covered by two offsets.

 src/vteaccess-gtk4.cc | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 122 insertions(+)

commit f426e721078ec3549481506d7685a1bdca331b50
Author: Egmont Koblinger <egmont@gmail.com>
Date:   Wed Apr 17 21:37:53 2024 +0200

    emulation: Fix the reported bold/etc. color if unset
    
    Bold color, if unset, now reports the foreground color. Unsupported
    underline/blink/reverse/italic colors also report the foreground color.
    
    Fixes https://gitlab.gnome.org/GNOME/vte/-/issues/2768

 src/vteseq.cc | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

commit c7325bc2540a582eaac5ce206c0ed95bd18bd279
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Apr 14 22:28:56 2024 +0200

    widget: Add API to list installed termprops

 src/app/app.cc       | 11 +++++++++++
 src/vte/vteglobals.h |  3 +++
 src/vtegtk.cc        | 43 +++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 57 insertions(+)

commit 5131bfb2a835341f5ba59976ae79b18c0f047ecf
Author: Christian Persch <chpe@src.gnome.org>
Date:   Fri Apr 5 21:26:49 2024 +0200

    widget: termprops: Use [u]int64_t for integer termprops
    
    [u]intmax_t is a bit useless anyway, and not supported by
    introspection.

 src/termprops-test.cc |  2 +-
 src/termprops.hh      |  8 ++++----
 src/vte/vteterminal.h |  8 ++++----
 src/vtegtk.cc         | 34 +++++++++++++++++-----------------
 4 files changed, 26 insertions(+), 26 deletions(-)

commit 065fc6add567fa2b7bb115f214d0130443dfe6d4
Author: Christian Persch <chpe@src.gnome.org>
Date:   Fri Apr 5 21:26:49 2024 +0200

    widget: termprops: Return also the termprop name from query()
    
    ... to allow querying the name of an alias termprop's target.

 src/vte/vteglobals.h |  1 +
 src/vtegtk.cc        | 12 +++++++++++-
 2 files changed, 12 insertions(+), 1 deletion(-)

commit 2acd77061f47a4a7174418795fd087394d58f1f0
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Mar 31 23:43:26 2024 +0200

    docs: README: Clarify status of tarballs

 README.md | 5 +++++
 1 file changed, 5 insertions(+)

commit 693283f741dd9dda6f736a134cca999d8ae025f1
Author: Rachida SACI <rgebbid@gmail.com>
Date:   Sat Mar 30 10:40:06 2024 +0000

    Add Kabyle translation

 po/LINGUAS |  1 +
 po/kab.po  | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 60 insertions(+)

commit c7d6dd66f5769d8577dce34eff1c0a895cbabf1c
Author: Christian Persch <chpe@src.gnome.org>
Date:   Tue Mar 26 18:44:39 2024 +0100

    app: Fix the build with clang++
    
    emplace_back() makes clang++ 15.0.7 error out here, for some reason.
    Changing to use push_back() works, so go with that.

 src/app/app.cc | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

commit b23e56fb3a77608ee155a5db7b9037ece21f428b
Author: Christian Persch <chpe@src.gnome.org>
Date:   Tue Mar 26 18:44:39 2024 +0100

    app: Don't use typeof
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2770

 src/app/app.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4a79d85527e1435c5078f559faff9b731eefea32
Author: Christian Hergert <chergert@redhat.com>
Date:   Mon Mar 25 13:12:58 2024 -0700

    terminal: fix UTF-8 bounds check
    
    We do not want to dereference if we've reached the end of the chunk.
    This matches the bounds check above.
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2769

 src/vte.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3aa672788f8e5fc3a767b7c69872dcc39f637811
Author: Egmont Koblinger <egmont@gmail.com>
Date:   Fri Mar 22 08:34:01 2024 +0100

    widget,emulation: Support delivering horizontal mouse scrolling events
    
    ... and support up to 15 mouse buttons.
    
    Fixes https://gitlab.gnome.org/GNOME/vte/-/issues/2765

 src/vte.cc         | 139 ++++++++++++++++++++++++++++++-----------------------
 src/vteinternal.hh |   5 +-
 src/vteseq.cc      |   3 +-
 src/widget.cc      |   3 +-
 4 files changed, 85 insertions(+), 65 deletions(-)

commit 86074ccede977bf2a594b781821c4a80c0343872
Author: Zander Brown <zbrown@gnome.org>
Date:   Tue Mar 19 20:51:57 2024 +0100

    widget: Also set tag when returning no match
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2763

 src/vte.cc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit aeb663ae4b204afe1d9d89092f0773a8ba7aa871
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Mar 17 22:49:25 2024 +0100

    app: Add built-in CSS to hide scrolled-window over-scroll indicators

 src/app/app-gtk3.css           |  8 ++++++
 src/app/app-gtk3.gresource.xml |  1 +
 src/app/app-gtk4.css           |  8 ++++++
 src/app/app-gtk4.gresource.xml |  1 +
 src/app/app.cc                 | 57 ++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 75 insertions(+)

commit 45fdfb8496c77583582d8861ee3d547bbbf39fe3
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Mar 17 22:49:25 2024 +0100

    app: Don't hide scrolled-window option

 src/app/app.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8e9524712866d93339c3cc87d2854ba3a7633dd0
Author: Christian Persch <chpe@src.gnome.org>
Date:   Fri Mar 15 22:12:24 2024 +0100

    build: Bump gtk4 req version

 meson.build    | 2 +-
 src/app/app.cc | 2 +-
 src/widget.cc  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 1109aad798c47b30c7af04c1771983d3f48f5b7d
Author: Egmont Koblinger <egmont@gmail.com>
Date:   Tue Mar 12 23:12:44 2024 +0100

    gtk3: draw: minifont: Don't do minifont caching
    
    On gtk3, painting from the minifont cache seems to be slower than
    painting the glyph in the first place, so don't use a cache.
    
    Fixes https://gitlab.gnome.org/GNOME/vte/-/issues/2757

 src/minifont.cc | 30 +++++++++++++++++++++++-------
 1 file changed, 23 insertions(+), 7 deletions(-)

commit f3cc41dcbc4e6967155790e3bbd597042ee5af76
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Wed Mar 13 21:36:39 2024 +0100

    widget: Activate OSK on button release
    
    Currently, make it mutually exclusive with having started a selection,
    other heuristics might be added here (e.g. making it also mutually exclusive
    with unselecting text, or not issuing the call for cases where text input
    is known to be ignored.
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2630

 src/vte.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 4c21cff3a72a946cbd39fae15acc4515484c4ea6
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Wed Mar 13 21:36:39 2024 +0100

    widget: Add im_activate_osk() method
    
    This method makes the GtkIMContext request an OSK to be activated.
    Currently supported on the Wayland platform.
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2630

 src/widget.cc | 8 ++++++++
 src/widget.hh | 1 +
 2 files changed, 9 insertions(+)

commit 7c9d6b28eed993d22b915cbf2aa37219ae5a4326
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Mar 10 22:46:21 2024 +0100

    draw: Fix Rectangle constuctors

 src/drawing-context.hh | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 57596ed4c59b02b849ac8d213ed3f3b3fcb1ec58
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Mar 10 22:46:21 2024 +0100

    draw: Remove unused functions

 src/drawing-context.cc | 37 -------------------------------------
 src/drawing-context.hh |  5 -----
 2 files changed, 42 deletions(-)

commit e649ba6990dc90b14f8137afe3e08ed964b41b87
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sun Mar 10 22:46:21 2024 +0100

    draw: Remove draw_text_internal
    
    To simplify the code, remove draw_text, move its debugging
    into the draw_text_internal function, and rename draw_text_internal
    back to draw_text.

 src/drawing-cairo.cc   | 23 +++++++++++++++++++----
 src/drawing-cairo.hh   |  9 ++++-----
 src/drawing-context.cc | 24 ------------------------
 src/drawing-context.hh | 12 ++++--------
 src/drawing-gsk.cc     | 23 +++++++++++++++++++----
 src/drawing-gsk.hh     |  9 ++++-----
 6 files changed, 50 insertions(+), 50 deletions(-)

commit e31607ba89fa9dc4f11f6be85a0afe3213ec3650
Author: Zander Brown <zbrown@gnome.org>
Date:   Sun Mar 3 16:24:18 2024 +0000

    a11y: Fix the build
    
    Since `WITH_A11Y` is always defined, a `defined()` check leads to link
    errors when `WITH_A11Y == 0`.
    
    Likewise `GTK_ACCESSIBLE_ROLE_TERMINAL` was only introduced in 4.13.9,
    thus `WITH_A11Y == 1` can fail despite passing the configure check for
    4.13.
    
    See: https://gitlab.gnome.org/GNOME/gtk/-/commit/64316ab185a88a1c612d87d7eb931ec69be1a90e
    Fix: https://gitlab.gnome.org/GNOME/vte/-/commit/c8d7967fa766eec3931ff5e43cb09e64be75b15c

 meson.build   | 2 +-
 src/vtegtk.cc | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit a9104708265d49cd0bcacfb6e3dd7dfddc27dbb1
Author: Christian Hergert <chergert@redhat.com>
Date:   Sat Mar 2 21:03:55 2024 +0100

    fonts: Allow unknown coverage to silently pass through
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2747

 src/drawing-cairo.cc | 1 -
 src/drawing-gsk.cc   | 3 ++-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit a11a765246ed76060a23cd5f0454ac4a4609ef33
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sat Mar 2 18:59:34 2024 +0100

    widget: Fix end alignment
    
    This fixes a regression from commit
    5a242c232bec00a905176f26a30630ff66606a95.
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2752

 src/vteinternal.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 7403da8000467c551cf3c7c569fba24e44e2c234
Author: Christian Persch <chpe@src.gnome.org>
Date:   Sat Mar 2 18:59:34 2024 +0100

    app: Rework argument parsing
    
    ... and add loading/saving options from/to a key file.

 src/app/app.cc   | 1033 +++++++++++++++++++++++++++++++++++++++++++-----------
 src/glib-glue.hh |    1 +
 2 files changed, 835 insertions(+), 199 deletions(-)

commit c8d7967fa766eec3931ff5e43cb09e64be75b15c
Author: Christian Hergert <chergert@redhat.com>
Date:   Wed Feb 7 11:47:15 2024 -0800

    a11y: implement GtkAccessibleText
    
    This is an initial implementaiton of GtkAccessibleText which was added
    to GTK for 4.14. It attempts to implement things in a very similar
    fashion to the previous code for GTK 3 although considerable effort was
    made to simplify and improve readability as to how it works.
    
    Currently, this supports reading back what you type and what has changed
    on screen. It is not yet 1:1 what the GTK 3 a11y implementation did
    because ATK was doing many other things (including proxying keyboard
    keys) to the other side of the a11y bus. That appears to improve
    readback by screen readers in the form of "backspace" and what character
    was deleted.
    
    I expect things to get closer to 1:1 but that work is going to have to
    be done inside of GTK itself first and should not require much if
    anything here.
    
    A new VteTerminal:enable-a11y feature flag property has been added
    because I'm concerned about enabling this by default until the a11y bus
    learns to be more lazy. Currently there is no way to "do nothing" until
    a peer (e.g. screenreader) is interested in the contents.
    
    Ideally, we would have a short-circuit like is currently implemented
    by checking vte_terminal_get_enable_a11y() to avoid any sort of
    contents calculation when there are no a11y observers.
    
    It also allows disabling the GTK 3 a11y implementation just to keep
    some symmetry between the APIs.
    
    Currently, this does not implement "text-scrolled" like the GTK 3
    implementation does as I'm not sure yet if there is a benefit.
    
    Fixes: https://gitlab.gnome.org/GNOME/vte/-/issues/2753

 meson.build           |   6 +-
 src/app/app.cc        |   4 +
 src/meson.build       |  13 +-
 src/vte.cc            |  11 +
 src/vte/vteterminal.h |   7 +
 src/vteaccess-gtk4.cc | 874 ++++++++++++++++++++++++++++++++++++++++++++++++++
 src/vteaccess-gtk4.h  |  25 ++
 src/vteaccess.cc      |  21 ++
 src/vtegtk.cc         |  97 +++++-
 src/vtegtk.hh         |   1 +
 src/vteinternal.hh    |   8 +
 11 files changed, 1057 insertions(+), 10 deletions(-)

commit bcf9db0d628478c7870ed1c84c1c454a9120594f
Author: Egmont Koblinger <egmont@gmail.com>
Date:   Wed Feb 28 09:21:06 2024 +0100

    widget: gtk4: Fix the look of outline block cursor in the first column
    
    Fixes https://gitlab.gnome.org/GNOME/vte/-/issues/2749

 src/vte.cc | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

commit 9afff2333a5a0049681fd793ac560e992ab76c5f
Author: Christian Hergert <chergert@redhat.com>
Date:   Tue Feb 27 11:58:02 2024 -0800

    ringview: inline get_bidirow()
    
    This is called frequently during Terminal::draw() and reduces overhead
    there on release builds a decent amount. I didn't quanitfy exactly without
    bidi patches applied, but it approaches double digits.

 src/ringview.cc | 10 ----------
 src/ringview.hh |  9 ++++++++-
 2 files changed, 8 insertions(+), 11 deletions(-)

commit 81888fedc1da9c11cb8287e5f6d9436acb3c57f4
Author: Christian Hergert <chergert@redhat.com>
Date:   Tue Feb 27 11:15:51 2024 -0800

    bidi: inline log2vis() and vis2log()
    
    These are called frequently during drawing. Inlining the fast path is
    extremely useful here to keep that overhead low.
    
    Hoist it into the caller for roughly a 4.5% reduction in drawing time
    using scrolling a large file in vim as the test case.

 src/bidi.cc | 24 ------------------------
 src/bidi.hh | 22 ++++++++++++++++++++--
 2 files changed, 20 insertions(+), 26 deletions(-)

commit b6e8f8d11e1e921490e19118b2d75ffbe4046a3e
Author: Christian Hergert <chergert@redhat.com>
Date:   Tue Feb 27 10:07:40 2024 -0800

    terminal: inline hot path of cell_is_selected_log()
    
    This function appears to be called a lot, especially during high scrolling
    scenarios (such as ctrl+f/ctrl+b in vim). There is a typical fast path
    which is that ring is updated and there is no selection. Hoist that into
    the callers and leave the selection case behind a function call.
    
    This shaves about 1.5% of application samples off time spent in
    Terminal::draw().

 src/vte.cc         |  2 +-
 src/vteinternal.hh | 20 ++++++++++++++++++--
 2 files changed, 19 insertions(+), 3 deletions(-)

commit cafd0e1314ca2a77dba38dc04b84085a198dbae1
Author: Christian Hergert <chergert@redhat.com>
Date:   Tue Feb 27 10:13:13 2024 -0800

    terminal: annotate unlikely paths in determine_colors()
    
    This gets called extremly often so ensuring that we keep the common path
    tight is important. This is good for about 2% of application samples
    in the case of scrolling with ctrl+f/ctrl+b in vim.

 src/vte.cc | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit b748432ef20dd87ebbb2b11a420fc4dc32aa2fc4
Author: Christian Hergert <chergert@redhat.com>
Date:   Tue Feb 27 10:33:03 2024 -0800

    terminal: remove determine_colors() invisible check
    
    This is called very frequently.
    
    The invisible check, which should be unnecessary, is about 2.8% of
    application samples in a tight scrolling loop with vim doing
    ctrl+f/ctrl+b.

 src/vte.cc | 9 ---------
 1 file changed, 9 deletions(-)

commit 4637dd9729fbf9001154a1d962746227860ffb4b
Author: Egmont Koblinger <egmont@gmail.com>
Date:   Sat Feb 24 18:56:41 2024 +0100

    Revert "widget: Limit select-all to the writable region not including the scrollback"
    
    This reverts commit caf8a6a7a17a3f70fa5fc611c71ffb27a5cfee75.
    
    Also bump GLib requirement to include their fix, and add an API comment
    discouraging the use of large scrollback sizes.
    
    Fixes https://gitlab.gnome.org/GNOME/vte/-/issues/2504

 meson.build   | 8 ++++----
 src/vte.cc    | 9 +++------
 src/vtegtk.cc | 3 +++
 3 files changed, 10 insertions(+), 10 deletions(-)

commit 2010409c9f708f840fb5b30b3cb6ef5628765ec4
Author: Marko Mäkelä <msmakela@gmail.com>
Date:   Sat Feb 24 15:37:59 2024 +0100

    vte.sh: Avoid warning if shell is configured with 'set -u'
    
    Followup of commit e148105691926cbd4861e7dc26dec194f59c7f14.
    
    Bug-Debian: https://bugs.debian.org/1063941

 src/vte.sh.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b6d52dc3bab5bab9c902abedeff62eda16238d1e
Author: Christian Persch <chpe@src.gnome.org>
Date:   Fri Feb 23 21:38:57 2024 +0100

    widget: Set scroll-on-insert to false by default
    
    https://gitlab.gnome.org/GNOME/vte/-/issues/2743

 src/vteinternal.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d1f72ebe5e2dfb269f0ff92a9cfef88ea7324864
Author: Christian Hergert <chergert@redhat.com>
Date:   Wed Feb 21 14:26:07 2024 -0800

    scheduler: add 10hz fallback scheduler
    
    If we fail to get updates from the window manager and/or compositor, then
    fallback to a 10hz scheduler that will ensure we still make progress on
    incoming PTY data.
    
    This fixes a situation where the GdkFrameClock will not advance while the
    window is hidden in GNOME Shell using Super+H.

 src/meson.build    |   2 +
 src/scheduler.cc   | 158 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/scheduler.h    |  31 +++++++++++
 src/vte.cc         |  24 +++-----
 src/vteinternal.hh |   2 +-
 5 files changed, 201 insertions(+), 16 deletions(-)

commit e55af605d1139d86b388ccfb4eefafe879952fa0
Author: Christian Persch <chpe@src.gnome.org>
Date:   Thu Feb 22 21:54:49 2024 +0100
