From b574e541026bd76838f7cfa7803951117204e452 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Tue, 9 Apr 2019 11:28:37 +0200 Subject: [PATCH 1/5] Update to 0.56.1 --- .gitignore | 1 + sources | 2 +- vte291.spec | 5 ++++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index b29ef41..37aa25f 100644 --- a/.gitignore +++ b/.gitignore @@ -49,3 +49,4 @@ /vte-0.55.90.tar.xz /vte-0.55.92.tar.xz /vte-0.56.0.tar.xz +/vte-0.56.1.tar.xz diff --git a/sources b/sources index 6d11e23..86af47e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vte-0.56.0.tar.xz) = f366ed4a28a896ba919184b50a55ee110eae43127847f34c049684bcb9b81327d1b72e9d871b2a5b7f7fa12f3f4aa721ac3d770770b600dca9c433cb2c674915 +SHA512 (vte-0.56.1.tar.xz) = 74a6404d4e8f13e8b006c59e8cd63e660407ef217c1f80bfd7d0b72c395411558929760c1d98eea9ecb9010df725506c31c953b23e541c03f4a8a93e78066436 diff --git a/vte291.spec b/vte291.spec index 48750ec..07c60b8 100644 --- a/vte291.spec +++ b/vte291.spec @@ -5,7 +5,7 @@ %global pcre2_version 10.21 Name: vte291 -Version: 0.56.0 +Version: 0.56.1 Release: 1%{?dist} Summary: Terminal emulator library @@ -103,6 +103,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la %{_sysconfdir}/profile.d/vte.sh %changelog +* Tue Apr 09 2019 Kalev Lember - 0.56.1-1 +- Update to 0.56.1 + * Mon Mar 11 2019 Kalev Lember - 0.56.0-1 - Update to 0.56.0 From d5b7a0f98780b3444e6be202795b5fcee3650d74 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 6 May 2019 11:51:04 +0200 Subject: [PATCH 2/5] Update to 0.56.2 --- .gitignore | 1 + sources | 2 +- vte291.spec | 5 ++++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 37aa25f..7411a12 100644 --- a/.gitignore +++ b/.gitignore @@ -50,3 +50,4 @@ /vte-0.55.92.tar.xz /vte-0.56.0.tar.xz /vte-0.56.1.tar.xz +/vte-0.56.2.tar.xz diff --git a/sources b/sources index 86af47e..09ffbe3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vte-0.56.1.tar.xz) = 74a6404d4e8f13e8b006c59e8cd63e660407ef217c1f80bfd7d0b72c395411558929760c1d98eea9ecb9010df725506c31c953b23e541c03f4a8a93e78066436 +SHA512 (vte-0.56.2.tar.xz) = 8327a77abdfd97d7feda358e767046054ee24f9302c9187f2979e22c0034d4a6e9bf271fc327b866a43b404d7fe50ac36d1a4aebd58340744bdde24ecaa415ad diff --git a/vte291.spec b/vte291.spec index 07c60b8..778b3a0 100644 --- a/vte291.spec +++ b/vte291.spec @@ -5,7 +5,7 @@ %global pcre2_version 10.21 Name: vte291 -Version: 0.56.1 +Version: 0.56.2 Release: 1%{?dist} Summary: Terminal emulator library @@ -103,6 +103,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la %{_sysconfdir}/profile.d/vte.sh %changelog +* Mon May 06 2019 Kalev Lember - 0.56.2-1 +- Update to 0.56.2 + * Tue Apr 09 2019 Kalev Lember - 0.56.1-1 - Update to 0.56.1 From b338bdc00b5a64eae3470ecce5153898352a5af2 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Tue, 7 May 2019 03:31:09 +0200 Subject: [PATCH 3/5] Update to 0.56.3 --- .gitignore | 1 + sources | 2 +- vte291-command-notify-scroll-speed.patch | 92 ++++++++++++------------ vte291.spec | 7 +- 4 files changed, 53 insertions(+), 49 deletions(-) diff --git a/.gitignore b/.gitignore index 7411a12..82c1b17 100644 --- a/.gitignore +++ b/.gitignore @@ -51,3 +51,4 @@ /vte-0.56.0.tar.xz /vte-0.56.1.tar.xz /vte-0.56.2.tar.xz +/vte-0.56.3.tar.xz diff --git a/sources b/sources index 09ffbe3..6d62c77 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vte-0.56.2.tar.xz) = 8327a77abdfd97d7feda358e767046054ee24f9302c9187f2979e22c0034d4a6e9bf271fc327b866a43b404d7fe50ac36d1a4aebd58340744bdde24ecaa415ad +SHA512 (vte-0.56.3.tar.xz) = f78b3d532ca47e53c1bb51db6780697ce4692d493c0030d2dc4beb63a2595e44a43eb409ee31b94e4551eae259ac1baa8f06825a02fd66df8352e192f4ea1988 diff --git a/vte291-command-notify-scroll-speed.patch b/vte291-command-notify-scroll-speed.patch index 3e11c5e..7927488 100644 --- a/vte291-command-notify-scroll-speed.patch +++ b/vte291-command-notify-scroll-speed.patch @@ -1,4 +1,4 @@ -From 040c43f2edb0f3179febbed36f37bc1fbc77dbcf Mon Sep 17 00:00:00 2001 +From a28b812b67b99aafcd3ea436e5155d2abdf9fafa Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Wed, 7 Jan 2015 16:01:00 +0100 Subject: [PATCH 1/5] Add sequences and signals for desktop notification @@ -38,10 +38,10 @@ index 1e4d0c1b6476..3385b4759713 100644 VOID:STRING,UINT VOID:UINT,UINT diff --git a/src/vte.cc b/src/vte.cc -index 6c9f70f9fba1..3e6eeb92cd36 100644 +index 0e799cef38e9..802ce6df34a6 100644 --- a/src/vte.cc +++ b/src/vte.cc -@@ -10581,6 +10581,15 @@ Terminal::emit_pending_signals() +@@ -10216,6 +10216,15 @@ Terminal::emit_pending_signals() emit_adjustment_changed(); @@ -58,7 +58,7 @@ index 6c9f70f9fba1..3e6eeb92cd36 100644 if (m_window_title != m_window_title_pending) { m_window_title.swap(m_window_title_pending); diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h -index 89539cc476b6..861a8c7402db 100644 +index 26ac236ef4ea..abf1a38cb20d 100644 --- a/src/vte/vteterminal.h +++ b/src/vte/vteterminal.h @@ -104,8 +104,10 @@ struct _VteTerminalClass { @@ -74,7 +74,7 @@ index 89539cc476b6..861a8c7402db 100644 VteTerminalClassPrivate *priv; }; diff --git a/src/vtegtk.cc b/src/vtegtk.cc -index 89e3d7a89f3a..0c9773535d7a 100644 +index ea8b3208542c..4f67c186d245 100644 --- a/src/vtegtk.cc +++ b/src/vtegtk.cc @@ -729,6 +729,7 @@ vte_terminal_class_init(VteTerminalClass *klass) @@ -125,10 +125,10 @@ index c49754ef38ee..126d29326f11 100644 LAST_SIGNAL }; diff --git a/src/vteinternal.hh b/src/vteinternal.hh -index 1652ca5fe6ed..c5b24ffe2ca9 100644 +index 9010b9b01816..eb2cda249ee1 100644 --- a/src/vteinternal.hh +++ b/src/vteinternal.hh -@@ -578,6 +578,11 @@ public: +@@ -539,6 +539,11 @@ public: gboolean m_cursor_moved_pending; gboolean m_contents_changed_pending; @@ -140,7 +140,7 @@ index 1652ca5fe6ed..c5b24ffe2ca9 100644 std::string m_window_title{}; std::string m_current_directory_uri{}; std::string m_current_file_uri{}; -@@ -1323,6 +1328,9 @@ public: +@@ -1270,6 +1275,9 @@ public: int osc) noexcept; /* OSC handlers */ @@ -151,10 +151,10 @@ index 1652ca5fe6ed..c5b24ffe2ca9 100644 vte::parser::StringTokeniser::const_iterator& token, vte::parser::StringTokeniser::const_iterator const& endtoken, diff --git a/src/vteseq.cc b/src/vteseq.cc -index eabcbbaa5eca..51b3a2c32c7f 100644 +index d596d8b9f56f..fbbf4f032f48 100644 --- a/src/vteseq.cc +++ b/src/vteseq.cc -@@ -1341,6 +1341,34 @@ Terminal::delete_lines(vte::grid::row_t param) +@@ -1334,6 +1334,34 @@ Terminal::delete_lines(vte::grid::row_t param) m_text_deleted_flag = TRUE; } @@ -189,7 +189,7 @@ index eabcbbaa5eca..51b3a2c32c7f 100644 bool Terminal::get_osc_color_index(int osc, int value, -@@ -6352,6 +6380,10 @@ Terminal::OSC(vte::parser::Sequence const& seq) +@@ -6411,6 +6439,10 @@ Terminal::OSC(vte::parser::Sequence const& seq) reset_color(VTE_HIGHLIGHT_FG, VTE_COLOR_SOURCE_ESCAPE); break; @@ -200,7 +200,7 @@ index eabcbbaa5eca..51b3a2c32c7f 100644 case VTE_OSC_XTERM_SET_ICON_TITLE: case VTE_OSC_XTERM_SET_XPROPERTY: case VTE_OSC_XTERM_SET_COLOR_MOUSE_CURSOR_FG: -@@ -6392,7 +6424,6 @@ Terminal::OSC(vte::parser::Sequence const& seq) +@@ -6451,7 +6483,6 @@ Terminal::OSC(vte::parser::Sequence const& seq) case VTE_OSC_URXVT_SET_FONT_BOLD_ITALIC: case VTE_OSC_URXVT_VIEW_UP: case VTE_OSC_URXVT_VIEW_DOWN: @@ -209,10 +209,10 @@ index eabcbbaa5eca..51b3a2c32c7f 100644 default: break; -- -2.14.4 +2.21.0 -From bd6936635d4055c3434fac71fe3af405df4c0ba8 Mon Sep 17 00:00:00 2001 +From 364e43c4d98a411ce2ff4610ac17cb52bcce2521 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Thu, 29 Jan 2015 13:09:17 +0100 Subject: [PATCH 2/5] vte.sh: Emit OSC 777 from PROMPT_COMMAND @@ -244,10 +244,10 @@ index 6d1a8734c479..b75c6dac6f6e 100644 case "$TERM" in -- -2.14.4 +2.21.0 -From 693355f62a7959ded9157493292742434ba066ed Mon Sep 17 00:00:00 2001 +From cc2446394c2efc56eafcc2c2ee9cbbff10c48fb7 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Thu, 22 Jan 2015 16:37:10 +0100 Subject: [PATCH 3/5] Test the notification-received signal @@ -258,7 +258,7 @@ Subject: [PATCH 3/5] Test the notification-received signal 2 files changed, 17 insertions(+) diff --git a/bindings/vala/app.vala b/bindings/vala/app.vala -index 8663d63c5445..4c5d9a2b3bad 100644 +index a534e76b7f42..138d453d5d98 100644 --- a/bindings/vala/app.vala +++ b/bindings/vala/app.vala @@ -309,6 +309,8 @@ class Window : Gtk.ApplicationWindow @@ -283,10 +283,10 @@ index 8663d63c5445..4c5d9a2b3bad 100644 class App : Gtk.Application diff --git a/src/app/app.cc b/src/app/app.cc -index b155efa3f348..250d09d8b4c5 100644 +index ba76c9b37315..db022476e95e 100644 --- a/src/app/app.cc +++ b/src/app/app.cc -@@ -1628,6 +1628,14 @@ window_window_title_changed_cb(VteTerminal* terminal, +@@ -1673,6 +1673,14 @@ window_window_title_changed_cb(VteTerminal* terminal, vte_terminal_get_window_title(window->terminal)); } @@ -301,7 +301,7 @@ index b155efa3f348..250d09d8b4c5 100644 static void window_lower_window_cb(VteTerminal* terminal, VteappWindow* window) -@@ -1855,6 +1863,8 @@ vteapp_window_constructed(GObject *object) +@@ -1901,6 +1909,8 @@ vteapp_window_constructed(GObject *object) if (options.object_notifications) g_signal_connect(window->terminal, "notify", G_CALLBACK(window_notify_cb), window); @@ -311,10 +311,10 @@ index b155efa3f348..250d09d8b4c5 100644 if (options.no_double_buffer) gtk_widget_set_double_buffered(GTK_WIDGET(window->terminal), false); -- -2.14.4 +2.21.0 -From 24c78bb06d9f85393fa4e715f0d01b40496c71a6 Mon Sep 17 00:00:00 2001 +From 631a17b875eeff28845ce384b2fede8150be9963 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Fri, 13 May 2016 17:53:54 +0200 Subject: [PATCH 4/5] Add a property to configure the scroll speed @@ -325,15 +325,15 @@ moving the buffer by a function of the number of visible rows. https://bugzilla.redhat.com/show_bug.cgi?id=1103380 --- doc/reference/vte-sections.txt | 1 + - src/vte.cc | 19 +++++++++++++++++- - src/vte/vteterminal.h | 4 ++++ - src/vtegtk.cc | 45 ++++++++++++++++++++++++++++++++++++++++++ + src/vte.cc | 19 +++++++++++++- + src/vte/vteterminal.h | 4 +++ + src/vtegtk.cc | 45 ++++++++++++++++++++++++++++++++++ src/vtegtk.hh | 1 + src/vteinternal.hh | 2 ++ 6 files changed, 71 insertions(+), 1 deletion(-) diff --git a/doc/reference/vte-sections.txt b/doc/reference/vte-sections.txt -index b46e30620fe1..bda65e4c788e 100644 +index 9ab873c17bfc..7b94f4df9a30 100644 --- a/doc/reference/vte-sections.txt +++ b/doc/reference/vte-sections.txt @@ -55,6 +55,7 @@ vte_terminal_get_cursor_blink_mode @@ -345,10 +345,10 @@ index b46e30620fe1..bda65e4c788e 100644 vte_terminal_get_scrollback_lines vte_terminal_set_font diff --git a/src/vte.cc b/src/vte.cc -index 3e6eeb92cd36..83ab8f10ca1b 100644 +index 802ce6df34a6..49e4007090d2 100644 --- a/src/vte.cc +++ b/src/vte.cc -@@ -9816,6 +9816,7 @@ void +@@ -9462,6 +9462,7 @@ void Terminal::widget_scroll(GdkEventScroll *event) { gdouble delta_x, delta_y; @@ -356,7 +356,7 @@ index 3e6eeb92cd36..83ab8f10ca1b 100644 gdouble v; gint cnt, i; int button; -@@ -9869,7 +9870,13 @@ Terminal::widget_scroll(GdkEventScroll *event) +@@ -9515,7 +9516,13 @@ Terminal::widget_scroll(GdkEventScroll *event) return; } @@ -371,7 +371,7 @@ index 3e6eeb92cd36..83ab8f10ca1b 100644 _vte_debug_print(VTE_DEBUG_EVENTS, "Scroll speed is %d lines per non-smooth scroll unit\n", (int) v); -@@ -10130,6 +10137,16 @@ Terminal::decscusr_cursor_shape() +@@ -9776,6 +9783,16 @@ Terminal::decscusr_cursor_shape() } } @@ -389,7 +389,7 @@ index 3e6eeb92cd36..83ab8f10ca1b 100644 Terminal::set_scrollback_lines(long lines) { diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h -index 861a8c7402db..8e6a5d249d7a 100644 +index abf1a38cb20d..c8ba72023370 100644 --- a/src/vte/vteterminal.h +++ b/src/vte/vteterminal.h @@ -296,6 +296,10 @@ void vte_terminal_set_cursor_shape(VteTerminal *terminal, @@ -404,7 +404,7 @@ index 861a8c7402db..8e6a5d249d7a 100644 _VTE_PUBLIC void vte_terminal_set_scrollback_lines(VteTerminal *terminal, diff --git a/src/vtegtk.cc b/src/vtegtk.cc -index 0c9773535d7a..d4fe1b7edc12 100644 +index 4f67c186d245..be3304027c1b 100644 --- a/src/vtegtk.cc +++ b/src/vtegtk.cc @@ -517,6 +517,9 @@ vte_terminal_get_property (GObject *object, @@ -449,7 +449,7 @@ index 0c9773535d7a..d4fe1b7edc12 100644 /** * VteTerminal:scrollback-lines: * -@@ -4122,6 +4143,30 @@ vte_terminal_get_row_count(VteTerminal *terminal) +@@ -4113,6 +4134,30 @@ vte_terminal_get_row_count(VteTerminal *terminal) return IMPL(terminal)->m_row_count; } @@ -493,10 +493,10 @@ index 126d29326f11..b2c9edfa8246 100644 PROP_SCROLL_ON_KEYSTROKE, PROP_SCROLL_ON_OUTPUT, diff --git a/src/vteinternal.hh b/src/vteinternal.hh -index c5b24ffe2ca9..620bcf200af6 100644 +index eb2cda249ee1..17c844137e31 100644 --- a/src/vteinternal.hh +++ b/src/vteinternal.hh -@@ -457,6 +457,7 @@ public: +@@ -418,6 +418,7 @@ public: /* Scrolling options. */ gboolean m_scroll_on_output; gboolean m_scroll_on_keystroke; @@ -504,19 +504,19 @@ index c5b24ffe2ca9..620bcf200af6 100644 vte::grid::row_t m_scrollback_lines; /* Restricted scrolling */ -@@ -1201,6 +1202,7 @@ public: - bool set_mouse_autohide(bool autohide); - bool set_pty(VtePty *pty); +@@ -1148,6 +1149,7 @@ public: + bool set_pty(VtePty *pty, + bool proces_remaining = true); bool set_rewrap_on_resize(bool rewrap); + bool set_scroll_speed(unsigned int scroll_speed); bool set_scrollback_lines(long lines); bool set_scroll_on_keystroke(bool scroll); bool set_scroll_on_output(bool scroll); -- -2.14.4 +2.21.0 -From 82cbdbbaa55696b422b409b9174d6df8cdb8ee4a Mon Sep 17 00:00:00 2001 +From 9296518b775f8f449b7139f86277c9d362a9af26 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Fri, 13 May 2016 17:54:57 +0200 Subject: [PATCH 5/5] Test the scroll-speed property @@ -528,7 +528,7 @@ https://bugzilla.redhat.com/show_bug.cgi?id=1103380 2 files changed, 8 insertions(+) diff --git a/bindings/vala/app.vala b/bindings/vala/app.vala -index 4c5d9a2b3bad..3b7310679239 100644 +index 138d453d5d98..61b8ec8edd24 100644 --- a/bindings/vala/app.vala +++ b/bindings/vala/app.vala @@ -335,6 +335,7 @@ class Window : Gtk.ApplicationWindow @@ -539,7 +539,7 @@ index 4c5d9a2b3bad..3b7310679239 100644 terminal.set_scrollback_lines(App.Options.scrollback_lines); /* Style */ -@@ -856,6 +857,7 @@ class App : Gtk.Application +@@ -858,6 +859,7 @@ class App : Gtk.Application public static bool object_notifications = false; public static string? output_filename = null; public static bool reverse = false; @@ -547,7 +547,7 @@ index 4c5d9a2b3bad..3b7310679239 100644 public static int scrollback_lines = 512; public static int transparency_percent = 0; public static bool version = false; -@@ -1049,6 +1051,8 @@ class App : Gtk.Application +@@ -1051,6 +1053,8 @@ class App : Gtk.Application "Save terminal contents to file at exit", null }, { "reverse", 0, 0, OptionArg.NONE, ref reverse, "Reverse foreground/background colors", null }, @@ -557,7 +557,7 @@ index 4c5d9a2b3bad..3b7310679239 100644 "Specify the number of scrollback-lines", null }, { "transparent", 'T', 0, OptionArg.INT, ref transparency_percent, diff --git a/src/app/app.cc b/src/app/app.cc -index 250d09d8b4c5..82484d2ca586 100644 +index db022476e95e..9dbd3d21c3cb 100644 --- a/src/app/app.cc +++ b/src/app/app.cc @@ -93,6 +93,7 @@ public: @@ -577,7 +577,7 @@ index 250d09d8b4c5..82484d2ca586 100644 { "scrollback-lines", 'n', 0, G_OPTION_ARG_INT, &scrollback_lines, "Specify the number of scrollback-lines (-1 for infinite)", nullptr }, { "transparent", 'T', 0, G_OPTION_ARG_INT, &transparency_percent, -@@ -1893,6 +1896,7 @@ vteapp_window_constructed(GObject *object) +@@ -1939,6 +1942,7 @@ vteapp_window_constructed(GObject *object) vte_terminal_set_rewrap_on_resize(window->terminal, !options.no_rewrap); vte_terminal_set_scroll_on_output(window->terminal, false); vte_terminal_set_scroll_on_keystroke(window->terminal, true); @@ -586,5 +586,5 @@ index 250d09d8b4c5..82484d2ca586 100644 vte_terminal_set_text_blink_mode(window->terminal, options.text_blink_mode); -- -2.14.4 +2.21.0 diff --git a/vte291.spec b/vte291.spec index 778b3a0..a44e6c3 100644 --- a/vte291.spec +++ b/vte291.spec @@ -1,11 +1,11 @@ %global apiver 2.91 %global gnutls_version 3.2.7 -%global gtk3_version 3.8.0 +%global gtk3_version 3.19.5 %global pcre2_version 10.21 Name: vte291 -Version: 0.56.2 +Version: 0.56.3 Release: 1%{?dist} Summary: Terminal emulator library @@ -103,6 +103,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la %{_sysconfdir}/profile.d/vte.sh %changelog +* Tue May 07 2019 Kalev Lember - 0.56.3-1 +- Update to 0.56.3 + * Mon May 06 2019 Kalev Lember - 0.56.2-1 - Update to 0.56.2 From b5d3b7d45ce836b1e428369a14def1e58994aa31 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Fri, 21 Jun 2019 15:53:25 +0200 Subject: [PATCH 4/5] Support tracking the active container inside the terminal https://gitlab.freedesktop.org/terminal-wg/specifications/issues/17 --- ...eed.patch => vte291-cntr-ntfy-scroll.patch | 287 +++++++++++++++++- vte291.spec | 9 +- 2 files changed, 278 insertions(+), 18 deletions(-) rename vte291-command-notify-scroll-speed.patch => vte291-cntr-ntfy-scroll.patch (67%) diff --git a/vte291-command-notify-scroll-speed.patch b/vte291-cntr-ntfy-scroll.patch similarity index 67% rename from vte291-command-notify-scroll-speed.patch rename to vte291-cntr-ntfy-scroll.patch index 7927488..ce56ea3 100644 --- a/vte291-command-notify-scroll-speed.patch +++ b/vte291-cntr-ntfy-scroll.patch @@ -1,7 +1,7 @@ -From a28b812b67b99aafcd3ea436e5155d2abdf9fafa Mon Sep 17 00:00:00 2001 +From ae76be1fc2f45472b3221d032322624efbacfd1c Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Wed, 7 Jan 2015 16:01:00 +0100 -Subject: [PATCH 1/5] Add sequences and signals for desktop notification +Subject: [PATCH 1/6] Add sequences and signals for desktop notification Add sequences OSC 777 ; notify ; SUMMARY ; BODY BEL @@ -209,13 +209,13 @@ index d596d8b9f56f..fbbf4f032f48 100644 default: break; -- -2.21.0 +2.20.1 -From 364e43c4d98a411ce2ff4610ac17cb52bcce2521 Mon Sep 17 00:00:00 2001 +From 27c437a92a140bbcdac913315963549a7d5364f0 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Thu, 29 Jan 2015 13:09:17 +0100 -Subject: [PATCH 2/5] vte.sh: Emit OSC 777 from PROMPT_COMMAND +Subject: [PATCH 2/6] vte.sh: Emit OSC 777 from PROMPT_COMMAND For some reason, the three consecutive backslashes break the parsing. As Christian Persch suggested, replacing the double quotes with @@ -244,13 +244,13 @@ index 6d1a8734c479..b75c6dac6f6e 100644 case "$TERM" in -- -2.21.0 +2.20.1 -From cc2446394c2efc56eafcc2c2ee9cbbff10c48fb7 Mon Sep 17 00:00:00 2001 +From 30c7d17fb6209ebceea10d38e1622bb63bbe27e4 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Thu, 22 Jan 2015 16:37:10 +0100 -Subject: [PATCH 3/5] Test the notification-received signal +Subject: [PATCH 3/6] Test the notification-received signal --- bindings/vala/app.vala | 7 +++++++ @@ -311,13 +311,13 @@ index ba76c9b37315..db022476e95e 100644 if (options.no_double_buffer) gtk_widget_set_double_buffered(GTK_WIDGET(window->terminal), false); -- -2.21.0 +2.20.1 -From 631a17b875eeff28845ce384b2fede8150be9963 Mon Sep 17 00:00:00 2001 +From 93fe85b432d44d2642f4944a528b154407a7a932 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Fri, 13 May 2016 17:53:54 +0200 -Subject: [PATCH 4/5] Add a property to configure the scroll speed +Subject: [PATCH 4/6] Add a property to configure the scroll speed By default, it is set to zero which gives the current behaviour of moving the buffer by a function of the number of visible rows. @@ -513,13 +513,13 @@ index eb2cda249ee1..17c844137e31 100644 bool set_scroll_on_keystroke(bool scroll); bool set_scroll_on_output(bool scroll); -- -2.21.0 +2.20.1 -From 9296518b775f8f449b7139f86277c9d362a9af26 Mon Sep 17 00:00:00 2001 +From 4a8b0fe33c48ba5983a0e90de8192aedf655ab63 Mon Sep 17 00:00:00 2001 From: Debarshi Ray Date: Fri, 13 May 2016 17:54:57 +0200 -Subject: [PATCH 5/5] Test the scroll-speed property +Subject: [PATCH 5/6] Test the scroll-speed property https://bugzilla.redhat.com/show_bug.cgi?id=1103380 --- @@ -586,5 +586,262 @@ index db022476e95e..9dbd3d21c3cb 100644 vte_terminal_set_text_blink_mode(window->terminal, options.text_blink_mode); -- -2.21.0 +2.20.1 + + +From 9fbd3fdc236b549d468dcafbbf857ce34e98f0cc Mon Sep 17 00:00:00 2001 +From: Debarshi Ray +Date: Mon, 10 Jun 2019 20:30:18 +0200 +Subject: [PATCH 6/6] Support tracking the active container inside the terminal + +Add sequences + OSC 777 ; container ; push ; NAME ; RUNTIME BEL + OSC 777 ; container ; push ; NAME ; RUNTIME ST + OSC 777 ; container ; pop ; NAME ; RUNTIME BEL + OSC 777 ; container ; pop ; NAME ; RUNTIME ST + +that let container tools notify the terminal emulator when entering and +leaving a container environment. The RUNTIME argument namespaces the +NAME and identifies the container tooling being used. eg., docker, +flatpak, podman, toolbox, etc.. + +The OSC 777 escape sequence is taken from Enlightenment's Terminology: +https://phab.enlightenment.org/T1765 + +It's a VTE-specific extension until a standard escape sequence is +agreed upon across multiple different terminal emulators [1]. + +[1] https://gitlab.freedesktop.org/terminal-wg/specifications/issues/17 +--- + src/vte.cc | 9 ++++++ + src/vte/vteterminal.h | 4 +++ + src/vtegtk.cc | 65 +++++++++++++++++++++++++++++++++++++++++++ + src/vtegtk.hh | 2 ++ + src/vteinternal.hh | 16 +++++++++++ + src/vteseq.cc | 31 +++++++++++++++++++++ + 6 files changed, 127 insertions(+) + +diff --git a/src/vte.cc b/src/vte.cc +index 49e4007090d2..2e919b7487c3 100644 +--- a/src/vte.cc ++++ b/src/vte.cc +@@ -10256,6 +10256,15 @@ Terminal::emit_pending_signals() + m_window_title_changed = false; + } + ++ if (m_containers_changed) { ++ _vte_debug_print(VTE_DEBUG_SIGNALS, ++ "Notifying `current-container-name' and `current-container-runtime'.\n"); ++ ++ g_object_notify_by_pspec(object, pspecs[PROP_CURRENT_CONTAINER_NAME]); ++ g_object_notify_by_pspec(object, pspecs[PROP_CURRENT_CONTAINER_RUNTIME]); ++ m_containers_changed = false; ++ } ++ + if (m_current_directory_uri_changed) { + if (m_current_directory_uri != m_current_directory_uri_pending) { + m_current_directory_uri.swap(m_current_directory_uri_pending); +diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h +index c8ba72023370..bd81db780f11 100644 +--- a/src/vte/vteterminal.h ++++ b/src/vte/vteterminal.h +@@ -457,6 +457,10 @@ glong vte_terminal_get_column_count(VteTerminal *terminal) _VTE_GNUC_NONNULL(1); + _VTE_PUBLIC + const char *vte_terminal_get_window_title(VteTerminal *terminal) _VTE_GNUC_NONNULL(1); + _VTE_PUBLIC ++const char *vte_terminal_get_current_container_name(VteTerminal *terminal) _VTE_GNUC_NONNULL(1); ++_VTE_PUBLIC ++const char *vte_terminal_get_current_container_runtime(VteTerminal *terminal) _VTE_GNUC_NONNULL(1); ++_VTE_PUBLIC + const char *vte_terminal_get_current_directory_uri(VteTerminal *terminal) _VTE_GNUC_NONNULL(1); + _VTE_PUBLIC + const char *vte_terminal_get_current_file_uri(VteTerminal *terminal) _VTE_GNUC_NONNULL(1); +diff --git a/src/vtegtk.cc b/src/vtegtk.cc +index be3304027c1b..94afe360933d 100644 +--- a/src/vtegtk.cc ++++ b/src/vtegtk.cc +@@ -478,6 +478,12 @@ vte_terminal_get_property (GObject *object, + case PROP_CURSOR_BLINK_MODE: + g_value_set_enum (value, vte_terminal_get_cursor_blink_mode (terminal)); + break; ++ case PROP_CURRENT_CONTAINER_NAME: ++ g_value_set_string (value, vte_terminal_get_current_container_name (terminal)); ++ break; ++ case PROP_CURRENT_CONTAINER_RUNTIME: ++ g_value_set_string (value, vte_terminal_get_current_container_runtime (terminal)); ++ break; + case PROP_CURRENT_DIRECTORY_URI: + g_value_set_string (value, vte_terminal_get_current_directory_uri (terminal)); + break; +@@ -1647,6 +1653,27 @@ vte_terminal_class_init(VteTerminalClass *klass) + NULL, + (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS | G_PARAM_EXPLICIT_NOTIFY)); + ++ /** ++ * VteTerminal:current-container-name: ++ * ++ * The name of the current container, or %NULL if unset. ++ */ ++ pspecs[PROP_CURRENT_CONTAINER_NAME] = ++ g_param_spec_string ("current-container-name", NULL, NULL, ++ NULL, ++ (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS | G_PARAM_EXPLICIT_NOTIFY)); ++ ++ /** ++ * VteTerminal:current-container-runtime: ++ * ++ * The name of the runtime toolset used to set up the current ++ * container, or %NULL if unset. ++ */ ++ pspecs[PROP_CURRENT_CONTAINER_RUNTIME] = ++ g_param_spec_string ("current-container-runtime", NULL, NULL, ++ NULL, ++ (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS | G_PARAM_EXPLICIT_NOTIFY)); ++ + /** + * VteTerminal:current-directory-uri: + * +@@ -3522,6 +3549,44 @@ vte_terminal_get_column_count(VteTerminal *terminal) + return IMPL(terminal)->m_column_count; + } + ++/** ++ * vte_terminal_get_current_container_name: ++ * @terminal: a #VteTerminal ++ * ++ * Returns: (nullable) (transfer none): the name of the current ++ * container, or %NULL ++ */ ++const char * ++vte_terminal_get_current_container_name(VteTerminal *terminal) ++{ ++ g_return_val_if_fail(VTE_IS_TERMINAL(terminal), NULL); ++ auto impl = IMPL(terminal); ++ if (impl->m_containers.empty()) ++ return NULL; ++ ++ const VteContainer &container = impl->m_containers.top(); ++ return container.m_name.c_str(); ++} ++ ++/** ++ * vte_terminal_get_current_container_runtime: ++ * @terminal: a #VteTerminal ++ * ++ * Returns: (nullable) (transfer none): the name of the runtime ++ * toolset used to set up the current container, or %NULL ++ */ ++const char * ++vte_terminal_get_current_container_runtime(VteTerminal *terminal) ++{ ++ g_return_val_if_fail(VTE_IS_TERMINAL(terminal), NULL); ++ auto impl = IMPL(terminal); ++ if (impl->m_containers.empty()) ++ return NULL; ++ ++ const VteContainer &container = impl->m_containers.top(); ++ return container.m_runtime.c_str(); ++} ++ + /** + * vte_terminal_get_current_directory_uri: + * @terminal: a #VteTerminal +diff --git a/src/vtegtk.hh b/src/vtegtk.hh +index b2c9edfa8246..d97e0d66378c 100644 +--- a/src/vtegtk.hh ++++ b/src/vtegtk.hh +@@ -74,6 +74,8 @@ enum { + PROP_CJK_AMBIGUOUS_WIDTH, + PROP_CURSOR_BLINK_MODE, + PROP_CURSOR_SHAPE, ++ PROP_CURRENT_CONTAINER_NAME, ++ PROP_CURRENT_CONTAINER_RUNTIME, + PROP_CURRENT_DIRECTORY_URI, + PROP_CURRENT_FILE_URI, + PROP_DELETE_BINDING, +diff --git a/src/vteinternal.hh b/src/vteinternal.hh +index 17c844137e31..7c790adc9e6e 100644 +--- a/src/vteinternal.hh ++++ b/src/vteinternal.hh +@@ -40,6 +40,7 @@ + + #include + #include ++#include + #include + #include + +@@ -109,6 +110,18 @@ typedef enum _VteCharacterReplacement { + VTE_CHARACTER_REPLACEMENT_BRITISH + } VteCharacterReplacement; + ++struct VteContainer { ++public: ++ VteContainer(const std::string &name, const std::string &runtime) : ++ m_name{name}, ++ m_runtime{runtime} ++ { ++ } ++ ++ std::string m_name; ++ std::string m_runtime; ++}; ++ + typedef struct _VtePaletteColor { + struct { + vte::color::rgb color; +@@ -540,6 +553,9 @@ public: + gboolean m_cursor_moved_pending; + gboolean m_contents_changed_pending; + ++ bool m_containers_changed{false}; ++ std::stack m_containers; ++ + /* desktop notification */ + gboolean m_notification_received; + std::string m_notification_summary; +diff --git a/src/vteseq.cc b/src/vteseq.cc +index fbbf4f032f48..e7b4d0d32bfe 100644 +--- a/src/vteseq.cc ++++ b/src/vteseq.cc +@@ -1343,6 +1343,37 @@ Terminal::handle_urxvt_extension(vte::parser::Sequence const& seq, + return; + } + ++ if (*token == "container") { ++ ++token; ++ ++ if (token == endtoken) ++ return; ++ ++ const std::string sub_command = *token; ++ ++token; ++ ++ if (sub_command == "pop") { ++ if (!m_containers.empty()) { ++ m_containers.pop(); ++ m_containers_changed = true; ++ } ++ } else if (sub_command == "push") { ++ if (token == endtoken) ++ return; ++ ++ const std::string name = *token; ++ ++token; ++ ++ if (token == endtoken) ++ return; ++ ++ const std::string runtime = *token; ++ ++ m_containers.emplace(name, runtime); ++ m_containers_changed = true; ++ } ++ } ++ + if (*token == "notify") { + ++token; + +-- +2.20.1 diff --git a/vte291.spec b/vte291.spec index a44e6c3..3dc049d 100644 --- a/vte291.spec +++ b/vte291.spec @@ -6,7 +6,7 @@ Name: vte291 Version: 0.56.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Terminal emulator library License: LGPLv2+ @@ -15,7 +15,7 @@ Source0: http://download.gnome.org/sources/vte/0.56/vte-%{version}.tar.xz # https://bugzilla.gnome.org/show_bug.cgi?id=711059 # https://bugzilla.redhat.com/show_bug.cgi?id=1103380 -Patch100: vte291-command-notify-scroll-speed.patch +Patch100: vte291-cntr-ntfy-scroll.patch BuildRequires: gcc-c++ BuildRequires: gettext @@ -63,7 +63,7 @@ emulator library. %prep %setup -q -n vte-%{version} -%patch100 -p1 -b .command-notify-scroll-speed +%patch100 -p1 -b .cntr-ntfy-scroll %build CFLAGS="%optflags -fPIE -DPIE -Wno-nonnull" \ @@ -103,6 +103,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la %{_sysconfdir}/profile.d/vte.sh %changelog +* Fri Jun 21 2019 Debarshi Ray - 0.56.3-2 +- Support tracking the active container inside the terminal + * Tue May 07 2019 Kalev Lember - 0.56.3-1 - Update to 0.56.3 From ff009a00efed7fed2ee33a0bedfd4c879699f9c3 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 14 Oct 2019 10:28:34 +0200 Subject: [PATCH 5/5] Update to 0.56.4 --- .gitignore | 1 + sources | 2 +- vte291.spec | 7 +++++-- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 82c1b17..be6687f 100644 --- a/.gitignore +++ b/.gitignore @@ -52,3 +52,4 @@ /vte-0.56.1.tar.xz /vte-0.56.2.tar.xz /vte-0.56.3.tar.xz +/vte-0.56.4.tar.xz diff --git a/sources b/sources index 6d62c77..c9fe738 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (vte-0.56.3.tar.xz) = f78b3d532ca47e53c1bb51db6780697ce4692d493c0030d2dc4beb63a2595e44a43eb409ee31b94e4551eae259ac1baa8f06825a02fd66df8352e192f4ea1988 +SHA512 (vte-0.56.4.tar.xz) = 5a6c79b30f07c1f5848ef59028864d893cc605b9ad8f49ae819958aaed962d2ff96baad379f126381b8bf00015003c5a6dc28c792e4e050ba35090338bd7dabb diff --git a/vte291.spec b/vte291.spec index 3dc049d..f617559 100644 --- a/vte291.spec +++ b/vte291.spec @@ -5,8 +5,8 @@ %global pcre2_version 10.21 Name: vte291 -Version: 0.56.3 -Release: 2%{?dist} +Version: 0.56.4 +Release: 1%{?dist} Summary: Terminal emulator library License: LGPLv2+ @@ -103,6 +103,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la %{_sysconfdir}/profile.d/vte.sh %changelog +* Mon Oct 14 2019 Kalev Lember - 0.56.4-1 +- Update to 0.56.4 + * Fri Jun 21 2019 Debarshi Ray - 0.56.3-2 - Support tracking the active container inside the terminal