From 9639591dc0452679b289dc80b700a15946feb81c Mon Sep 17 00:00:00 2001 From: Cecil Hugh Watson Date: Sat, 21 Mar 2009 13:22:38 -0700 Subject: Patch to disable gnome screensaver.T --- .../mplayer/MPlayer-1.0rc1-gnome-screensaver.patch | 286 --------------------- abs/core-testing/mplayer/PKGBUILD | 9 +- .../mplayer-svn-gnome-screensaver.patch.tar.gz | Bin 0 -> 701 bytes 3 files changed, 6 insertions(+), 289 deletions(-) delete mode 100644 abs/core-testing/mplayer/MPlayer-1.0rc1-gnome-screensaver.patch create mode 100644 abs/core-testing/mplayer/mplayer-svn-gnome-screensaver.patch.tar.gz diff --git a/abs/core-testing/mplayer/MPlayer-1.0rc1-gnome-screensaver.patch b/abs/core-testing/mplayer/MPlayer-1.0rc1-gnome-screensaver.patch deleted file mode 100644 index 79deb93..0000000 --- a/abs/core-testing/mplayer/MPlayer-1.0rc1-gnome-screensaver.patch +++ /dev/null @@ -1,286 +0,0 @@ -diff -Nur MPlayer-1.0rc1.orig/configure MPlayer-1.0rc1/configure ---- MPlayer-1.0rc1.orig/configure 2006-10-23 00:32:31.000000000 +0200 -+++ MPlayer-1.0rc1/configure 2006-11-11 14:02:38.000000000 +0100 -@@ -257,6 +257,7 @@ - --disable-ftp Disable ftp support [enabled] - --disable-vstream Disable tivo vstream client support [autodetect] - --disable-pthreads Disable Posix threads support [autodetect] -+ --disable-dbus-glib Disable D-BUS GLib interface (required for GNOME screensaver support) [autodetect] - --disable-ass Disable internal SSA/ASS subtitles support [autodetect] - --enable-rpath Enable runtime linker path for extra libs [disabled] - -@@ -1721,6 +1722,7 @@ - _musepack=auto - _vstream=auto - _pthreads=auto -+_dbus_glib=auto - _ass=auto - _rpath=no - _asmalign_pot=auto -@@ -2033,6 +2035,8 @@ - --disable-vstream) _vstream=no ;; - --enable-pthreads) _pthreads=yes ;; - --disable-pthreads) _pthreads=no ;; -+ --enable-dbus-glib) _dbus_glib=yes ;; -+ --disable-dbus-glib) _dbus_glib=no ;; - --enable-ass) _ass=yes ;; - --disable-ass) _ass=no ;; - --enable-rpath) _rpath=yes ;; -@@ -7029,6 +7033,19 @@ - fi - echores "$_gethostbyname2" - -+echocheck "D-BUS GLib interface" -+if test "$_dbus_glib" = auto && pkg-config --exists dbus-glib-1; then -+ _dbus_glib=yes -+ _inc_dbus_glib=`pkg-config --cflags dbus-glib-1 2>/dev/null` -+ _ld_dbus_glib=`pkg-config --libs dbus-glib-1 2>/dev/null` -+fi -+ -+if test "$_dbus_glib" = yes; then -+ _def_dbus_glib='#define HAVE_DBUS_GLIB 1' -+else -+ _def_dbus_glib='#undef HAVE_DBUS_GLIB' -+fi -+echores "$_dbus_glib" - - # --------------- GUI specific tests begin ------------------- - echocheck "GUI" -@@ -7521,6 +7538,10 @@ - VESA_LIB = $_ld_vesa - AA_LIB = $_ld_aa - CACA_LIB = $_ld_caca -+DBUS_GLIB_INC = $_inc_dbus_glib -+DBUS_GLIB_LIB = $_ld_dbus_glib -+DBUS_GLIB = $_dbus_glib -+ - - # audio output - OSS = $_ossaudio -@@ -8378,6 +8399,7 @@ - $_def_tga - $_def_toolame - $_def_twolame -+$_def_dbus_glib - - /* used by GUI: */ - $_def_xshape -diff -Nur MPlayer-1.0rc1.orig/help/help_mp-en.h MPlayer-1.0rc1/help/help_mp-en.h ---- MPlayer-1.0rc1.orig/help/help_mp-en.h 2006-10-23 00:32:29.000000000 +0200 -+++ MPlayer-1.0rc1/help/help_mp-en.h 2006-11-11 14:02:38.000000000 +0100 -@@ -679,6 +679,13 @@ - #define MSGTR_InsertingAfVolume "[Mixer] No hardware mixing, inserting volume filter.\n" - #define MSGTR_NoVolume "[Mixer] No volume control available.\n" - -+// gnome_screensaver.c -+#define MSGTR_OpenBusConnectionError "%s: Failed to open connection to bus: %s\n" -+#define MSGTR_RemoteMethodException "%s: Caught remote method exception %s: %s\n" -+#define MSGTR_GError "%s: Error: %s\n" -+#define MSGTR_GNOMEScreensaverEnabled "GNOME screensaver enabled\n" -+#define MSGTR_GNOMEScreensaverDisabled "GNOME screensaver disabled\n" -+ - // ====================== GUI messages/buttons ======================== - - #ifdef HAVE_NEW_GUI -diff -Nur MPlayer-1.0rc1.orig/libvo/gnome_screensaver.c MPlayer-1.0rc1/libvo/gnome_screensaver.c ---- MPlayer-1.0rc1.orig/libvo/gnome_screensaver.c 1970-01-01 01:00:00.000000000 +0100 -+++ MPlayer-1.0rc1/libvo/gnome_screensaver.c 2006-11-11 14:02:38.000000000 +0100 -@@ -0,0 +1,120 @@ -+/* -+ * gnome_screensaver.c v0.0.7 -+ * -+ * Enable/Disable the GNOME screensaver -+ * Supports GNOME screensaver API 2.14 and 2.15 -+ * -+ * Call gnome_screensaver_control(1) to enable and -+ * gnome_screensaver_control(0) to disable -+ * -+ */ -+ -+#include -+#include -+#include -+ -+#include "gnome_screensaver.h" -+#include "mp_msg.h" -+#include "help_mp.h" -+ -+#define GS_SERVICE "org.gnome.ScreenSaver" -+#define GS_PATH "/org/gnome/ScreenSaver" -+#define GS_INTERFACE "org.gnome.ScreenSaver" -+ -+#define GS_APPLICATION_NAME "MPlayer" -+#define GS_REASON_FOR_INHIBIT "Playing a movie" -+ -+static guint32 cookie; -+ -+void gnome_screensaver_control(int enable) -+{ -+ DBusGConnection *connection; -+ GError *error; -+ DBusGProxy *proxy; -+ gboolean ret; -+ char *funcname = "gnome_screensaver_control()"; -+ -+ g_type_init(); -+ -+ /* Get a connection to the session bus */ -+ error = NULL; -+ connection = dbus_g_bus_get(DBUS_BUS_SESSION, &error); -+ if (connection == NULL) { -+ mp_msg(MSGT_VO, MSGL_ERR, -+ funcname, MSGTR_OpenBusConnectionError, error->message); -+ g_error_free(error); -+ return; -+ } -+ -+ /* Create a proxy object */ -+ proxy = dbus_g_proxy_new_for_name(connection, -+ GS_SERVICE, GS_PATH, GS_INTERFACE); -+ -+ /* Enable the screensaver */ -+ if (enable) { -+ /* First call the GNOME screensaver 2.15 API method */ -+ error = NULL; -+ ret = -+ dbus_g_proxy_call(proxy, "UnInhibit", &error, G_TYPE_UINT, -+ cookie, G_TYPE_INVALID); -+ -+ /* If this fails, try the GNOME screensaver 2.14 API */ -+ if (!ret && error->domain == DBUS_GERROR -+ && error->code == DBUS_GERROR_UNKNOWN_METHOD) { -+ mp_msg(MSGT_VO, MSGL_V, -+ "%s: GNOME screensaver 2.15 API failed, trying 2.14 API\n", -+ funcname); -+ g_error_free(error); -+ error = NULL; -+ ret = -+ dbus_g_proxy_call(proxy, "AllowActivation", &error, -+ G_TYPE_INVALID, G_TYPE_INVALID); -+ } -+ } -+ /* Disable the screensaver */ -+ else { -+ /* First call the GNOME screensaver 2.15 API method */ -+ error = NULL; -+ ret = -+ dbus_g_proxy_call(proxy, "Inhibit", &error, G_TYPE_STRING, -+ GS_APPLICATION_NAME, G_TYPE_STRING, -+ GS_REASON_FOR_INHIBIT, G_TYPE_INVALID, -+ G_TYPE_UINT, cookie, G_TYPE_INVALID); -+ -+ /* If this fails, try the GNOME screensaver 2.14 API */ -+ if (!ret && error->domain == DBUS_GERROR -+ && error->code == DBUS_GERROR_UNKNOWN_METHOD) { -+ mp_msg(MSGT_VO, MSGL_V, -+ "%s: GNOME screensaver 2.15 API failed, trying 2.14 API\n", -+ funcname); -+ g_error_free(error); -+ error = NULL; -+ ret = -+ dbus_g_proxy_call(proxy, "InhibitActivation", &error, -+ G_TYPE_STRING, GS_REASON_FOR_INHIBIT, -+ G_TYPE_INVALID, G_TYPE_INVALID); -+ } -+ } -+ -+ if (!ret) { -+ /* Check if it's a remote exception or a regular GError */ -+ if (error->domain == DBUS_GERROR -+ && error->code == DBUS_GERROR_REMOTE_EXCEPTION) { -+ mp_msg(MSGT_VO, MSGL_ERR, -+ funcname, MSGTR_RemoteMethodException, -+ dbus_g_error_get_name(error), error->message); -+ } -+ else { -+ mp_msg(MSGT_VO, MSGL_ERR, -+ funcname, MSGTR_GError, error->message); -+ } -+ g_error_free(error); -+ } -+ else { -+ mp_msg(MSGT_VO, MSGL_INFO, -+ enable ? MSGTR_GNOMEScreensaverEnabled : -+ MSGTR_GNOMEScreensaverDisabled); -+ } -+ -+ g_object_unref(proxy); -+} -diff -Nur MPlayer-1.0rc1.orig/libvo/gnome_screensaver.h MPlayer-1.0rc1/libvo/gnome_screensaver.h ---- MPlayer-1.0rc1.orig/libvo/gnome_screensaver.h 1970-01-01 01:00:00.000000000 +0100 -+++ MPlayer-1.0rc1/libvo/gnome_screensaver.h 2006-11-11 14:02:38.000000000 +0100 -@@ -0,0 +1,6 @@ -+#ifndef _GNOME_SCREENSAVER_H -+#define _GNOME_SCREENSAVER_H -+ -+extern void gnome_screensaver_control(int enable); -+ -+#endif /* !_GNOME_SCREENSAVER_H */ -diff -Nur MPlayer-1.0rc1.orig/libvo/Makefile MPlayer-1.0rc1/libvo/Makefile ---- MPlayer-1.0rc1.orig/libvo/Makefile 2006-10-23 00:32:26.000000000 +0200 -+++ MPlayer-1.0rc1/libvo/Makefile 2006-11-11 14:02:38.000000000 +0100 -@@ -39,6 +39,11 @@ - SRCS += vosub_vidix.c - endif - -+ifeq ($(DBUS_GLIB),yes) -+SRCS += gnome_screensaver.c -+LIBAV_INC += $(DBUS_GLIB_INC) -+endif -+ - INCLUDE = -I. -I.. -I../osdep $(LIBAV_INC) - CFLAGS = $(INCLUDE) $(OPTFLAGS) -DMPG12PLAY - -diff -Nur MPlayer-1.0rc1.orig/libvo/x11_common.c MPlayer-1.0rc1/libvo/x11_common.c ---- MPlayer-1.0rc1.orig/libvo/x11_common.c 2006-10-23 00:32:26.000000000 +0200 -+++ MPlayer-1.0rc1/libvo/x11_common.c 2006-11-11 14:02:38.000000000 +0100 -@@ -58,6 +58,10 @@ - #include "mplayer.h" - #endif - -+#ifdef HAVE_DBUS_GLIB -+#include "gnome_screensaver.h" -+#endif -+ - #define WIN_LAYER_ONBOTTOM 2 - #define WIN_LAYER_NORMAL 4 - #define WIN_LAYER_ONTOP 6 -@@ -1701,8 +1705,12 @@ - timeout_save = 0; - } - -- if (stop_xscreensaver) -+ if (stop_xscreensaver) { - xscreensaver_enable(); -+#ifdef HAVE_DBUS_GLIB -+ gnome_screensaver_control(1); -+#endif -+ } - if (kdescreensaver_was_running && stop_xscreensaver) - { - system -@@ -1747,8 +1755,12 @@ - allow_exp); - } - // turning off screensaver -- if (stop_xscreensaver) -+ if (stop_xscreensaver) { - xscreensaver_disable(mDisplay); -+#ifdef HAVE_DBUS_GLIB -+ gnome_screensaver_control(0); -+#endif -+ } - if (stop_xscreensaver && !kdescreensaver_was_running) - { - kdescreensaver_was_running = -diff -Nur MPlayer-1.0rc1.orig/Makefile MPlayer-1.0rc1/Makefile ---- MPlayer-1.0rc1.orig/Makefile 2006-10-23 00:32:31.000000000 +0200 -+++ MPlayer-1.0rc1/Makefile 2006-11-11 14:02:38.000000000 +0100 -@@ -75,6 +75,7 @@ - $(DIRECTFB_LIB) \ - $(CACA_LIB) \ - $(VESA_LIB) \ -+ $(DBUS_GLIB_LIB) \ - - ifeq ($(VIDIX),yes) - VO_LIBS += vidix/libvidix.a diff --git a/abs/core-testing/mplayer/PKGBUILD b/abs/core-testing/mplayer/PKGBUILD index 89db9f2..e412933 100644 --- a/abs/core-testing/mplayer/PKGBUILD +++ b/abs/core-testing/mplayer/PKGBUILD @@ -3,7 +3,7 @@ pkgname=mplayer pkgver=28347 -pkgrel=5 +pkgrel=6 pkgdesc="A movie player for linux" arch=('i686' 'x86_64') depends=('libxxf86dga' 'libxv' 'libmad' 'giflib' 'cdparanoia' 'gtk2' @@ -15,15 +15,18 @@ url="http://www.mplayerhq.hu/" makedepends=('libcaca' 'unzip' 'live-media' 'libdca' 'mesa') backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf' 'etc/mplayer/mplayer.conf') source=(ftp://ftp.archlinux.org/other/mplayer/${pkgname}-${pkgver}.tar.bz2 - http://www.mplayerhq.hu/MPlayer/skins/Blue-1.7.tar.bz2) + http://www.mplayerhq.hu/MPlayer/skins/Blue-1.7.tar.bz2 + mplayer-svn-gnome-screensaver.patch.tar.gz) md5sums=('41fb540025a51930d318e99728a19c66' - 'e4e2020d11b681aac898103b3ba723c4') + 'e4e2020d11b681aac898103b3ba723c4' + 'c55b6eeb2b4071dd65226f2a08b9c07d') build() { # Custom CFLAGS break the mplayer build unset CFLAGS cd ${srcdir}/${pkgname} + patch -p1 < ../mplayer-svn-gnome-screensaver.patch ./configure --prefix=/usr --enable-gui --disable-arts --enable-x11 \ --enable-runtime-cpudetection --confdir=/etc/mplayer --disable-nas \ diff --git a/abs/core-testing/mplayer/mplayer-svn-gnome-screensaver.patch.tar.gz b/abs/core-testing/mplayer/mplayer-svn-gnome-screensaver.patch.tar.gz new file mode 100644 index 0000000..cbae488 Binary files /dev/null and b/abs/core-testing/mplayer/mplayer-svn-gnome-screensaver.patch.tar.gz differ -- cgit v0.12