gboolean window_menu_applet_fill(MatePanelApplet* applet) { WindowMenu* window_menu; GtkActionGroup* action_group; gchar* ui_path; window_menu = g_new0(WindowMenu, 1); window_menu->applet = GTK_WIDGET(applet); #if GTK_CHECK_VERSION (3, 20, 0) gtk_widget_set_name (window_menu->applet, "window-menu-applet-button"); #else force_no_focus_padding(window_menu->applet); #endif gtk_widget_set_tooltip_text(window_menu->applet, _("Window Selector")); mate_panel_applet_set_flags(applet, MATE_PANEL_APPLET_EXPAND_MINOR); window_menu->size = mate_panel_applet_get_size(applet); window_menu->orient = mate_panel_applet_get_orient(applet); g_signal_connect(window_menu->applet, "destroy", G_CALLBACK(window_menu_destroy), window_menu); action_group = gtk_action_group_new("WindowMenu Applet Actions"); gtk_action_group_set_translation_domain(action_group, GETTEXT_PACKAGE); gtk_action_group_add_actions(action_group, window_menu_actions, G_N_ELEMENTS(window_menu_actions), window_menu); ui_path = g_build_filename(WNCK_MENU_UI_DIR, "window-menu-menu.xml", NULL); mate_panel_applet_setup_menu_from_file(applet, ui_path, action_group); g_free(ui_path); g_object_unref(action_group); window_menu->selector = wnck_selector_new(); gtk_container_add(GTK_CONTAINER(window_menu->applet), window_menu->selector); mate_panel_applet_set_background_widget(MATE_PANEL_APPLET(window_menu->applet), GTK_WIDGET(window_menu->selector)); g_signal_connect(window_menu->applet, "key_press_event", G_CALLBACK(window_menu_key_press_event), window_menu); g_signal_connect(window_menu->applet, "size-allocate", G_CALLBACK(window_menu_size_allocate), window_menu); g_signal_connect_after(G_OBJECT(window_menu->applet), "focus-in-event", G_CALLBACK(gtk_widget_queue_draw), window_menu); g_signal_connect_after(G_OBJECT(window_menu->applet), "focus-out-event", G_CALLBACK(gtk_widget_queue_draw), window_menu); g_signal_connect_after(G_OBJECT(window_menu->selector), "draw", G_CALLBACK(window_menu_on_draw), window_menu); g_signal_connect(G_OBJECT(window_menu->selector), "button_press_event", G_CALLBACK(filter_button_press), window_menu); gtk_widget_show_all(GTK_WIDGET(window_menu->applet)); return TRUE; }
gboolean window_menu_applet_fill (PanelApplet *applet) { WindowMenu *window_menu; window_menu = g_new0 (WindowMenu, 1); window_menu->applet = GTK_WIDGET (applet); force_no_focus_padding (window_menu->applet); gtk_widget_set_tooltip_text (window_menu->applet, _("Window Selector")); panel_applet_set_flags (applet, PANEL_APPLET_EXPAND_MINOR); window_menu->size = panel_applet_get_size (applet); window_menu->orient = panel_applet_get_orient (applet); g_signal_connect (window_menu->applet, "destroy", G_CALLBACK (window_menu_destroy), window_menu); window_menu->selector = wnck_selector_new (); gtk_container_add (GTK_CONTAINER (window_menu->applet), window_menu->selector); panel_applet_set_background_widget (PANEL_APPLET (window_menu->applet), GTK_WIDGET (window_menu->selector)); g_signal_connect (window_menu->applet, "key_press_event", G_CALLBACK (window_menu_key_press_event), window_menu); g_signal_connect (window_menu->applet, "size-allocate", G_CALLBACK (window_menu_size_allocate), window_menu); g_signal_connect_after (G_OBJECT (window_menu->applet), "focus-in-event", G_CALLBACK (gtk_widget_queue_draw), window_menu); g_signal_connect_after (G_OBJECT (window_menu->applet), "focus-out-event", G_CALLBACK (gtk_widget_queue_draw), window_menu); g_signal_connect_after (G_OBJECT (window_menu->selector), "draw", G_CALLBACK (window_menu_on_draw), window_menu); g_signal_connect (G_OBJECT (window_menu->selector), "button_press_event", G_CALLBACK (filter_button_press), window_menu); gtk_widget_show_all (GTK_WIDGET (window_menu->applet)); return TRUE; }