From eae1fd1ba683d8126b956eae5e0f0d491cf7977c Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Sun, 26 Nov 2023 18:51:32 -0800 Subject: [PATCH 9/9] expose notification/shellcmd/containers to GTK 4 --- src/app/app.cc | 2 +- src/vte.cc | 2 -- src/vte/vteterminal.h | 8 -------- src/vtegtk.cc | 10 ---------- src/vtegtk.hh | 4 ---- src/vteinternal.hh | 10 ---------- src/vteseq.cc | 9 --------- 7 files changed, 1 insertion(+), 44 deletions(-) diff --git a/src/app/app.cc b/src/app/app.cc index 68c2032a..4f9a2473 100644 --- a/src/app/app.cc +++ b/src/app/app.cc @@ -2627,11 +2627,11 @@ vteapp_window_constructed(GObject *object) if (options.object_notifications) g_signal_connect(window->terminal, "notify", G_CALLBACK(window_notify_cb), window); -#if VTE_GTK == 3 g_signal_connect(window->terminal, "notification-received", G_CALLBACK(notification_received_cb), NULL); g_signal_connect(window->terminal, "shell-precmd", G_CALLBACK(shell_precmd_cb), NULL); g_signal_connect(window->terminal, "shell-preexec", G_CALLBACK(shell_preexec_cb), NULL); +#if VTE_GTK == 3 /* Settings */ if (options.no_double_buffer) { G_GNUC_BEGIN_IGNORE_DEPRECATIONS; diff --git a/src/vte.cc b/src/vte.cc index 1270356e..751eff0e 100644 --- a/src/vte.cc +++ b/src/vte.cc @@ -10766,7 +10766,6 @@ Terminal::emit_pending_signals() emit_adjustment_changed(); -#if _VTE_GTK == 3 if (m_pending_changes & vte::to_integral(PendingChanges::NOTIFICATION)) { _vte_debug_print (VTE_DEBUG_SIGNALS, "Emitting `notification-received'.\n"); @@ -10794,7 +10793,6 @@ Terminal::emit_pending_signals() g_object_notify_by_pspec(freezer.get(), pspecs[PROP_CURRENT_CONTAINER_NAME]); g_object_notify_by_pspec(freezer.get(), pspecs[PROP_CURRENT_CONTAINER_RUNTIME]); } -#endif if (m_pending_changes & vte::to_integral(PendingChanges::TITLE)) { if (m_window_title != m_window_title_pending) { diff --git a/src/vte/vteterminal.h b/src/vte/vteterminal.h index a16773e4..089dae6e 100644 --- a/src/vte/vteterminal.h +++ b/src/vte/vteterminal.h @@ -113,11 +113,9 @@ struct _VteTerminalClass { void (*bell)(VteTerminal* terminal); -#if _VTE_GTK == 3 void (*notification_received)(VteTerminal* terminal, const gchar *summary, const gchar *body); void (*shell_precmd)(VteTerminal* terminal); void (*shell_preexec)(VteTerminal* terminal); -#endif /* _VTE_GTK == 3 */ void (*setup_context_menu)(VteTerminal* terminal, VteEventContext const* context); @@ -125,11 +123,7 @@ struct _VteTerminalClass { /* Add new vfuncs just above, and subtract from the padding below. */ /* Padding for future expansion. */ -#if _VTE_GTK == 3 - gpointer _padding[12]; -#elif _VTE_GTK == 4 gpointer _padding[15]; -#endif /* _VTE_GTK */ // FIXMEgtk4 use class private data instead VteTerminalClassPrivate *priv; @@ -574,12 +568,10 @@ _VTE_PUBLIC glong vte_terminal_get_column_count(VteTerminal *terminal) _VTE_CXX_NOEXCEPT _VTE_GNUC_NONNULL(1); _VTE_PUBLIC const char *vte_terminal_get_window_title(VteTerminal *terminal) _VTE_CXX_NOEXCEPT _VTE_GNUC_NONNULL(1); -#if _VTE_GTK == 3 _VTE_PUBLIC const char *vte_terminal_get_current_container_name(VteTerminal *terminal) _VTE_CXX_NOEXCEPT _VTE_GNUC_NONNULL(1); _VTE_PUBLIC const char *vte_terminal_get_current_container_runtime(VteTerminal *terminal) _VTE_CXX_NOEXCEPT _VTE_GNUC_NONNULL(1); -#endif _VTE_PUBLIC const char *vte_terminal_get_current_directory_uri(VteTerminal *terminal) _VTE_CXX_NOEXCEPT _VTE_GNUC_NONNULL(1); _VTE_PUBLIC diff --git a/src/vtegtk.cc b/src/vtegtk.cc index 9814cf54..5ef11564 100644 --- a/src/vtegtk.cc +++ b/src/vtegtk.cc @@ -999,14 +999,12 @@ try case PROP_CURSOR_BLINK_MODE: g_value_set_enum (value, vte_terminal_get_cursor_blink_mode (terminal)); break; -#if _VTE_GTK == 3 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; -#endif case PROP_CURRENT_DIRECTORY_URI: g_value_set_string (value, vte_terminal_get_current_directory_uri (terminal)); break; @@ -1353,11 +1351,9 @@ vte_terminal_class_init(VteTerminalClass *klass) klass->child_exited = NULL; klass->encoding_changed = NULL; klass->char_size_changed = NULL; -#if _VTE_GTK == 3 klass->notification_received = NULL; klass->shell_precmd = NULL; klass->shell_preexec = NULL; -#endif klass->window_title_changed = NULL; klass->icon_title_changed = NULL; klass->selection_changed = NULL; @@ -1441,7 +1437,6 @@ vte_terminal_class_init(VteTerminalClass *klass) G_OBJECT_CLASS_TYPE(klass), g_cclosure_marshal_VOID__INTv); -#if _VTE_GTK == 3 /** * VteTerminal::notification-received: * @vteterminal: the object which received the signal @@ -1495,7 +1490,6 @@ vte_terminal_class_init(VteTerminalClass *klass) NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); -#endif /** * VteTerminal::window-title-changed: @@ -2538,7 +2532,6 @@ vte_terminal_class_init(VteTerminalClass *klass) NULL, (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS | G_PARAM_EXPLICIT_NOTIFY)); -#if _VTE_GTK == 3 /** * VteTerminal:current-container-name: * @@ -2559,7 +2552,6 @@ vte_terminal_class_init(VteTerminalClass *klass) g_param_spec_string ("current-container-runtime", NULL, NULL, NULL, (GParamFlags) (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS | G_PARAM_EXPLICIT_NOTIFY)); -#endif /** * VteTerminal:current-directory-uri: @@ -5462,7 +5454,6 @@ catch (...) return -1; } -#if _VTE_GTK == 3 /** * vte_terminal_get_current_container_name: * @terminal: a #VteTerminal @@ -5512,7 +5503,6 @@ catch (...) vte::log_exception(); return NULL; } -#endif /** * vte_terminal_get_current_directory_uri: diff --git a/src/vtegtk.hh b/src/vtegtk.hh index 3505bce5..256d5c01 100644 --- a/src/vtegtk.hh +++ b/src/vtegtk.hh @@ -53,11 +53,9 @@ enum { SIGNAL_RESTORE_WINDOW, SIGNAL_SELECTION_CHANGED, SIGNAL_SETUP_CONTEXT_MENU, -#if _VTE_GTK == 3 SIGNAL_SHELL_PRECMD, SIGNAL_SHELL_PREEXEC, SIGNAL_NOTIFICATION_RECEIVED, -#endif SIGNAL_WINDOW_TITLE_CHANGED, LAST_SIGNAL }; @@ -77,10 +75,8 @@ enum { PROP_CONTEXT_MENU, PROP_CURSOR_BLINK_MODE, PROP_CURSOR_SHAPE, -#if _VTE_GTK == 3 PROP_CURRENT_CONTAINER_NAME, PROP_CURRENT_CONTAINER_RUNTIME, -#endif PROP_CURRENT_DIRECTORY_URI, PROP_CURRENT_FILE_URI, PROP_DELETE_BINDING, diff --git a/src/vteinternal.hh b/src/vteinternal.hh index 4f71e7c9..b181a392 100644 --- a/src/vteinternal.hh +++ b/src/vteinternal.hh @@ -63,9 +63,7 @@ #include #include #include -#if _VTE_GTK == 3 #include -#endif #include #include #include @@ -128,7 +126,6 @@ typedef enum _VteCharacterReplacement { VTE_CHARACTER_REPLACEMENT_LINE_DRAWING } VteCharacterReplacement; -#if _VTE_GTK == 3 struct VteContainer { public: VteContainer(const std::string &name, const std::string &runtime) : @@ -140,7 +137,6 @@ public: std::string m_name; std::string m_runtime; }; -#endif typedef struct _VtePaletteColor { struct { @@ -753,13 +749,11 @@ public: gboolean m_cursor_moved_pending; gboolean m_contents_changed_pending; -#if _VTE_GTK == 3 /* desktop notification */ std::stack m_containers; std::string m_notification_summary; std::string m_notification_body; -#endif std::string m_window_title{}; std::string m_current_directory_uri{}; @@ -774,12 +768,10 @@ public: TITLE = 1u << 0, CWD = 1u << 1, CWF = 1u << 2, -#if _VTE_GTK == 3 NOTIFICATION = 1u << 3, SHELL_PREEXEC = 1u << 4, SHELL_PRECMD = 1u << 5, CONTAINERS = 1u << 6, -#endif }; unsigned m_pending_changes{0}; @@ -1704,11 +1696,9 @@ public: int osc) noexcept; /* OSC handlers */ -#if _VTE_GTK == 3 void handle_urxvt_extension(vte::parser::Sequence const& seq, vte::parser::StringTokeniser::const_iterator& token, vte::parser::StringTokeniser::const_iterator const& endtoken) noexcept; -#endif 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 1072c5dc..7e699a63 100644 --- a/src/vteseq.cc +++ b/src/vteseq.cc @@ -39,11 +39,9 @@ #define ST_C0 _VTE_CAP_ST #include -#if _VTE_GTK == 3 #include #include #include -#endif using namespace std::literals; @@ -1304,7 +1302,6 @@ Terminal::erase_in_line(vte::parser::Sequence const& seq) m_text_deleted_flag = TRUE; } -#if _VTE_GTK == 3 void Terminal::handle_urxvt_extension(vte::parser::Sequence const& seq, vte::parser::StringTokeniser::const_iterator& token, @@ -1419,7 +1416,6 @@ Terminal::handle_urxvt_extension(vte::parser::Sequence const& seq, m_pending_changes |= vte::to_integral(PendingChanges::SHELL_PREEXEC); } } -#endif bool Terminal::get_osc_color_index(int osc, @@ -6800,11 +6796,9 @@ Terminal::OSC(vte::parser::Sequence const& seq) reset_color(VTE_HIGHLIGHT_FG, VTE_COLOR_SOURCE_ESCAPE); break; -#if _VTE_GTK == 3 case VTE_OSC_URXVT_EXTENSION: handle_urxvt_extension(seq, it, cend); break; -#endif case VTE_OSC_XTERM_SET_ICON_TITLE: case VTE_OSC_XTERM_SET_XPROPERTY: @@ -6847,9 +6841,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: -#if _VTE_GTK != 3 - case VTE_OSC_URXVT_EXTENSION: -#endif case VTE_OSC_YF_RQGWR: default: break; -- 2.43.0