Author: jannis Date: 2008-06-21 17:06:35 +0000 (Sat, 21 Jun 2008) New Revision: 27114
Modified: xfce4-mixer/trunk/ChangeLog xfce4-mixer/trunk/libxfce4mixer/xfce-mixer-track-combo.c xfce4-mixer/trunk/panel-plugin/xfce-mixer-plugin.c xfce4-mixer/trunk/panel-plugin/xfce-volume-button.c Log: * panel-plugin/xfce-volume-button.c: Remove the keyboard grabbing feature. It causes too much problems. People without a mousewheel will have to click the plugin and use the real mixer for now. Modified: xfce4-mixer/trunk/ChangeLog =================================================================== --- xfce4-mixer/trunk/ChangeLog 2008-06-21 15:58:21 UTC (rev 27113) +++ xfce4-mixer/trunk/ChangeLog 2008-06-21 17:06:35 UTC (rev 27114) @@ -1,5 +1,12 @@ 2008-06-21 Jannis Pohlmann <[EMAIL PROTECTED]> + * panel-plugin/xfce-volume-button.c: Remove the keyboard + grabbing feature. It causes too much problems. People without + a mousewheel will have to click the plugin and use the real + mixer for now. + +2008-06-21 Jannis Pohlmann <[EMAIL PROTECTED]> + * libxfce4mixer/xfce-mixer-track-combo.c: Increment the counter for determining the active track index only when playback and capture tracks are found. Modified: xfce4-mixer/trunk/libxfce4mixer/xfce-mixer-track-combo.c =================================================================== --- xfce4-mixer/trunk/libxfce4mixer/xfce-mixer-track-combo.c 2008-06-21 15:58:21 UTC (rev 27113) +++ xfce4-mixer/trunk/libxfce4mixer/xfce-mixer-track-combo.c 2008-06-21 17:06:35 UTC (rev 27114) @@ -209,8 +209,6 @@ g_return_if_fail (IS_XFCE_MIXER_TRACK_COMBO (combo)); - g_message ("set_soundcard: combo->track_name = %s", combo->track_name); - if (G_LIKELY (combo->card != NULL)) g_object_unref (G_OBJECT (combo->card)); @@ -240,20 +238,13 @@ NAME_COLUMN, GST_MIXER_TRACK (titer->data)->label, TRACK_COLUMN, GST_MIXER_TRACK (titer->data), -1); - g_message ("compare %s to %s", combo->track_name, GST_MIXER_TRACK (titer->data)->label); - if (G_UNLIKELY (combo->track_name != NULL && g_utf8_collate (GST_MIXER_TRACK (titer->data)->label, combo->track_name) == 0)) - { - g_message ("equal => active_index = %i", counter); - active_index = counter; - } + active_index = counter; ++counter; } } - g_message ("active_index = %i", active_index); - gtk_combo_box_set_active (GTK_COMBO_BOX (combo), active_index); } Modified: xfce4-mixer/trunk/panel-plugin/xfce-mixer-plugin.c =================================================================== --- xfce4-mixer/trunk/panel-plugin/xfce-mixer-plugin.c 2008-06-21 15:58:21 UTC (rev 27113) +++ xfce4-mixer/trunk/panel-plugin/xfce-mixer-plugin.c 2008-06-21 17:06:35 UTC (rev 27114) @@ -188,8 +188,6 @@ size -= 2 + 2 * MAX (mixer_plugin->button->style->xthickness, mixer_plugin->button->style->ythickness); - g_message ("icon size = %i", size); - xfce_volume_button_set_icon_size (XFCE_VOLUME_BUTTON (mixer_plugin->button), size); xfce_volume_button_update (XFCE_VOLUME_BUTTON (mixer_plugin->button)); @@ -263,8 +261,6 @@ xfce_panel_plugin_block_menu (mixer_plugin->plugin); - g_message ("mixer_plugin->card_name = %s, mixer_plugin->track_name = %s", mixer_plugin->card_name, mixer_plugin->track_name); - dialog = xfce_plugin_dialog_new (mixer_plugin->card_name, mixer_plugin->track_name); gtk_dialog_run (GTK_DIALOG (dialog)); @@ -273,8 +269,6 @@ if (G_LIKELY (IS_XFCE_MIXER_CARD (card) && GST_IS_MIXER_TRACK (track))) { - g_message ("Changed to card %s and track %s", xfce_mixer_card_get_display_name (card), GST_MIXER_TRACK (track)->label); - xfce_mixer_plugin_replace_values (mixer_plugin, xfce_mixer_card_get_display_name (card), GST_MIXER_TRACK (track)->label); xfce_mixer_plugin_write_config (mixer_plugin); @@ -394,8 +388,6 @@ xfce_mixer_card_get_track_volume (mixer_plugin->card, mixer_plugin->track, volumes); volume = ((gdouble) volumes[0]) / mixer_plugin->track->max_volume; - g_message ("volume (int) = %i, volume (double) = %f", volumes[0], volume); - xfce_volume_button_set_volume (XFCE_VOLUME_BUTTON (mixer_plugin->button), volume); g_free (volumes); Modified: xfce4-mixer/trunk/panel-plugin/xfce-volume-button.c =================================================================== --- xfce4-mixer/trunk/panel-plugin/xfce-volume-button.c 2008-06-21 15:58:21 UTC (rev 27113) +++ xfce4-mixer/trunk/panel-plugin/xfce-volume-button.c 2008-06-21 17:06:35 UTC (rev 27114) @@ -60,9 +60,11 @@ static void xfce_volume_button_init (XfceVolumeButton *button); static void xfce_volume_button_dispose (GObject *object); static void xfce_volume_button_finalize (GObject *object); -static void xfce_volume_button_key_pressed (GtkWidget *widget, +#if 0 +static gboolean xfce_volume_button_key_pressed (GtkWidget *widget, GdkEventKey *event, XfceVolumeButton *button); +#endif static gboolean xfce_volume_button_button_pressed (GtkWidget *widget, GdkEventButton *event, XfceVolumeButton *button); @@ -192,11 +194,14 @@ gtk_widget_show (button->image); gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE); + gtk_button_set_focus_on_click (GTK_BUTTON (button), FALSE); + GTK_WIDGET_UNSET_FLAGS (GTK_WIDGET (button), GTK_CAN_DEFAULT|GTK_CAN_FOCUS); +#if 0 + /* UNSED FOR NOW DUE TO TOO MUCH PROBLEMS WITH KEYBOARD FOCUS GRABBING */ g_signal_connect (G_OBJECT (button), "key-press-event", G_CALLBACK (xfce_volume_button_key_pressed), button); +#endif g_signal_connect (G_OBJECT (button), "button-press-event", G_CALLBACK (xfce_volume_button_button_pressed), button); - g_signal_connect (G_OBJECT (button), "enter-notify-event", G_CALLBACK (xfce_volume_button_enter), NULL); - g_signal_connect (G_OBJECT (button), "leave-notify-event", G_CALLBACK (xfce_volume_button_leave), NULL); g_signal_connect (G_OBJECT (button), "scroll-event", G_CALLBACK (xfce_volume_button_scrolled), button); xfce_volume_button_update (button); @@ -230,16 +235,18 @@ -static void +#if 0 +static gboolean xfce_volume_button_key_pressed (GtkWidget *widget, GdkEventKey *event, XfceVolumeButton *button) { - gdouble value; - gdouble step_increment; - gdouble page_size; - gdouble min_value; - gdouble max_value; + gboolean handled = FALSE; + gdouble value; + gdouble step_increment; + gdouble page_size; + gdouble min_value; + gdouble max_value; g_return_if_fail (IS_XFCE_VOLUME_BUTTON (button)); @@ -254,28 +261,37 @@ { case GDK_plus: gtk_adjustment_set_value (GTK_ADJUSTMENT (button->adjustment), value + step_increment); + handled = TRUE; break; case GDK_minus: gtk_adjustment_set_value (GTK_ADJUSTMENT (button->adjustment), value - step_increment); + handled = TRUE; break; case GDK_Page_Up: gtk_adjustment_set_value (GTK_ADJUSTMENT (button->adjustment), value + page_size); + handled = TRUE; break; case GDK_Page_Down: gtk_adjustment_set_value (GTK_ADJUSTMENT (button->adjustment), value - page_size); + handled = TRUE; break; case GDK_Home: gtk_adjustment_set_value (GTK_ADJUSTMENT (button->adjustment), max_value); + handled = TRUE; break; case GDK_End: gtk_adjustment_set_value (GTK_ADJUSTMENT (button->adjustment), min_value); + handled = TRUE; break; } xfce_volume_button_update (button); g_signal_emit_by_name (button, "volume-changed", gtk_adjustment_get_value (GTK_ADJUSTMENT (button->adjustment))); + + return handled; } +#endif @@ -304,41 +320,6 @@ static void -xfce_volume_button_enter (GtkWidget *widget, - GdkEventCrossing *event) -{ - g_return_if_fail (GTK_IS_WIDGET (widget)); - - if (!GTK_WIDGET_HAS_FOCUS (widget)) - { - gtk_widget_grab_focus (widget); - gtk_grab_add (widget); - gdk_pointer_grab (widget->window, TRUE, GDK_BUTTON_PRESS_MASK|GDK_BUTTON_RELEASE_MASK|GDK_POINTER_MOTION_MASK|GDK_SCROLL_MASK, NULL, NULL, GDK_CURRENT_TIME); - gdk_keyboard_grab (widget->window, TRUE, GDK_CURRENT_TIME); - gtk_widget_set_state (widget, GTK_STATE_SELECTED); - } -} - - - -static void -xfce_volume_button_leave (GtkWidget *widget, - GdkEventCrossing *event) -{ - g_return_if_fail (GTK_IS_WIDGET (widget)); - - if (GTK_WIDGET_HAS_FOCUS (widget)) - { - gtk_widget_set_state (widget, GTK_STATE_NORMAL); - gdk_keyboard_ungrab (GDK_CURRENT_TIME); - gdk_pointer_ungrab (GDK_CURRENT_TIME); - gtk_grab_remove (widget); - } -} - - - -static void xfce_volume_button_scrolled (GtkWidget *widget, GdkEventScroll *event, XfceVolumeButton *button) _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org http://foo-projects.org/mailman/listinfo/xfce4-commits