diff options
author | Victor Kareh <[email protected]> | 2025-08-08 13:05:21 -0400 |
---|---|---|
committer | Victor Kareh <[email protected]> | 2025-08-08 14:53:28 -0400 |
commit | b00570c3fc241a2d8126ebd507fc7f0c4cabd8e0 (patch) | |
tree | 2891e7222c0e56ec5de6f6384f7c8f280eaeae05 | |
parent | 6d9ddd1048111d1341566f16b30df085ce85eb7d (diff) | |
download | mate-panel-bump-libwnck-version.tar.bz2 mate-panel-bump-libwnck-version.tar.xz |
window-list: Add option to show/hide tooltipsbump-libwnck-version
This setting is now part of libwnck. It allows the window-list applet to
toggle the visibility of tooltips.
Fixes #534
-rw-r--r-- | applets/wncklet/org.mate.panel.applet.window-list.gschema.xml.in | 5 | ||||
-rw-r--r-- | applets/wncklet/window-list.c | 23 | ||||
-rw-r--r-- | applets/wncklet/window-list.ui | 58 |
3 files changed, 86 insertions, 0 deletions
diff --git a/applets/wncklet/org.mate.panel.applet.window-list.gschema.xml.in b/applets/wncklet/org.mate.panel.applet.window-list.gschema.xml.in index 93f32b46..1c4f2c0b 100644 --- a/applets/wncklet/org.mate.panel.applet.window-list.gschema.xml.in +++ b/applets/wncklet/org.mate.panel.applet.window-list.gschema.xml.in @@ -30,5 +30,10 @@ <summary>Close window on middle mouse click</summary> <description>If true, then clicking the middle mouse button over a taskbar item will close the window.</description> </key> + <key name="show-tooltips" type="b"> + <default>true</default> + <summary>Show tooltips</summary> + <description>If true, show tooltips when hovering over window list items.</description> + </key> </schema> </schemalist> diff --git a/applets/wncklet/window-list.c b/applets/wncklet/window-list.c index fa1613b0..0441559a 100644 --- a/applets/wncklet/window-list.c +++ b/applets/wncklet/window-list.c @@ -64,6 +64,7 @@ typedef struct { gboolean move_unminimized_windows; gboolean scroll_enable; gboolean middle_click_close; + gboolean show_tooltips; GtkOrientation orientation; int size; @@ -86,6 +87,7 @@ typedef struct { GtkWidget* move_minimized_radio; GtkWidget* mouse_scroll_check; GtkWidget* middle_click_close_check; + GtkWidget* show_tooltips_check; GtkWidget* change_workspace_radio; GtkWidget* minimized_windows_box; GtkWidget* window_grouping_box; @@ -135,6 +137,7 @@ static void tasklist_update(TasklistData* tasklist) wnck_tasklist_set_switch_workspace_on_unminimize(WNCK_TASKLIST(tasklist->tasklist), tasklist->move_unminimized_windows); wnck_tasklist_set_scroll_enabled (WNCK_TASKLIST(tasklist->tasklist), tasklist->scroll_enable); wnck_tasklist_set_middle_click_close (WNCK_TASKLIST (tasklist->tasklist), tasklist->middle_click_close); + wnck_tasklist_set_tooltips_enabled (WNCK_TASKLIST (tasklist->tasklist), tasklist->show_tooltips); } #endif /* HAVE_X11 */ @@ -694,6 +697,12 @@ static void middle_click_close_changed (GSettings* settings, gchar* key, Tasklis tasklist_update(tasklist); } +static void show_tooltips_changed (GSettings* settings, gchar* key, TasklistData* tasklist) +{ + tasklist->show_tooltips = g_settings_get_boolean (settings, key); + tasklist_update(tasklist); +} + static void setup_gsettings(TasklistData* tasklist) { tasklist->settings = mate_panel_applet_settings_new (MATE_PANEL_APPLET (tasklist->applet), WINDOW_LIST_SCHEMA); @@ -730,6 +739,10 @@ static void setup_gsettings(TasklistData* tasklist) "changed::middle-click-close", G_CALLBACK (middle_click_close_changed), tasklist); + g_signal_connect (tasklist->settings, + "changed::show-tooltips", + G_CALLBACK (show_tooltips_changed), + tasklist); } static void applet_size_allocate(GtkWidget *widget, GtkAllocation *allocation, TasklistData *tasklist) @@ -805,6 +818,8 @@ gboolean window_list_applet_fill(MatePanelApplet* applet) tasklist->middle_click_close = g_settings_get_boolean (tasklist->settings, "middle-click-close"); + tasklist->show_tooltips = g_settings_get_boolean (tasklist->settings, "show-tooltips"); + tasklist->size = mate_panel_applet_get_size(applet); #if !defined(WNCKLET_INPROCESS) && !GTK_CHECK_VERSION (3, 23, 0) @@ -1084,6 +1099,7 @@ static void setup_dialog(GtkBuilder* builder, TasklistData* tasklist) tasklist->change_workspace_radio = WID("change_workspace_radio"); tasklist->mouse_scroll_check = WID("mouse_scroll_check"); tasklist->middle_click_close_check = WID("middle_click_close_check"); + tasklist->show_tooltips_check = WID("show_tooltips_check"); tasklist->minimized_windows_box = WID("minimized_windows_box"); tasklist->window_grouping_box = WID("window_grouping_box"); tasklist->window_list_content_box = WID("window_list_content_box"); @@ -1121,6 +1137,13 @@ static void setup_dialog(GtkBuilder* builder, TasklistData* tasklist) "active", G_SETTINGS_BIND_DEFAULT); + /* Show tooltips: */ + g_settings_bind (tasklist->settings, + "show-tooltips", + tasklist->show_tooltips_check, + "active", + G_SETTINGS_BIND_DEFAULT); + /* change thumbnail size: */ tasklist_update_thumbnail_size_spin(tasklist); g_signal_connect (tasklist->thumbnail_size_spin, "value-changed", diff --git a/applets/wncklet/window-list.ui b/applets/wncklet/window-list.ui index 2ed06c0e..63213a52 100644 --- a/applets/wncklet/window-list.ui +++ b/applets/wncklet/window-list.ui @@ -394,6 +394,64 @@ <property name="position">3</property> </packing> </child> + <child> + <object class="GtkBox" id="tooltips_box"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkLabel" id="tooltips_label"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="label" translatable="yes">Tooltips</property> + <property name="xalign">0</property> + <attributes> + <attribute name="weight" value="bold"/> + </attributes> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkBox" id="tooltips_vbox"> + <property name="visible">True</property> + <property name="can-focus">False</property> + <property name="margin-start">6</property> + <property name="orientation">vertical</property> + <property name="spacing">6</property> + <child> + <object class="GtkCheckButton" id="show_tooltips_check"> + <property name="label" translatable="yes">_Show tooltips</property> + <property name="visible">True</property> + <property name="can-focus">True</property> + <property name="receives-default">False</property> + <property name="use-underline">True</property> + <property name="draw-indicator">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">4</property> + </packing> + </child> </object> </child> <child type="tab"> |