From 6452834d271ba2073f1d068d3f44c2e5fb41d750 Mon Sep 17 00:00:00 2001 From: tubalu Date: Mon, 20 Jan 2020 17:25:28 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20vte2?= =?UTF-8?q?91-Fix-the-build-with-GCC-8.1.1.patch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vte291-Fix-the-build-with-GCC-8.1.1.patch | 26 ----------------------- 1 file changed, 26 deletions(-) delete mode 100644 vte291-Fix-the-build-with-GCC-8.1.1.patch diff --git a/vte291-Fix-the-build-with-GCC-8.1.1.patch b/vte291-Fix-the-build-with-GCC-8.1.1.patch deleted file mode 100644 index 6d37c79..0000000 --- a/vte291-Fix-the-build-with-GCC-8.1.1.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 4e7fe2f2fc02cc008f67d80ef3cd9b41a8f17129 Mon Sep 17 00:00:00 2001 -From: Egmont Koblinger -Date: Thu, 27 Sep 2018 21:25:50 +0200 -Subject: [PATCH] widget: Add missing exception specification - -This fixes compiling with clang. ---- - src/widget.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/widget.cc b/src/widget.cc -index 0f2e509e6c0c..deaf789de6e2 100644 ---- a/src/widget.cc -+++ b/src/widget.cc -@@ -327,7 +327,7 @@ Widget::size_allocate(GtkAllocation* allocation) noexcept - } - - void --Widget::unmap() -+Widget::unmap() noexcept - { - if (m_event_window) - gdk_window_hide(m_event_window); --- -2.14.4 - -- Gitee From 3c06adc6398e44371ef83b22c959f2942e74b805 Mon Sep 17 00:00:00 2001 From: tubalu Date: Mon, 20 Jan 2020 17:25:36 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20vte2?= =?UTF-8?q?91-command-notify-scroll-speed.patch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vte291-command-notify-scroll-speed.patch | 590 ----------------------- 1 file changed, 590 deletions(-) delete mode 100644 vte291-command-notify-scroll-speed.patch diff --git a/vte291-command-notify-scroll-speed.patch b/vte291-command-notify-scroll-speed.patch deleted file mode 100644 index 3e11c5e..0000000 --- a/vte291-command-notify-scroll-speed.patch +++ /dev/null @@ -1,590 +0,0 @@ -From 040c43f2edb0f3179febbed36f37bc1fbc77dbcf 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 - -Add sequences - OSC 777 ; notify ; SUMMARY ; BODY BEL - OSC 777 ; notify ; SUMMARY BEL - OSC 777 ; notify ; SUMMARY ; BODY ST - OSC 777 ; notify ; SUMMARY ST - -that let terminal applications send a notification to the desktop -environment. - -Based on Enlightenment's Terminology: -https://phab.enlightenment.org/T1765 - -https://bugzilla.gnome.org/show_bug.cgi?id=711059 ---- - src/marshal.list | 1 + - src/vte.cc | 9 +++++++++ - src/vte/vteterminal.h | 4 +++- - src/vtegtk.cc | 21 +++++++++++++++++++++ - src/vtegtk.hh | 1 + - src/vteinternal.hh | 8 ++++++++ - src/vteseq.cc | 33 ++++++++++++++++++++++++++++++++- - 7 files changed, 75 insertions(+), 2 deletions(-) - -diff --git a/src/marshal.list b/src/marshal.list -index 1e4d0c1b6476..3385b4759713 100644 ---- a/src/marshal.list -+++ b/src/marshal.list -@@ -1,5 +1,6 @@ - VOID:INT,INT - VOID:OBJECT,OBJECT - VOID:STRING,BOXED -+VOID:STRING,STRING - VOID:STRING,UINT - VOID:UINT,UINT -diff --git a/src/vte.cc b/src/vte.cc -index 6c9f70f9fba1..3e6eeb92cd36 100644 ---- a/src/vte.cc -+++ b/src/vte.cc -@@ -10581,6 +10581,15 @@ Terminal::emit_pending_signals() - - emit_adjustment_changed(); - -+ if (m_notification_received) { -+ _vte_debug_print (VTE_DEBUG_SIGNALS, -+ "Emitting `notification-received'.\n"); -+ g_signal_emit(object, signals[SIGNAL_NOTIFICATION_RECEIVED], 0, -+ m_notification_summary.c_str(), -+ m_notification_body.c_str()); -+ m_notification_received = FALSE; -+ } -+ - if (m_window_title_changed) { - 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 ---- a/src/vte/vteterminal.h -+++ b/src/vte/vteterminal.h -@@ -104,8 +104,10 @@ struct _VteTerminalClass { - - void (*bell)(VteTerminal* terminal); - -+ void (*notification_received)(VteTerminal* terminal, const gchar *summary, const gchar *body); -+ - /* Padding for future expansion. */ -- gpointer padding[16]; -+ gpointer padding[15]; - - VteTerminalClassPrivate *priv; - }; -diff --git a/src/vtegtk.cc b/src/vtegtk.cc -index 89e3d7a89f3a..0c9773535d7a 100644 ---- a/src/vtegtk.cc -+++ b/src/vtegtk.cc -@@ -729,6 +729,7 @@ vte_terminal_class_init(VteTerminalClass *klass) - klass->child_exited = NULL; - klass->encoding_changed = NULL; - klass->char_size_changed = NULL; -+ klass->notification_received = NULL; - klass->window_title_changed = NULL; - klass->icon_title_changed = NULL; - klass->selection_changed = NULL; -@@ -804,6 +805,26 @@ vte_terminal_class_init(VteTerminalClass *klass) - G_TYPE_NONE, - 1, G_TYPE_INT); - -+ /** -+ * VteTerminal::notification-received: -+ * @vteterminal: the object which received the signal -+ * @summary: The summary -+ * @body: (allow-none): Extra optional text -+ * -+ * Emitted when a process running in the terminal wants to -+ * send a notification to the desktop environment. -+ */ -+ signals[SIGNAL_NOTIFICATION_RECEIVED] = -+ g_signal_new(I_("notification-received"), -+ G_OBJECT_CLASS_TYPE(klass), -+ G_SIGNAL_RUN_LAST, -+ G_STRUCT_OFFSET(VteTerminalClass, notification_received), -+ NULL, -+ NULL, -+ _vte_marshal_VOID__STRING_STRING, -+ G_TYPE_NONE, -+ 2, G_TYPE_STRING, G_TYPE_STRING); -+ - /** - * VteTerminal::window-title-changed: - * @vteterminal: the object which received the signal -diff --git a/src/vtegtk.hh b/src/vtegtk.hh -index c49754ef38ee..126d29326f11 100644 ---- a/src/vtegtk.hh -+++ b/src/vtegtk.hh -@@ -56,6 +56,7 @@ enum { - SIGNAL_TEXT_INSERTED, - SIGNAL_TEXT_MODIFIED, - SIGNAL_TEXT_SCROLLED, -+ SIGNAL_NOTIFICATION_RECEIVED, - SIGNAL_WINDOW_TITLE_CHANGED, - LAST_SIGNAL - }; -diff --git a/src/vteinternal.hh b/src/vteinternal.hh -index 1652ca5fe6ed..c5b24ffe2ca9 100644 ---- a/src/vteinternal.hh -+++ b/src/vteinternal.hh -@@ -578,6 +578,11 @@ public: - gboolean m_cursor_moved_pending; - gboolean m_contents_changed_pending; - -+ /* desktop notification */ -+ gboolean m_notification_received; -+ std::string m_notification_summary; -+ std::string m_notification_body; -+ - std::string m_window_title{}; - std::string m_current_directory_uri{}; - std::string m_current_file_uri{}; -@@ -1323,6 +1328,9 @@ public: - int osc) noexcept; - - /* OSC handlers */ -+ void handle_urxvt_extension(vte::parser::Sequence const& seq, -+ vte::parser::StringTokeniser::const_iterator& token, -+ vte::parser::StringTokeniser::const_iterator const& endtoken) noexcept; - void set_color(vte::parser::Sequence const& seq, - 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 ---- a/src/vteseq.cc -+++ b/src/vteseq.cc -@@ -1341,6 +1341,34 @@ Terminal::delete_lines(vte::grid::row_t param) - m_text_deleted_flag = TRUE; - } - -+void -+Terminal::handle_urxvt_extension(vte::parser::Sequence const& seq, -+ vte::parser::StringTokeniser::const_iterator& token, -+ vte::parser::StringTokeniser::const_iterator const& endtoken) noexcept -+{ -+ if (token == endtoken) { -+ return; -+ } -+ -+ if (*token == "notify") { -+ ++token; -+ -+ if (token == endtoken) -+ return; -+ -+ m_notification_summary = *token; -+ m_notification_body.clear(); -+ m_notification_received = TRUE; -+ ++token; -+ -+ if (token == endtoken) -+ return; -+ -+ m_notification_body = *token; -+ return; -+ } -+} -+ - bool - Terminal::get_osc_color_index(int osc, - int value, -@@ -6352,6 +6380,10 @@ Terminal::OSC(vte::parser::Sequence const& seq) - reset_color(VTE_HIGHLIGHT_FG, VTE_COLOR_SOURCE_ESCAPE); - break; - -+ case VTE_OSC_URXVT_EXTENSION: -+ handle_urxvt_extension(seq, it, cend); -+ break; -+ - 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) - case VTE_OSC_URXVT_SET_FONT_BOLD_ITALIC: - case VTE_OSC_URXVT_VIEW_UP: - case VTE_OSC_URXVT_VIEW_DOWN: -- case VTE_OSC_URXVT_EXTENSION: - case VTE_OSC_YF_RQGWR: - default: - break; --- -2.14.4 - - -From bd6936635d4055c3434fac71fe3af405df4c0ba8 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 - -For some reason, the three consecutive backslashes break the parsing. -As Christian Persch suggested, replacing the double quotes with -singles fixes it. - -https://bugzilla.gnome.org/show_bug.cgi?id=711059 ---- - src/vte.sh | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/src/vte.sh b/src/vte.sh -index 6d1a8734c479..b75c6dac6f6e 100644 ---- a/src/vte.sh -+++ b/src/vte.sh -@@ -50,9 +50,11 @@ __vte_osc7 () { - } - - __vte_prompt_command() { -+ local command=$(HISTTIMEFORMAT= history 1 | sed 's/^ *[0-9]\+ *//') -+ command="${command//;/ }" - local pwd='~' - [ "$PWD" != "$HOME" ] && pwd=${PWD/#$HOME\//\~\/} -- printf "\033]0;%s@%s:%s\033\\%s" "${USER}" "${HOSTNAME%%.*}" "${pwd}" "$(__vte_osc7)" -+ printf '\033]777;notify;Command completed;%s\033\\\033]0;%s@%s:%s\033\\%s' "${command}" "${USER}" "${HOSTNAME%%.*}" "${pwd}" "$(__vte_osc7)" - } - - case "$TERM" in --- -2.14.4 - - -From 693355f62a7959ded9157493292742434ba066ed 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 - ---- - bindings/vala/app.vala | 7 +++++++ - src/app/app.cc | 10 ++++++++++ - 2 files changed, 17 insertions(+) - -diff --git a/bindings/vala/app.vala b/bindings/vala/app.vala -index 8663d63c5445..4c5d9a2b3bad 100644 ---- a/bindings/vala/app.vala -+++ b/bindings/vala/app.vala -@@ -309,6 +309,8 @@ class Window : Gtk.ApplicationWindow - if (App.Options.object_notifications) - terminal.notify.connect(notify_cb); - -+ terminal.notification_received.connect(notification_received_cb); -+ - /* Settings */ - if (App.Options.no_double_buffer) - terminal.set_double_buffered(false); -@@ -780,6 +782,11 @@ class Window : Gtk.ApplicationWindow - set_title(terminal.get_window_title()); - } - -+ private void notification_received_cb(Vte.Terminal terminal, string summary, string? body) -+ { -+ print ("[%s]: %s\n", summary, body); -+ } -+ - } /* class Window */ - - class App : Gtk.Application -diff --git a/src/app/app.cc b/src/app/app.cc -index b155efa3f348..250d09d8b4c5 100644 ---- a/src/app/app.cc -+++ b/src/app/app.cc -@@ -1628,6 +1628,14 @@ window_window_title_changed_cb(VteTerminal* terminal, - vte_terminal_get_window_title(window->terminal)); - } - -+static void -+notification_received_cb(VteTerminal *terminal, -+ const gchar *summary, -+ const gchar *body) -+{ -+ g_print("[%s]: %s\n", summary, body); -+} -+ - static void - window_lower_window_cb(VteTerminal* terminal, - VteappWindow* window) -@@ -1855,6 +1863,8 @@ vteapp_window_constructed(GObject *object) - if (options.object_notifications) - g_signal_connect(window->terminal, "notify", G_CALLBACK(window_notify_cb), window); - -+ g_signal_connect(window->terminal, "notification-received", G_CALLBACK(notification_received_cb), NULL); -+ - /* Settings */ - if (options.no_double_buffer) - gtk_widget_set_double_buffered(GTK_WIDGET(window->terminal), false); --- -2.14.4 - - -From 24c78bb06d9f85393fa4e715f0d01b40496c71a6 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 - -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. - -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/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 ---- a/doc/reference/vte-sections.txt -+++ b/doc/reference/vte-sections.txt -@@ -55,6 +55,7 @@ vte_terminal_get_cursor_blink_mode - vte_terminal_set_cursor_blink_mode - vte_terminal_get_text_blink_mode - vte_terminal_set_text_blink_mode -+vte_terminal_set_scroll_speed - vte_terminal_set_scrollback_lines - vte_terminal_get_scrollback_lines - vte_terminal_set_font -diff --git a/src/vte.cc b/src/vte.cc -index 3e6eeb92cd36..83ab8f10ca1b 100644 ---- a/src/vte.cc -+++ b/src/vte.cc -@@ -9816,6 +9816,7 @@ void - Terminal::widget_scroll(GdkEventScroll *event) - { - gdouble delta_x, delta_y; -+ gdouble scroll_speed; - gdouble v; - gint cnt, i; - int button; -@@ -9869,7 +9870,13 @@ Terminal::widget_scroll(GdkEventScroll *event) - return; - } - -- v = MAX (1., ceil (gtk_adjustment_get_page_increment (m_vadjustment) / 10.)); -+ if (m_scroll_speed == 0) { -+ scroll_speed = ceil (gtk_adjustment_get_page_increment (m_vadjustment) / 10.); -+ } else { -+ scroll_speed = m_scroll_speed; -+ } -+ -+ v = MAX (1., scroll_speed); - _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() - } - } - -+bool -+Terminal::set_scroll_speed(unsigned int scroll_speed) -+{ -+ if (scroll_speed == m_scroll_speed) -+ return false; -+ -+ m_scroll_speed = scroll_speed; -+ return true; -+} -+ - bool - Terminal::set_scrollback_lines(long lines) - { -diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h -index 861a8c7402db..8e6a5d249d7a 100644 ---- a/src/vte/vteterminal.h -+++ b/src/vte/vteterminal.h -@@ -296,6 +296,10 @@ void vte_terminal_set_cursor_shape(VteTerminal *terminal, - _VTE_PUBLIC - VteCursorShape vte_terminal_get_cursor_shape(VteTerminal *terminal) _VTE_GNUC_NONNULL(1); - -+_VTE_PUBLIC -+void vte_terminal_set_scroll_speed(VteTerminal *terminal, -+ guint scroll_speed) _VTE_GNUC_NONNULL(1); -+ - /* Set the number of scrollback lines, above or at an internal minimum. */ - _VTE_PUBLIC - void vte_terminal_set_scrollback_lines(VteTerminal *terminal, -diff --git a/src/vtegtk.cc b/src/vtegtk.cc -index 0c9773535d7a..d4fe1b7edc12 100644 ---- a/src/vtegtk.cc -+++ b/src/vtegtk.cc -@@ -517,6 +517,9 @@ vte_terminal_get_property (GObject *object, - case PROP_REWRAP_ON_RESIZE: - g_value_set_boolean (value, vte_terminal_get_rewrap_on_resize (terminal)); - break; -+ case PROP_SCROLL_SPEED: -+ g_value_set_uint (value, impl->m_scroll_speed); -+ break; - case PROP_SCROLLBACK_LINES: - g_value_set_uint (value, vte_terminal_get_scrollback_lines(terminal)); - break; -@@ -618,6 +621,9 @@ vte_terminal_set_property (GObject *object, - case PROP_REWRAP_ON_RESIZE: - vte_terminal_set_rewrap_on_resize (terminal, g_value_get_boolean (value)); - break; -+ case PROP_SCROLL_SPEED: -+ vte_terminal_set_scroll_speed (terminal, g_value_get_uint (value)); -+ break; - case PROP_SCROLLBACK_LINES: - vte_terminal_set_scrollback_lines (terminal, g_value_get_uint (value)); - break; -@@ -1564,6 +1570,21 @@ vte_terminal_class_init(VteTerminalClass *klass) - TRUE, - (GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_EXPLICIT_NOTIFY)); - -+ /** -+ * VteTerminal:scroll-speed: -+ * -+ * The number of lines by which the buffer is moved when -+ * scrolling with a mouse wheel on top of the terminal -+ * Setting it to zero will cause the buffer to be moved by an -+ * amount depending on the number of visible rows the widget -+ * can display. -+ */ -+ pspecs[PROP_SCROLL_SPEED] = -+ g_param_spec_uint ("scroll-speed", NULL, NULL, -+ 0, G_MAXUINT, -+ 0, -+ (GParamFlags) (G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_EXPLICIT_NOTIFY)); -+ - /** - * VteTerminal:scrollback-lines: - * -@@ -4122,6 +4143,30 @@ vte_terminal_get_row_count(VteTerminal *terminal) - return IMPL(terminal)->m_row_count; - } - -+/** -+ * vte_terminal_set_scroll_speed: -+ * @terminal: a #VteTerminal -+ * @scroll_speed: move the buffer by this number of lines while scrolling -+ * -+ * Sets the number of lines by which the buffer is moved when -+ * scrolling with a mouse wheel. Setting it to zero will cause the -+ * buffer to be moved by an amount depending on the number of visible -+ * rows the widget can display. -+ */ -+void -+vte_terminal_set_scroll_speed(VteTerminal *terminal, guint scroll_speed) -+{ -+ g_return_if_fail(VTE_IS_TERMINAL(terminal)); -+ -+ GObject *object = G_OBJECT(terminal); -+ g_object_freeze_notify(object); -+ -+ if (IMPL(terminal)->set_scroll_speed(scroll_speed)) -+ g_object_notify_by_pspec(object, pspecs[PROP_SCROLL_SPEED]); -+ -+ g_object_thaw_notify(object); -+} -+ - /** - * vte_terminal_set_scrollback_lines: - * @terminal: a #VteTerminal -diff --git a/src/vtegtk.hh b/src/vtegtk.hh -index 126d29326f11..b2c9edfa8246 100644 ---- a/src/vtegtk.hh -+++ b/src/vtegtk.hh -@@ -86,6 +86,7 @@ enum { - PROP_MOUSE_POINTER_AUTOHIDE, - PROP_PTY, - PROP_REWRAP_ON_RESIZE, -+ PROP_SCROLL_SPEED, - PROP_SCROLLBACK_LINES, - PROP_SCROLL_ON_KEYSTROKE, - PROP_SCROLL_ON_OUTPUT, -diff --git a/src/vteinternal.hh b/src/vteinternal.hh -index c5b24ffe2ca9..620bcf200af6 100644 ---- a/src/vteinternal.hh -+++ b/src/vteinternal.hh -@@ -457,6 +457,7 @@ public: - /* Scrolling options. */ - gboolean m_scroll_on_output; - gboolean m_scroll_on_keystroke; -+ guint m_scroll_speed; - 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); - 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 - - -From 82cbdbbaa55696b422b409b9174d6df8cdb8ee4a 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 - -https://bugzilla.redhat.com/show_bug.cgi?id=1103380 ---- - bindings/vala/app.vala | 4 ++++ - src/app/app.cc | 4 ++++ - 2 files changed, 8 insertions(+) - -diff --git a/bindings/vala/app.vala b/bindings/vala/app.vala -index 4c5d9a2b3bad..3b7310679239 100644 ---- a/bindings/vala/app.vala -+++ b/bindings/vala/app.vala -@@ -335,6 +335,7 @@ class Window : Gtk.ApplicationWindow - terminal.set_rewrap_on_resize(!App.Options.no_rewrap); - terminal.set_scroll_on_output(false); - terminal.set_scroll_on_keystroke(true); -+ terminal.set_scroll_speed(App.Options.scroll_speed); - terminal.set_scrollback_lines(App.Options.scrollback_lines); - - /* Style */ -@@ -856,6 +857,7 @@ class App : Gtk.Application - public static bool object_notifications = false; - public static string? output_filename = null; - public static bool reverse = false; -+ public static uint scroll_speed = 0; - 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 - "Save terminal contents to file at exit", null }, - { "reverse", 0, 0, OptionArg.NONE, ref reverse, - "Reverse foreground/background colors", null }, -+ { "scroll-speed", 0, 0, OptionArg.INT, ref scroll_speed, -+ "Specify the scroll speed", null }, - { "scrollback-lines", 'n', 0, OptionArg.INT, ref scrollback_lines, - "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 ---- a/src/app/app.cc -+++ b/src/app/app.cc -@@ -93,6 +93,7 @@ public: - int verbosity{0}; - double cell_height_scale{1.0}; - double cell_width_scale{1.0}; -+ unsigned int scroll_speed{0}; - VteCursorBlinkMode cursor_blink_mode{VTE_CURSOR_BLINK_SYSTEM}; - VteCursorShape cursor_shape{VTE_CURSOR_SHAPE_BLOCK}; - VteTextBlinkMode text_blink_mode{VTE_TEXT_BLINK_ALWAYS}; -@@ -405,6 +406,8 @@ public: - "Save terminal contents to file at exit", nullptr }, - { "reverse", 0, 0, G_OPTION_ARG_NONE, &reverse, - "Reverse foreground/background colors", nullptr }, -+ { "scroll-speed", 0, 0, G_OPTION_ARG_INT, &scroll_speed, -+ "Specify the scroll speed", nullptr }, - { "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) - 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); -+ vte_terminal_set_scroll_speed(window->terminal, options.scroll_speed); - vte_terminal_set_scrollback_lines(window->terminal, options.scrollback_lines); - vte_terminal_set_text_blink_mode(window->terminal, options.text_blink_mode); - --- -2.14.4 - -- Gitee From 59ffd45266d8b112a14275042463af832dfa7ce2 Mon Sep 17 00:00:00 2001 From: tubalu Date: Mon, 20 Jan 2020 17:27:17 +0800 Subject: [PATCH 3/3] delete useless patch --- vte291.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/vte291.spec b/vte291.spec index 30c9318..b0df986 100644 --- a/vte291.spec +++ b/vte291.spec @@ -1,12 +1,10 @@ Name: vte291 Version: 0.54.1 -Release: 4 +Release: 5 Summary: Virtual terminal widget License: LGPLv2+ and GPLv3+ URL: http://www.gnome.org/ Source0: http://download.gnome.org/sources/vte/0.54/vte-%{version}.tar.xz -Patch0000: vte291-Fix-the-build-with-GCC-8.1.1.patch -Patch0001: vte291-command-notify-scroll-speed.patch BuildRequires: gcc-c++ gettext pkgconfig(gnutls) >= 3.2.7 BuildRequires: gobject-introspection-devel gperf pkgconfig(gtk+-3.0) >= 3.8.0 @@ -37,6 +35,8 @@ CXXFLAGS="$CFLAGS" \ LDFLAGS="$LDFLAGS -Wl,-z,relro -Wl,-z,now -pie" \ %configure --disable-static --libexecdir=%{_libdir}/vte-2.91 --disable-gtk-doc \ --disable-silent-rules --enable-introspection + +sed -i 's/Widget::unmap()/Widget::unmap() noexcept/' src/widget.cc %make_build @@ -62,5 +62,8 @@ LDFLAGS="$LDFLAGS -Wl,-z,relro -Wl,-z,now -pie" \ %{_datadir}/vala/ %changelog +* Mon Jan 20 2020 qinjian - 0.54.1-5 +- Delete useless patch + * Mon Oct 21 2019 Lijin Yang - 0.54.1-4 - Package init -- Gitee