summaryrefslogtreecommitdiff
path: root/rcm-client-main.c
diff options
context:
space:
mode:
authorDavid Härdeman <david@hardeman.nu>2015-08-19 20:56:38 +0200
committerDavid Härdeman <david@hardeman.nu>2015-08-19 20:56:38 +0200
commit09c3b53ad8795e050b72277968fd50591bbb3a7f (patch)
treed83bcf26ec55ce585de3a86dd95bd17fe9861e4a /rcm-client-main.c
parentf3f7d5445e6f64a7c946f6e0144452952f0809e8 (diff)
Add support for editing in-kernel keymap
Diffstat (limited to 'rcm-client-main.c')
-rw-r--r--rcm-client-main.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/rcm-client-main.c b/rcm-client-main.c
index 420ab6c..3595722 100644
--- a/rcm-client-main.c
+++ b/rcm-client-main.c
@@ -165,6 +165,21 @@ create_header_button(GtkHeaderBar *header, const gchar *tooltip,
return button;
}
+gulong
+_g_signal_replace(gpointer instance, const gchar *detailed_signal, GCallback c_handler, gpointer data, GConnectFlags flags)
+{
+ g_signal_handlers_disconnect_matched(instance, G_SIGNAL_MATCH_FUNC, 0, 0, NULL, c_handler, NULL);
+ return g_signal_connect_data(instance, detailed_signal, c_handler, data, NULL, flags);
+}
+
+gulong
+_g_signal_replace_id(const gchar *widget_id, const gchar *detailed_signal, GCallback c_handler, gpointer data, GConnectFlags flags)
+{
+ GObject *w = G_OBJECT(gtk_builder_get_object(global->builder, widget_id));
+
+ return w ? _g_signal_replace(w, detailed_signal, c_handler, data, flags) : 0;
+}
+
int main(int argc, char *argv[])
{
GtkCssProvider *css;