summaryrefslogtreecommitdiff
path: root/x11-libs/vte/files/vte-ng-0.46.0.patch
diff options
context:
space:
mode:
Diffstat (limited to 'x11-libs/vte/files/vte-ng-0.46.0.patch')
-rw-r--r--x11-libs/vte/files/vte-ng-0.46.0.patch301
1 files changed, 301 insertions, 0 deletions
diff --git a/x11-libs/vte/files/vte-ng-0.46.0.patch b/x11-libs/vte/files/vte-ng-0.46.0.patch
new file mode 100644
index 00000000..01c891e9
--- /dev/null
+++ b/x11-libs/vte/files/vte-ng-0.46.0.patch
@@ -0,0 +1,301 @@
+-------------------------------------------------------------------------------
+expose-functions-for-pausing
+-------------------------------------------------------------------------------
+expose functions for pausing unpausing output
+
+From: Jelle van der Waa <jelle@vdwaa.nl>
+
+
+---
+ src/vte/vteterminal.h | 6 ++++++
+ src/vtegtk.cc | 26 ++++++++++++++++++++++++++
+ 2 files changed, 32 insertions(+)
+
+diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h
+index 7836271..7b0f2dc 100644
+--- a/src/vte/vteterminal.h
++++ b/src/vte/vteterminal.h
+@@ -168,6 +168,12 @@ void vte_terminal_feed_child_binary(VteTerminal *terminal,
+ const guint8 *data,
+ gsize length) _VTE_GNUC_NONNULL(1);
+
++_VTE_PUBLIC
++void vte_terminal_connect_pty_read(VteTerminal *terminal);
++
++_VTE_PUBLIC
++void vte_terminal_disconnect_pty_read(VteTerminal *terminal);
++
+ /* Copy currently-selected text to the clipboard, or from the clipboard to
+ * the terminal. */
+ _VTE_PUBLIC
+diff --git a/src/vtegtk.cc b/src/vtegtk.cc
+index 924b5a0..442e20c 100644
+--- a/src/vtegtk.cc
++++ b/src/vtegtk.cc
+@@ -2325,6 +2325,32 @@ vte_terminal_feed_child(VteTerminal *terminal,
+ }
+
+ /**
++ * vte_terminal_connect_pty_read:
++ * @terminal: a #VteTerminal
++ *
++ * Unpause output
++ */
++void
++vte_terminal_connect_pty_read(VteTerminal *terminal)
++{
++ g_return_if_fail(VTE_IS_TERMINAL(terminal));
++ IMPL(terminal)->connect_pty_read();
++}
++
++/**
++ * vte_terminal_disconnect_pty_read:
++ * @terminal: a #VteTerminal
++ *
++ * Pause output
++ */
++void
++vte_terminal_disconnect_pty_read(VteTerminal *terminal)
++{
++ g_return_if_fail(VTE_IS_TERMINAL(terminal));
++ IMPL(terminal)->disconnect_pty_read();
++}
++
++/**
+ * vte_terminal_feed_child_binary:
+ * @terminal: a #VteTerminal
+ * @data: (array length=length) (element-type guint8) (allow-none): data to send to the child
+-------------------------------------------------------------------------------
+expose-function-for-setting
+-------------------------------------------------------------------------------
+expose function for setting cursor position
+
+From: Jelle van der Waa <jelle@vdwaa.nl>
+
+
+---
+ src/vte/vteterminal.h | 5 +++++
+ src/vtegtk.cc | 24 ++++++++++++++++++++++++
+ 2 files changed, 29 insertions(+)
+
+diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h
+index 7b0f2dc..03e963d 100644
+--- a/src/vte/vteterminal.h
++++ b/src/vte/vteterminal.h
+@@ -340,6 +340,11 @@ _VTE_PUBLIC
+ void vte_terminal_get_cursor_position(VteTerminal *terminal,
+ glong *column,
+ glong *row) _VTE_GNUC_NONNULL(1);
++_VTE_PUBLIC
++void vte_terminal_set_cursor_position(VteTerminal *terminal,
++ glong column,
++ glong row) _VTE_GNUC_NONNULL(1);
++
+
+ /* Add a matching expression, returning the tag the widget assigns to that
+ * expression. */
+diff --git a/src/vtegtk.cc b/src/vtegtk.cc
+index 442e20c..f9c196b 100644
+--- a/src/vtegtk.cc
++++ b/src/vtegtk.cc
+@@ -2160,6 +2160,30 @@ vte_terminal_get_cursor_position(VteTerminal *terminal,
+ }
+
+ /**
++ * vte_terminal_set_cursor_position
++ * @terminal: a #VteTerminal
++ * @column: the new cursor column
++ * @row: the new cursor row
++ *
++ * Set the location of the cursor.
++ */
++void
++vte_terminal_set_cursor_position(VteTerminal *terminal,
++ long column, long row)
++{
++ g_return_if_fail(VTE_IS_TERMINAL(terminal));
++
++ auto impl = IMPL(terminal);
++ impl->invalidate_cursor_once(FALSE);
++ impl->m_screen->cursor.col = column;
++ impl->m_screen->cursor.row = row;
++ impl->invalidate_cursor_once(FALSE);
++ impl->check_cursor_blink();
++ impl->queue_cursor_moved();
++
++}
++
++/**
+ * vte_terminal_pty_new_sync:
+ * @terminal: a #VteTerminal
+ * @flags: flags from #VtePtyFlags
+-------------------------------------------------------------------------------
+add-function-for-setting-the
+-------------------------------------------------------------------------------
+add function for setting the text selections
+
+From: Jelle van der Waa <jelle@vdwaa.nl>
+
+
+---
+ src/vte/vteterminal.h | 4 ++++
+ src/vtegtk.cc | 20 ++++++++++++++++++++
+ 2 files changed, 24 insertions(+)
+
+diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h
+index 03e963d..36a7970 100644
+--- a/src/vte/vteterminal.h
++++ b/src/vte/vteterminal.h
+@@ -188,6 +188,10 @@ _VTE_PUBLIC
+ void vte_terminal_select_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
+ _VTE_PUBLIC
+ void vte_terminal_unselect_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
++_VTE_PUBLIC
++void vte_terminal_select_text(VteTerminal *terminal, long start_col, long start_row,
++ long end_col, long end_row) _VTE_GNUC_NONNULL(1);
++
+
+ /* By-word selection */
+ _VTE_PUBLIC
+diff --git a/src/vtegtk.cc b/src/vtegtk.cc
+index f9c196b..e94d7e3 100644
+--- a/src/vtegtk.cc
++++ b/src/vtegtk.cc
+@@ -2135,6 +2135,26 @@ vte_terminal_unselect_all(VteTerminal *terminal)
+ }
+
+ /**
++ * vte_terminal_select_text:
++ * @terminal: a #VteTerminal
++ * @start_col: the starting column for the selection
++ * @start_row: the starting row for the selection
++ * @end_col: the end column for the selection
++ * @end_row: the end row for the selection
++ *
++ * Sets the current selection region.
++ */
++void
++vte_terminal_select_text(VteTerminal *terminal,
++ long start_col, long start_row,
++ long end_col, long end_row)
++{
++ g_return_if_fail (VTE_IS_TERMINAL (terminal));
++
++ IMPL(terminal)->select_text(start_col, start_row, end_col, end_row);
++}
++
++/**
+ * vte_terminal_get_cursor_position:
+ * @terminal: a #VteTerminal
+ * @column: (out) (allow-none): a location to store the column, or %NULL
+-------------------------------------------------------------------------------
+add-functions-to-get-set-block
+-------------------------------------------------------------------------------
+add functions to get/set block selection mode
+
+From: Jelle van der Waa <jelle@vdwaa.nl>
+
+
+---
+ src/vte/vteterminal.h | 5 +++++
+ src/vtegtk.cc | 25 +++++++++++++++++++++++++
+ 2 files changed, 30 insertions(+)
+
+diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h
+index 36a7970..8d37879 100644
+--- a/src/vte/vteterminal.h
++++ b/src/vte/vteterminal.h
+@@ -189,6 +189,11 @@ void vte_terminal_select_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
+ _VTE_PUBLIC
+ void vte_terminal_unselect_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
+ _VTE_PUBLIC
++gboolean vte_terminal_get_selection_block_mode(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
++_VTE_PUBLIC
++void vte_terminal_set_selection_block_mode(VteTerminal *terminal,
++ gboolean block_mode) _VTE_GNUC_NONNULL(1);
++_VTE_PUBLIC
+ void vte_terminal_select_text(VteTerminal *terminal, long start_col, long start_row,
+ long end_col, long end_row) _VTE_GNUC_NONNULL(1);
+
+diff --git a/src/vtegtk.cc b/src/vtegtk.cc
+index e94d7e3..e074802 100644
+--- a/src/vtegtk.cc
++++ b/src/vtegtk.cc
+@@ -2133,6 +2133,31 @@ vte_terminal_unselect_all(VteTerminal *terminal)
+
+ IMPL(terminal)->deselect_all();
+ }
++/**
++ * vte_terminal_get_selection_block_mode:
++ * @terminal: a #VteTerminal
++ *
++ * Checks whether or not block selection is enabled.
++ *
++ * Returns: %TRUE if block selection is enabled, %FALSE if not
++ */
++
++gboolean vte_terminal_get_selection_block_mode(VteTerminal *terminal) {
++ g_return_val_if_fail(VTE_IS_TERMINAL(terminal), FALSE);
++ return IMPL(terminal)->m_selection_block_mode;
++}
++/**
++ * vte_terminal_set_selection_block_mode:
++ * @terminal: a #VteTerminal
++ * @block_mode: whether block selection is enabled
++ *
++ * Sets whether or not block selection is enabled.
++ */
++void
++vte_terminal_set_selection_block_mode(VteTerminal *terminal, gboolean block_mode) {
++ g_return_if_fail (VTE_IS_TERMINAL (terminal));
++ IMPL(terminal)->m_selection_block_mode = block_mode;
++}
+
+ /**
+ * vte_terminal_select_text:
+-------------------------------------------------------------------------------
+expose-function-for-getting
+-------------------------------------------------------------------------------
+expose function for getting the selected text
+
+From: Jelle van der Waa <jelle@vdwaa.nl>
+
+
+---
+ src/vte/vteterminal.h | 4 +++-
+ src/vtegtk.cc | 7 +++++++
+ 2 files changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h
+index 8d37879..1f3095f 100644
+--- a/src/vte/vteterminal.h
++++ b/src/vte/vteterminal.h
+@@ -196,7 +196,9 @@ void vte_terminal_set_selection_block_mode(VteTerminal *terminal,
+ _VTE_PUBLIC
+ void vte_terminal_select_text(VteTerminal *terminal, long start_col, long start_row,
+ long end_col, long end_row) _VTE_GNUC_NONNULL(1);
+-
++_VTE_PUBLIC
++char *
++vte_terminal_get_selection(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
+
+ /* By-word selection */
+ _VTE_PUBLIC
+diff --git a/src/vtegtk.cc b/src/vtegtk.cc
+index e074802..2c19dde 100644
+--- a/src/vtegtk.cc
++++ b/src/vtegtk.cc
+@@ -2179,6 +2179,13 @@ vte_terminal_select_text(VteTerminal *terminal,
+ IMPL(terminal)->select_text(start_col, start_row, end_col, end_row);
+ }
+
++char *
++vte_terminal_get_selection(VteTerminal *terminal)
++{
++ g_return_val_if_fail(VTE_IS_TERMINAL(terminal), NULL);
++ return g_strdup (IMPL(terminal)->m_selection_text[VTE_SELECTION_PRIMARY]);
++}
++
+ /**
+ * vte_terminal_get_cursor_position:
+ * @terminal: a #VteTerminal