diff options
author | Nirbheek Chauhan <nirbheek@gentoo.org> | 2009-04-12 15:30:36 +0530 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek@gentoo.org> | 2009-04-12 16:08:39 +0530 |
commit | f8228e248dc89a12e0028264303a60da2a03a9fb (patch) | |
tree | ef155066684ce71cd8aa798e5248e4d261c94eed /gnome-base/gnome-settings-daemon/files | |
parent | net-wireless/gnome-bluetooth: Fix empty IUSE (diff) | |
download | gnome-f8228e248dc89a12e0028264303a60da2a03a9fb.tar.gz gnome-f8228e248dc89a12e0028264303a60da2a03a9fb.tar.bz2 gnome-f8228e248dc89a12e0028264303a60da2a03a9fb.zip |
gnome-base/gnome-settings-daemon: Fix patch, and ebuild
* New patch by mrpouet + ikelos bug #265572
* pulseaudio and gstreamer cannot be enabled at the same time
* Update configure.ac to reflect this
Diffstat (limited to 'gnome-base/gnome-settings-daemon/files')
-rw-r--r-- | gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-2.26.0-readd-gst-vol-control-support.patch | 60 |
1 files changed, 31 insertions, 29 deletions
diff --git a/gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-2.26.0-readd-gst-vol-control-support.patch b/gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-2.26.0-readd-gst-vol-control-support.patch index 1599a40e..fa2b3255 100644 --- a/gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-2.26.0-readd-gst-vol-control-support.patch +++ b/gnome-base/gnome-settings-daemon/files/gnome-settings-daemon-2.26.0-readd-gst-vol-control-support.patch @@ -1,16 +1,8 @@ - configure.ac | 41 +++ - plugins/media-keys/Makefile.am | 23 ++- - plugins/media-keys/actions/Makefile.am | 44 +++ - plugins/media-keys/actions/acme-volume.c | 403 +++++++++++++++++++++++++++ - plugins/media-keys/actions/acme-volume.h | 56 ++++ - plugins/media-keys/gsd-media-keys-manager.c | 104 ++++++-- - 6 files changed, 647 insertions(+), 24 deletions(-) - diff --git a/configure.ac b/configure.ac index 9cff33f..913ceab 100644 --- a/configure.ac +++ b/configure.ac -@@ -253,11 +253,50 @@ if test x$WANT_PULSE = xyes ; then +@@ -253,11 +253,54 @@ if test x$WANT_PULSE = xyes ; then AC_DEFINE(HAVE_PULSE, 1, [Define if PULSE sound server should be used])], [have_pulse=false]) fi @@ -47,6 +39,10 @@ index 9cff33f..913ceab 100644 + PKG_CHECK_MODULES(GST, $PKGS, have_gstreamer=yes, + AC_MSG_RESULT([no])) + ++ if test "x$have_pulse" = "xtrue"; then ++ AC_MSG_ERROR([*** GStreamer & Pulseaudio both are selected ***]) ++ fi ++ + if test "x$have_gstreamer" = "xyes"; then + GST_LIBS="$GST_LIBS -lgstinterfaces-0.10 -lgstaudio-0.10" + AC_DEFINE(HAVE_GSTREAMER,1,[enable gstreamer]) @@ -210,10 +206,10 @@ index 0000000..4bf215a + $(NULL) diff --git a/plugins/media-keys/actions/acme-volume.c b/plugins/media-keys/actions/acme-volume.c new file mode 100644 -index 0000000..77e548a +index 0000000..e468669 --- /dev/null +++ b/plugins/media-keys/actions/acme-volume.c -@@ -0,0 +1,403 @@ +@@ -0,0 +1,402 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ + +/* acme-volume.c @@ -516,7 +512,6 @@ index 0000000..77e548a + /* Try to use tracks saved in GConf + Note: errors need to be treated , for example if the user set a non type list for this key + or if the elements type_list are not "matched" */ -+ error = NULL; + tracks = gconf_client_get_list (self->_priv->gconf_client, DEFAULT_MIXER_TRACKS_KEY, + GCONF_VALUE_STRING, &error); + @@ -680,7 +675,7 @@ index 0000000..c14ebc8 + + diff --git a/plugins/media-keys/gsd-media-keys-manager.c b/plugins/media-keys/gsd-media-keys-manager.c -index d35048c..ff5ee0e 100644 +index d35048c..2fb8bb3 100644 --- a/plugins/media-keys/gsd-media-keys-manager.c +++ b/plugins/media-keys/gsd-media-keys-manager.c @@ -48,11 +48,12 @@ @@ -718,7 +713,7 @@ index d35048c..ff5ee0e 100644 manager->priv->screens = g_slist_append (manager->priv->screens, screen); } -@@ -650,40 +652,67 @@ on_stream_event_notify (GObject *object, +@@ -650,40 +652,75 @@ on_stream_event_notify (GObject *object, { update_dialog (manager); } @@ -730,33 +725,40 @@ index d35048c..ff5ee0e 100644 int type) { gboolean muted; -+ GError *error = NULL; ++ int vol_step; +#ifdef HAVE_PULSE guint vol, norm_vol_step; - int vol_step; +- int vol_step; - if (manager->priv->stream == NULL) +#else + int vol; -+ int vol_step; ++ GError *error = NULL; + if (manager->priv->volume == NULL) +#endif return; -- vol_step = gconf_client_get_int (manager->priv->conf_client, -+ vol_step = gconf_client_get_int (manager->priv->conf_client, ++#ifdef HAVE_PULSE ++ vol_step = gconf_client_get_int (manager->priv->conf_client, ++ GCONF_MISC_DIR "/volume_step", ++ NULL); ++#else + vol_step = gconf_client_get_int (manager->priv->conf_client, GCONF_MISC_DIR "/volume_step", - NULL); -- -- if (vol_step <= 0 || vol_step > 100) + &error); ++#endif + +- if (vol_step <= 0 || vol_step > 100) +#ifdef HAVE_PULSE + if (vol_step <= 0 || vol_step > 100) { +#else + if (error) { +#endif vol_step = VOLUME_STEP; ++#ifndef HAVE_PULSE + g_error_free (error); ++#endif + } +#ifdef HAVE_PULSE @@ -794,7 +796,7 @@ index d35048c..ff5ee0e 100644 if (!muted && (vol <= norm_vol_step)) { manager->priv->num_expected_update_signals = 2; gvc_mixer_stream_change_is_muted (manager->priv->stream, !muted); -@@ -692,18 +721,31 @@ do_sound_action (GsdMediaKeysManager *manager, +@@ -692,18 +729,31 @@ do_sound_action (GsdMediaKeysManager *manager, manager->priv->num_expected_update_signals = 1; gvc_mixer_stream_change_volume (manager->priv->stream, vol - norm_vol_step); } @@ -827,7 +829,7 @@ index d35048c..ff5ee0e 100644 if (vol < MAX_VOLUME) { manager->priv->num_expected_update_signals = 1; if (vol + norm_vol_step >= MAX_VOLUME) { -@@ -712,17 +754,39 @@ do_sound_action (GsdMediaKeysManager *manager, +@@ -712,17 +762,39 @@ do_sound_action (GsdMediaKeysManager *manager, gvc_mixer_stream_change_volume (manager->priv->stream, vol + norm_vol_step); } } @@ -848,7 +850,7 @@ index d35048c..ff5ee0e 100644 +#else + muted = acme_volume_get_mute (manager->priv->volume); + vol = acme_volume_get_volume (manager->priv->volume); -+ + + /* FIXME: AcmeVolume should probably emit signals + instead of doing it like this */ + dialog_init (manager); @@ -863,12 +865,12 @@ index d35048c..ff5ee0e 100644 + } + +#endif /* defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) */ - ++ +#ifdef HAVE_PULSE static void update_default_sink (GsdMediaKeysManager *manager) { -@@ -887,9 +951,9 @@ do_action (GsdMediaKeysManager *manager, +@@ -887,9 +959,9 @@ do_action (GsdMediaKeysManager *manager, case MUTE_KEY: case VOLUME_DOWN_KEY: case VOLUME_UP_KEY: @@ -880,7 +882,7 @@ index d35048c..ff5ee0e 100644 break; case POWER_KEY: do_exit_action (manager); -@@ -1069,13 +1133,13 @@ gsd_media_keys_manager_start (GsdMediaKeysManager *manager, +@@ -1069,13 +1141,13 @@ gsd_media_keys_manager_start (GsdMediaKeysManager *manager, { gnome_settings_profile_start (NULL); @@ -895,7 +897,7 @@ index d35048c..ff5ee0e 100644 gnome_settings_profile_start ("gvc_mixer_control_new"); manager->priv->volume = gvc_mixer_control_new (); -@@ -1092,6 +1156,10 @@ gsd_media_keys_manager_start (GsdMediaKeysManager *manager, +@@ -1092,6 +1164,10 @@ gsd_media_keys_manager_start (GsdMediaKeysManager *manager, gvc_mixer_control_open (manager->priv->volume); gnome_settings_profile_end ("gvc_mixer_control_new"); @@ -906,7 +908,7 @@ index d35048c..ff5ee0e 100644 #endif /* HAVE_PULSE */ g_idle_add ((GSourceFunc) start_media_keys_idle_cb, manager); -@@ -1164,13 +1232,13 @@ gsd_media_keys_manager_stop (GsdMediaKeysManager *manager) +@@ -1164,13 +1240,13 @@ gsd_media_keys_manager_stop (GsdMediaKeysManager *manager) g_object_unref (priv->stream); priv->stream = NULL; } |