update to 0.9.9.2

OK landry@, ajacoutot@
This commit is contained in:
dcoppa 2010-03-29 12:16:07 +00:00
parent 37ef4e4ce8
commit 9e08ba1bd0
24 changed files with 436 additions and 1025 deletions

View File

@ -1,11 +1,11 @@
# $OpenBSD: Makefile,v 1.8 2009/11/01 18:25:21 landry Exp $
# $OpenBSD: Makefile,v 1.9 2010/03/29 12:17:42 dcoppa Exp $
COMMENT = gnome-mplayer browser media plugin
V = 0.9.8
V = 0.9.9.2
DISTNAME = gecko-mediaplayer-$V
CATEGORIES = www
MAINTAINER = David Coppa <dcoppa@gmail.com>
MAINTAINER = David Coppa <dcoppa@openbsd.org>
HOMEPAGE = http://kdekorte.googlepages.com/gecko-mediaplayer
@ -34,12 +34,19 @@ MODGCONF2_SCHEMAS_DIR = gecko-mediaplayer
CONFIGURE_STYLE = gnu
CONFIGURE_ENV = CPPFLAGS="-I${LOCALBASE}/include \
-I${X11BASE}/include \
-I${LOCALBASE}/include/nspr \
-I${LOCALBASE}/xulrunner1.9/include \
-I${LOCALBASE}/xulrunner1.9/include/java \
-I${LOCALBASE}/xulrunner1.9/include/plugin -DOPENBSD \
-I${LOCALBASE}/xulrunner1.9/include/pref" \
LDFLAGS="-L${LOCALBASE}/lib -L${X11BASE}/lib"
CONFIGURE_ARGS = --with-gconf
CONFIGURE_ARGS = --with-gconf \
--with-xulrunner-sdk=${LOCALBASE}/xulrunner-1.9 \
--with-plugin-dir=${LOCALBASE}/lib/mozilla-plugins
# the build-scheme will get confused otherwise
post-patch:
@rm -f ${WRKDIST}/src/npupp.h
.include <bsd.port.mk>

View File

@ -1,5 +1,5 @@
MD5 (gecko-mediaplayer-0.9.8.tar.gz) = TfAJ0hsalcNcmt/bb7yW/g==
RMD160 (gecko-mediaplayer-0.9.8.tar.gz) = Rq5nnREveFO1gmjefW5aRESkeX0=
SHA1 (gecko-mediaplayer-0.9.8.tar.gz) = ofkBdsBEc3SsZRjx6yOYS8KoiuM=
SHA256 (gecko-mediaplayer-0.9.8.tar.gz) = pR6/AAIbHV1Dg37evQ+yjY9tJiYRHEw5HosPZRUASqE=
SIZE (gecko-mediaplayer-0.9.8.tar.gz) = 257788
MD5 (gecko-mediaplayer-0.9.9.2.tar.gz) = 3rQaS8veK3jVSNw3toTPuw==
RMD160 (gecko-mediaplayer-0.9.9.2.tar.gz) = JDJrp11Mczvidf5aZKWf7QaMlg4=
SHA1 (gecko-mediaplayer-0.9.9.2.tar.gz) = +5Ygu7nk3yen5Yjc89C25VGIwmI=
SHA256 (gecko-mediaplayer-0.9.9.2.tar.gz) = N4tsFJ5B79Xw5HyKcR17PhCECctyxvlQSsSoeR3oPNY=
SIZE (gecko-mediaplayer-0.9.9.2.tar.gz) = 262053

View File

@ -1,315 +1,16 @@
$OpenBSD: patch-configure,v 1.2 2009/11/01 18:25:21 landry Exp $
$OpenBSD: patch-configure,v 1.3 2010/03/29 12:17:42 dcoppa Exp $
Remove unneeded checks related to xulrunner
use -pthread instead of -lpthread for pthreads linkage
remove -ldl
--- configure.orig Thu Sep 3 13:28:25 2009
+++ configure Mon Oct 12 06:40:06 2009
@@ -8699,308 +8699,6 @@ fi
-# Check whether --with-xulrunner-sdk was given.
-if test "${with_xulrunner_sdk+set}" = set; then
- withval=$with_xulrunner_sdk;
- XULRUNNER_SDK_PREFIX=$with_xulrunner_sdk
- GECKO_CFLAGS="-I$XULRUNNER_SDK_PREFIX/include -I$XULRUNNER_SDK_PREFIX/include/plugin -I$XULRUNNER_SDK_PREFIX/include/nspr -I$XULRUNNER_SDK_PREFIX/include/xpcom -I$XULRUNNER_SDK_PREFIX/include/string -I$XULRUNNER_SDK_PREFIX/include/java"
--- configure.orig Tue Mar 23 16:44:27 2010
+++ configure Tue Mar 23 16:45:20 2010
@@ -8711,7 +8711,7 @@ if test "${with_xulrunner_sdk+set}" = set; then
withval=$with_xulrunner_sdk;
XULRUNNER_SDK_PREFIX=$with_xulrunner_sdk
GECKO_CFLAGS="-I$XULRUNNER_SDK_PREFIX/include -I$XULRUNNER_SDK_PREFIX/include/plugin -I$XULRUNNER_SDK_PREFIX/include/nspr -I$XULRUNNER_SDK_PREFIX/include/xpcom -I$XULRUNNER_SDK_PREFIX/include/string -I$XULRUNNER_SDK_PREFIX/include/java"
- GECKO_LIBS="-L$XULRUNNER_SDK_PREFIX/lib -lxpcomglue_s -lxul -lxpcom -lplds4 -lplc4 -lnspr4 -lpthread -ldl"
-
-fi
-
-
-if test "$GECKO_CFLAGS" = ""; then
-
-pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GECKO" >&5
-$as_echo_n "checking for GECKO... " >&6; }
-
-if test -n "$GECKO_CFLAGS"; then
- pkg_cv_GECKO_CFLAGS="$GECKO_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mozilla-plugin mozilla-xpcom\"") >&5
- ($PKG_CONFIG --exists --print-errors "mozilla-plugin mozilla-xpcom") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- pkg_cv_GECKO_CFLAGS=`$PKG_CONFIG --cflags "mozilla-plugin mozilla-xpcom" 2>/dev/null`
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$GECKO_LIBS"; then
- pkg_cv_GECKO_LIBS="$GECKO_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"mozilla-plugin mozilla-xpcom\"") >&5
- ($PKG_CONFIG --exists --print-errors "mozilla-plugin mozilla-xpcom") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- pkg_cv_GECKO_LIBS=`$PKG_CONFIG --libs "mozilla-plugin mozilla-xpcom" 2>/dev/null`
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi
- if test $_pkg_short_errors_supported = yes; then
- GECKO_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "mozilla-plugin mozilla-xpcom" 2>&1`
- else
- GECKO_PKG_ERRORS=`$PKG_CONFIG --print-errors "mozilla-plugin mozilla-xpcom" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$GECKO_PKG_ERRORS" >&5
-
- { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
- { $as_echo "$as_me:$LINENO: WARNING: mozilla-plugin not found, trying another" >&5
-$as_echo "$as_me: WARNING: mozilla-plugin not found, trying another" >&2;}
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:$LINENO: WARNING: mozilla-plugin not found, trying another" >&5
-$as_echo "$as_me: WARNING: mozilla-plugin not found, trying another" >&2;}
-else
- GECKO_CFLAGS=$pkg_cv_GECKO_CFLAGS
- GECKO_LIBS=$pkg_cv_GECKO_LIBS
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
-
-fi
-fi
-
-if test "$GECKO_CFLAGS" = ""; then
-
-pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GECKO" >&5
-$as_echo_n "checking for GECKO... " >&6; }
-
-if test -n "$GECKO_CFLAGS"; then
- pkg_cv_GECKO_CFLAGS="$GECKO_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"firefox-plugin firefox-xpcom\"") >&5
- ($PKG_CONFIG --exists --print-errors "firefox-plugin firefox-xpcom") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- pkg_cv_GECKO_CFLAGS=`$PKG_CONFIG --cflags "firefox-plugin firefox-xpcom" 2>/dev/null`
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$GECKO_LIBS"; then
- pkg_cv_GECKO_LIBS="$GECKO_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"firefox-plugin firefox-xpcom\"") >&5
- ($PKG_CONFIG --exists --print-errors "firefox-plugin firefox-xpcom") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- pkg_cv_GECKO_LIBS=`$PKG_CONFIG --libs "firefox-plugin firefox-xpcom" 2>/dev/null`
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi
- if test $_pkg_short_errors_supported = yes; then
- GECKO_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "firefox-plugin firefox-xpcom" 2>&1`
- else
- GECKO_PKG_ERRORS=`$PKG_CONFIG --print-errors "firefox-plugin firefox-xpcom" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$GECKO_PKG_ERRORS" >&5
-
- { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
- { $as_echo "$as_me:$LINENO: WARNING: firefox-plugin not found, trying another" >&5
-$as_echo "$as_me: WARNING: firefox-plugin not found, trying another" >&2;}
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:$LINENO: WARNING: firefox-plugin not found, trying another" >&5
-$as_echo "$as_me: WARNING: firefox-plugin not found, trying another" >&2;}
-else
- GECKO_CFLAGS=$pkg_cv_GECKO_CFLAGS
- GECKO_LIBS=$pkg_cv_GECKO_LIBS
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
-
-fi
-fi
-
-if test "$GECKO_CFLAGS" = ""; then
-
-pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GECKO" >&5
-$as_echo_n "checking for GECKO... " >&6; }
-
-if test -n "$GECKO_CFLAGS"; then
- pkg_cv_GECKO_CFLAGS="$GECKO_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"seamonkey-plugin seamonkey-xpcom\"") >&5
- ($PKG_CONFIG --exists --print-errors "seamonkey-plugin seamonkey-xpcom") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- pkg_cv_GECKO_CFLAGS=`$PKG_CONFIG --cflags "seamonkey-plugin seamonkey-xpcom" 2>/dev/null`
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$GECKO_LIBS"; then
- pkg_cv_GECKO_LIBS="$GECKO_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"seamonkey-plugin seamonkey-xpcom\"") >&5
- ($PKG_CONFIG --exists --print-errors "seamonkey-plugin seamonkey-xpcom") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- pkg_cv_GECKO_LIBS=`$PKG_CONFIG --libs "seamonkey-plugin seamonkey-xpcom" 2>/dev/null`
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi
- if test $_pkg_short_errors_supported = yes; then
- GECKO_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "seamonkey-plugin seamonkey-xpcom" 2>&1`
- else
- GECKO_PKG_ERRORS=`$PKG_CONFIG --print-errors "seamonkey-plugin seamonkey-xpcom" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$GECKO_PKG_ERRORS" >&5
-
- { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
- { $as_echo "$as_me:$LINENO: WARNING: seamokey-plugin not found, trying another" >&5
-$as_echo "$as_me: WARNING: seamokey-plugin not found, trying another" >&2;}
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:$LINENO: WARNING: seamokey-plugin not found, trying another" >&5
-$as_echo "$as_me: WARNING: seamokey-plugin not found, trying another" >&2;}
-else
- GECKO_CFLAGS=$pkg_cv_GECKO_CFLAGS
- GECKO_LIBS=$pkg_cv_GECKO_LIBS
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
-
-fi
-fi
-
-if test "$GECKO_CFLAGS" = ""; then
-
-pkg_failed=no
-{ $as_echo "$as_me:$LINENO: checking for GECKO" >&5
-$as_echo_n "checking for GECKO... " >&6; }
-
-if test -n "$GECKO_CFLAGS"; then
- pkg_cv_GECKO_CFLAGS="$GECKO_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xulrunner-plugin xulrunner-xpcom\"") >&5
- ($PKG_CONFIG --exists --print-errors "xulrunner-plugin xulrunner-xpcom") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- pkg_cv_GECKO_CFLAGS=`$PKG_CONFIG --cflags "xulrunner-plugin xulrunner-xpcom" 2>/dev/null`
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-if test -n "$GECKO_LIBS"; then
- pkg_cv_GECKO_LIBS="$GECKO_LIBS"
- elif test -n "$PKG_CONFIG"; then
- if test -n "$PKG_CONFIG" && \
- { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xulrunner-plugin xulrunner-xpcom\"") >&5
- ($PKG_CONFIG --exists --print-errors "xulrunner-plugin xulrunner-xpcom") 2>&5
- ac_status=$?
- $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- pkg_cv_GECKO_LIBS=`$PKG_CONFIG --libs "xulrunner-plugin xulrunner-xpcom" 2>/dev/null`
-else
- pkg_failed=yes
-fi
- else
- pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi
- if test $_pkg_short_errors_supported = yes; then
- GECKO_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xulrunner-plugin xulrunner-xpcom" 2>&1`
- else
- GECKO_PKG_ERRORS=`$PKG_CONFIG --print-errors "xulrunner-plugin xulrunner-xpcom" 2>&1`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$GECKO_PKG_ERRORS" >&5
-
- { $as_echo "$as_me:$LINENO: result: no" >&5
-$as_echo "no" >&6; }
- { $as_echo "$as_me:$LINENO: WARNING: xulrunner-plugin not found, trying another" >&5
-$as_echo "$as_me: WARNING: xulrunner-plugin not found, trying another" >&2;}
-elif test $pkg_failed = untried; then
- { $as_echo "$as_me:$LINENO: WARNING: xulrunner-plugin not found, trying another" >&5
-$as_echo "$as_me: WARNING: xulrunner-plugin not found, trying another" >&2;}
-else
- GECKO_CFLAGS=$pkg_cv_GECKO_CFLAGS
- GECKO_LIBS=$pkg_cv_GECKO_LIBS
- { $as_echo "$as_me:$LINENO: result: yes" >&5
-$as_echo "yes" >&6; }
-
-
-fi
-fi
-
if test "$GECKO_CFLAGS" = ""; then
pkg_failed=no
+ GECKO_LIBS="-L$XULRUNNER_SDK_PREFIX/lib -lxpcomglue_s -lxul -lxpcom -lplds4 -lplc4 -lnspr4 -pthread"
# Check whether --enable-new-libxul was given.
if test "${enable_new_libxul+set}" = set; then
enableval=$enable_new_libxul; usenewlibxul=$enableval

View File

@ -1,15 +1,47 @@
$OpenBSD: patch-src_Makefile_in,v 1.2 2009/11/01 18:25:21 landry Exp $
$OpenBSD: patch-src_Makefile_in,v 1.3 2010/03/29 12:17:42 dcoppa Exp $
fix mozilla plugin directory location
fix library linking (remove -ldl)
--- src/Makefile.in.orig Thu Sep 3 13:28:27 2009
+++ src/Makefile.in Mon Oct 12 05:57:07 2009
@@ -312,7 +312,7 @@ COMMONCODE = \
npp_gate.cpp \
npupp.h
--- src/Makefile.in.orig Tue Mar 23 16:44:56 2010
+++ src/Makefile.in Tue Mar 23 16:46:04 2010
@@ -331,35 +331,35 @@ gecko_mediaplayer_so_SOURCES = \
-install_libexecdir = $(libdir)/mozilla/plugins
+install_libexecdir = $(libdir)/mozilla-plugins
gecko_mediaplayer_so_SOURCES = \
plugin_types_std.cpp \
gecko_mediaplayer_so_CFLAGS = -fPIC
gecko_mediaplayer_so_LDFLAGS = -shared -fPIC
-gecko_mediaplayer_so_LDADD = -ldl libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+gecko_mediaplayer_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
gecko_mediaplayer_qt_so_SOURCES = \
plugin_types_qt.cpp \
$(COMMONCODE)
gecko_mediaplayer_qt_so_CFLAGS = -fPIC
gecko_mediaplayer_qt_so_LDFLAGS = -shared -fPIC
-gecko_mediaplayer_qt_so_LDADD = -ldl libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+gecko_mediaplayer_qt_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
gecko_mediaplayer_wmp_so_SOURCES = \
plugin_types_wmp.cpp \
$(COMMONCODE)
gecko_mediaplayer_wmp_so_CFLAGS = -fPIC
gecko_mediaplayer_wmp_so_LDFLAGS = -shared -fPIC
-gecko_mediaplayer_wmp_so_LDADD = -ldl libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+gecko_mediaplayer_wmp_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
gecko_mediaplayer_dvx_so_SOURCES = \
plugin_types_dvx.cpp \
$(COMMONCODE)
gecko_mediaplayer_dvx_so_CFLAGS = -fPIC
gecko_mediaplayer_dvx_so_LDFLAGS = -shared -fPIC
-gecko_mediaplayer_dvx_so_LDADD = -ldl libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+gecko_mediaplayer_dvx_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
gecko_mediaplayer_rm_so_SOURCES = \
plugin_types_rm.cpp \
$(COMMONCODE)
gecko_mediaplayer_rm_so_CFLAGS = -fPIC
gecko_mediaplayer_rm_so_LDFLAGS = -shared -fPIC
-gecko_mediaplayer_rm_so_LDADD = -ldl libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+gecko_mediaplayer_rm_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
all: all-recursive
.SUFFIXES:

View File

@ -0,0 +1,16 @@
$OpenBSD: patch-src_np_entry_cpp,v 1.1 2010/03/29 12:17:42 dcoppa Exp $
fix building with our xulrunner
--- src/np_entry.cpp.orig Tue Mar 23 16:52:37 2010
+++ src/np_entry.cpp Tue Mar 23 16:52:53 2010
@@ -40,8 +40,7 @@
// Main plugin entry point implementation
//
#include <npapi.h>
-#include <npfunctions.h>
-#include "npupp.h"
+#include <npupp.h>
#ifndef HIBYTE
#define HIBYTE(x) ((((uint32_t)(x)) & 0xff00) >> 8)

View File

@ -0,0 +1,16 @@
$OpenBSD: patch-src_npn_gate_cpp,v 1.1 2010/03/29 12:17:42 dcoppa Exp $
fix building with our xulrunner
--- src/npn_gate.cpp.orig Tue Mar 23 16:53:02 2010
+++ src/npn_gate.cpp Tue Mar 23 16:53:12 2010
@@ -40,8 +40,7 @@
// Implementation of Netscape entry points (NPN_*)
//
#include <npapi.h>
-//#include "npupp.h"
-#include <npfunctions.h>
+#include <npupp.h>
#ifndef HIBYTE
#define HIBYTE(x) ((((uint32_t)(x)) & 0xff00) >> 8)

View File

@ -1,19 +1,28 @@
$OpenBSD: patch-src_plugin_cpp,v 1.1 2009/11/01 20:34:20 landry Exp $
$OpenBSD: patch-src_plugin_cpp,v 1.2 2010/03/29 12:17:42 dcoppa Exp $
fix for includes from upstream svn
fix from upstream svn:
if url has "stream" in it, mark the url as streaming
--- src/plugin.cpp.orig Mon Oct 12 06:28:37 2009
+++ src/plugin.cpp Mon Oct 12 06:28:54 2009
@@ -42,9 +42,9 @@
--- src/plugin.cpp.orig Wed Feb 24 17:04:17 2010
+++ src/plugin.cpp Wed Mar 24 12:09:35 2010
@@ -37,7 +37,6 @@
#include "plugin.h"
-//#include "npupp.h"
#include "plugin_list.h"
#include "plugin_setup.h"
#include "plugin_types.h"
#include "plugin_dbus.h"
-#include "nsIPrefBranch.h"
-#include "nsIPrefService.h"
-#include "nsIServiceManager.h"
+#include <nsIPrefBranch.h>
+#include <nsIPrefService.h>
+#include <nsIServiceManager.h>
@@ -921,8 +920,10 @@ int32 CPlugin::Write(NPStream * stream, int32 offset,
return -1;
}
nsIPrefBranch *prefBranch = NULL;
nsIPrefService *prefService = NULL;
- if (strstr((char *) buffer, "ICY 200 OK") != NULL || strstr((char *) buffer, "Content-length:") != NULL // If item is a block of jpeg images, just stream it
- || strstr((char *) buffer, "<HTML>") != NULL || item->streaming == TRUE) {
+ if (strstr((char *) buffer, "ICY 200 OK") != NULL
+ || strstr((char *) buffer, "Content-length:") != NULL // If item is a block of jpeg images, just stream it
+ || strstr((char *) buffer, "<HTML>") != NULL
+ || item->streaming == TRUE) {
// || stream->lastmodified == 0) { this is not valid for many sites
// printf("BUFFER='%s'\n", buffer);

View File

@ -0,0 +1,15 @@
$OpenBSD: patch-src_plugin_h,v 1.1 2010/03/29 12:17:42 dcoppa Exp $
fix building with our xulrunner
--- src/plugin.h.orig Tue Mar 23 16:52:08 2010
+++ src/plugin.h Tue Mar 23 16:52:22 2010
@@ -39,7 +39,7 @@
#define __PLUGIN_H__
#include <npapi.h>
#include <npruntime.h>
-#include <npfunctions.h>
+#include <npupp.h>
#include <X11/Xlib.h>
#include <dbus/dbus.h>
#include <dbus/dbus-glib-lowlevel.h>

View File

@ -1,24 +1,33 @@
$OpenBSD: patch-src_plugin_list_cpp,v 1.1 2009/11/01 20:34:20 landry Exp $
$OpenBSD: patch-src_plugin_list_cpp,v 1.2 2010/03/29 12:17:42 dcoppa Exp $
fix incorrect usage of memmem() vs. memmem_compat()
fix from upstream svn:
give each item in the RAM playlist a unique id
--- src/plugin_list.cpp.orig Mon Oct 12 06:35:56 2009
+++ src/plugin_list.cpp Mon Oct 12 06:36:40 2009
@@ -356,7 +356,7 @@ GList *list_parse_qt2(GList * list, ListItem * item)
return list;
} else {
while (p != NULL) {
- urlptr = (gchar *) memmem(p,datalen - (p - data), "url ", 4);
+ urlptr = (gchar *) memmem_compat(p,datalen - (p - data), "url ", 4);
if (urlptr == NULL) {
@@ -385,7 +385,7 @@ GList *list_parse_qt2(GList * list, ListItem * item)
item->id = -1;
list = g_list_append(list, newitem);
}
- p = (gchar *) memmem(urlptr,datalen - (urlptr - data),"mmdr",4);
+ p = (gchar *) memmem_compat(urlptr,datalen - (urlptr - data),"mmdr",4);
}
}
--- src/plugin_list.cpp.orig Tue Feb 23 17:12:37 2010
+++ src/plugin_list.cpp Tue Mar 23 17:14:09 2010
@@ -215,6 +215,7 @@ void list_dump(GList * list)
printf("id = %i\n", item->id);
printf("hrefid = %i\n", item->hrefid);
printf("play = %i\n", item->play);
+ printf("played = %i\n", item->played);
printf("path = %s\n", item->path);
printf("controlid = %i\n", item->controlid);
printf("playerready = %i\n", item->playerready);
@@ -713,7 +714,7 @@ GList *list_parse_ram(GList * list, ListItem * item)
if (item->localsize < (16 * 1024)) {
if (g_file_get_contents(item->local, &data, &datalen, NULL)) {
if (data != NULL) {
- output = g_strsplit(data, "\n", 0);
+ output = g_strsplit_set(data, "\n\r", 0);
parser_list = list;
parser_item = item;
i = 0;
@@ -755,7 +756,7 @@ GList *list_parse_ram(GList * list, ListItem * item)
newitem->src[3] = g_ascii_tolower(newitem->src[3]);
}
newitem->play = TRUE;
- newitem->id = entry_id;
+ newitem->id = ++entry_id;
newitem->controlid = parser_item->controlid;
g_strlcpy(newitem->path, parser_item->path, 1024);
parser_list = g_list_append(parser_list, newitem);

View File

@ -0,0 +1,60 @@
$OpenBSD: patch-src_plugin_setup_cpp,v 1.1 2010/03/29 12:17:42 dcoppa Exp $
fixes from upstream svn:
move "stream" test to streaming function
change it from int to boolean
--- src/plugin_setup.cpp.orig Tue Feb 23 17:12:37 2010
+++ src/plugin_setup.cpp Tue Mar 23 17:14:09 2010
@@ -524,38 +524,41 @@ void new_instance(CPlugin * instance, int16_t argc, ch
}
-gint streaming(gchar * url)
+gboolean streaming(gchar * url)
{
- gint ret = 0;
+ gboolean ret = FALSE;
char *p;
if (g_ascii_strncasecmp(url, "mms://", 6) == 0)
- ret = 1;
+ ret = TRUE;
if (g_ascii_strncasecmp(url, "mmst://", 7) == 0)
- ret = 1;
+ ret = TRUE;
if (g_ascii_strncasecmp(url, "mmsu://", 7) == 0)
- ret = 1;
+ ret = TRUE;
if (g_ascii_strncasecmp(url, "rtsp://", 7) == 0)
- ret = 1;
+ ret = TRUE;
if (g_ascii_strncasecmp(url, "tv://", 5) == 0)
- ret = 1;
+ ret = TRUE;
if (g_ascii_strncasecmp(url, "dvd://", 6) == 0)
- ret = 1;
+ ret = TRUE;
if (g_strrstr(url, ".m3u") != NULL)
- ret = 1;
+ ret = TRUE;
+ if (g_strrstr(url, "stream") != NULL)
+ ret = TRUE;
+
if (g_ascii_strncasecmp(url, "file://", 7) == 0) {
p = g_filename_from_uri(url, NULL, NULL);
if (p != NULL) {
if (g_file_test(p, G_FILE_TEST_EXISTS)) {
g_strlcpy(url, p, 1024);
- ret = 1;
+ ret = TRUE;
}
g_free(p);
}

View File

@ -0,0 +1,16 @@
$OpenBSD: patch-src_plugin_setup_h,v 1.1 2010/03/29 12:17:42 dcoppa Exp $
fixes from upstream svn:
move "stream" test to streaming function
change it from int to boolean
--- src/plugin_setup.h.orig Tue Feb 23 17:12:37 2010
+++ src/plugin_setup.h Tue Mar 23 17:14:09 2010
@@ -42,6 +42,6 @@
// void new_instance(CPlugin * instance, nsPluginCreateData * parameters);
void new_instance(CPlugin * instance, int16_t argc, char *argn[], char *argv[]);
-gint streaming(gchar * url);
+gboolean streaming(gchar * url);
#endif // _PLUGIN_SETUP_H

View File

@ -1,11 +1,10 @@
# $OpenBSD: Makefile,v 1.14 2009/12/21 20:46:01 ajacoutot Exp $
# $OpenBSD: Makefile,v 1.15 2010/03/29 12:16:07 dcoppa Exp $
COMMENT = GTK+/GNOME frontend for MPlayer
DISTNAME = gnome-mplayer-0.9.8
PKGNAME = ${DISTNAME}p2
DISTNAME = gnome-mplayer-0.9.9.2
CATEGORIES = x11 multimedia
MAINTAINER = David Coppa <dcoppa@gmail.com>
MAINTAINER = David Coppa <dcoppa@openbsd.org>
HOMEPAGE = http://kdekorte.googlepages.com/gnomemplayer
@ -17,12 +16,12 @@ PERMIT_PACKAGE_FTP = Yes
PERMIT_DISTFILES_CDROM =Yes
PERMIT_DISTFILES_FTP = Yes
WANTLIB += ORBit-2 X11 Xau Xcomposite Xcursor Xdamage Xdmcp Xext m \
Xfixes Xi Xinerama Xrandr Xrender c cairo dbus-1 dbus-glib-1 \
expat fontconfig freetype gdk-x11-2.0 gdk_pixbuf-2.0 gio-2.0 \
glib-2.0 glitz gmodule-2.0 gobject-2.0 gthread-2.0 gtk-x11-2.0 \
neon pango-1.0 pangocairo-1.0 pangoft2-1.0 pixman-1 png pthread \
z pthread-stubs xcb atk-1.0
WANTLIB += ORBit-2 X11 Xau Xcomposite Xcursor Xdamage Xdmcp Xext \
Xfixes Xi Xinerama Xrandr Xrender Xss atk-1.0 c cairo \
dbus-1 dbus-glib-1 expat fontconfig freetype gdk-x11-2.0 \
gdk_pixbuf-2.0 gio-2.0 glib-2.0 glitz gmodule-2.0 gobject-2.0 \
gthread-2.0 gtk-x11-2.0 m neon pango-1.0 pangocairo-1.0 \
pangoft2-1.0 pixman-1 png pthread pthread-stubs xcb z
MODULES = devel/gettext \
devel/gconf2
@ -32,6 +31,7 @@ LIB_DEPENDS = notify::devel/libnotify \
musicbrainz3::audio/libmusicbrainz \
curl.>=12::net/curl
RUN_DEPENDS = ::devel/desktop-file-utils \
:gnome-icon-theme-*:x11/gnome/icon-theme \
:mplayer->=20090708:x11/mplayer
USE_X11 = Yes

View File

@ -1,5 +1,5 @@
MD5 (gnome-mplayer-0.9.8.tar.gz) = VAYwZU2wRBmMQ18ywEsbUw==
RMD160 (gnome-mplayer-0.9.8.tar.gz) = hKJDMlivAFruqXLRXqvmeqlwgpw=
SHA1 (gnome-mplayer-0.9.8.tar.gz) = hVHCx7e0ju0xWrc6NiN/gBK6c7c=
SHA256 (gnome-mplayer-0.9.8.tar.gz) = snW64/deleW06LdZano2K6D/nlAo5xVUDkIVvIeBr2A=
SIZE (gnome-mplayer-0.9.8.tar.gz) = 721269
MD5 (gnome-mplayer-0.9.9.2.tar.gz) = eYEJE9JFdVtgwn034dHxeA==
RMD160 (gnome-mplayer-0.9.9.2.tar.gz) = DnPhxhCfB7ln8wvXIl6sfpxsnOY=
SHA1 (gnome-mplayer-0.9.9.2.tar.gz) = tGpua87I0hS3vSV+k5sL/1xn9mA=
SHA256 (gnome-mplayer-0.9.9.2.tar.gz) = aVpUwA210KD1lusaEKWK0ypE6NbHWF18huDXXO8KSLQ=
SIZE (gnome-mplayer-0.9.9.2.tar.gz) = 828006

View File

@ -1,9 +1,9 @@
$OpenBSD: patch-configure,v 1.1 2009/10/31 12:26:25 edd Exp $
$OpenBSD: patch-configure,v 1.2 2010/03/29 12:16:07 dcoppa Exp $
don't check for libgpod 0.6.x: it's not in our ports tree
--- configure.orig Fri Oct 16 03:37:57 2009
+++ configure Fri Oct 16 03:39:08 2009
--- configure.orig Mon Feb 22 22:46:24 2010
+++ configure Tue Mar 23 14:55:56 2010
@@ -653,8 +653,6 @@ GPOD_CFLAGS
GPOD07_LIBS
GPOD07_CFLAGS
@ -13,7 +13,7 @@ don't check for libgpod 0.6.x: it's not in our ports tree
NOTIFY_DEFINES
NOTIFY_LIBS
NOTIFY_CFLAGS
@@ -847,8 +845,6 @@ ALSA_CFLAGS
@@ -855,8 +853,6 @@ ALSA_CFLAGS
ALSA_LIBS
NOTIFY_CFLAGS
NOTIFY_LIBS
@ -22,7 +22,7 @@ don't check for libgpod 0.6.x: it's not in our ports tree
GPOD07_CFLAGS
GPOD07_LIBS
MUSICBRAINZ_CFLAGS
@@ -1548,9 +1544,6 @@ Some influential environment variables:
@@ -1562,9 +1558,6 @@ Some influential environment variables:
NOTIFY_CFLAGS
C compiler flags for NOTIFY, overriding pkg-config
NOTIFY_LIBS linker flags for NOTIFY, overriding pkg-config
@ -32,7 +32,7 @@ don't check for libgpod 0.6.x: it's not in our ports tree
GPOD07_CFLAGS
C compiler flags for GPOD07, overriding pkg-config
GPOD07_LIBS linker flags for GPOD07, overriding pkg-config
@@ -9658,87 +9651,6 @@ fi
@@ -9879,87 +9872,6 @@ fi
if test "x$with_libgpod" != xno; then
pkg_failed=no
@ -120,7 +120,7 @@ don't check for libgpod 0.6.x: it's not in our ports tree
{ $as_echo "$as_me:$LINENO: checking for GPOD07" >&5
$as_echo_n "checking for GPOD07... " >&6; }
@@ -9817,8 +9729,8 @@ fi
@@ -10038,8 +9950,8 @@ fi
fi

View File

@ -1,12 +1,12 @@
$OpenBSD: patch-gnome-mplayer_schemas_in,v 1.1 2009/10/31 12:26:25 edd Exp $
$OpenBSD: patch-gnome-mplayer_schemas_in,v 1.2 2010/03/29 12:16:07 dcoppa Exp $
set some sane defaults:
use mplayer's software volume control (see pkg/MESSAGE)
disable bar animation in full screen
use xscrnsaver controls over gnome-power-manager
--- gnome-mplayer.schemas.in.orig Wed Aug 26 21:26:18 2009
+++ gnome-mplayer.schemas.in Sat Oct 17 17:54:29 2009
--- gnome-mplayer.schemas.in.orig Thu Jan 7 21:26:00 2010
+++ gnome-mplayer.schemas.in Wed Mar 24 11:09:23 2010
@@ -222,7 +222,7 @@
<applyto>/apps/gnome-mplayer/preferences/disable_animation</applyto>
<owner>gnome-mplayer</owner>
@ -25,3 +25,12 @@ disable bar animation in full screen
<locale name="C">
<short>Have mplayer use the softvol option</short>
<long>When set to TRUE the softvol option is passed to mplayer, useful for machines without pulseaudio</long>
@@ -546,7 +546,7 @@
<applyto>/apps/gnome-mplayer/preferences/use_xscrnsaver</applyto>
<owner>gnome-mplayer</owner>
<type>bool</type>
- <default>FALSE</default>
+ <default>TRUE</default>
<locale name="C">
<short>Set to TRUE if you want to use xscrnsaver controls over gnome-power-manager</short>
<long>When enabled directly tells the xscreensaver to inhibit itself, otherwise uses gnome-power-manager</long>

View File

@ -1,14 +0,0 @@
$OpenBSD: patch-src_common_h,v 1.1 2009/11/06 17:01:56 edd Exp $
fix from upstream svn (update volume control)
--- src/common.h.orig Fri Nov 6 05:49:24 2009
+++ src/common.h Fri Nov 6 05:50:06 2009
@@ -486,6 +486,7 @@ void dbus_disable_screensaver();
void menuitem_edit_random_callback(GtkMenuItem * menuitem, void *data);
gboolean update_audio_meter(gpointer data);
+gboolean update_volume(gpointer data);
void mplayer_shutdown();
gpointer launch_player(gpointer data);

View File

@ -1,317 +1,128 @@
$OpenBSD: patch-src_gui_c,v 1.5 2009/11/06 16:57:23 edd Exp $
$OpenBSD: patch-src_gui_c,v 1.6 2010/03/29 12:16:07 dcoppa Exp $
fixes from upstream svn:
add disable_animation config option
fix hidden cursor over menus
update volume control
fix from upstream svn:
add missing icons to the file menu
add sun, sndio and rtunes to available audio backends
revised audio/video device selection gui
set DVD device to /dev/rcd0c instead of /dev/dvd
--- src/gui.c.orig Thu Sep 17 10:05:35 2009
+++ src/gui.c Fri Nov 6 05:04:23 2009
@@ -94,7 +94,9 @@ static void drawing_area_realized(GtkWidget * widget,
* onwards, requesting the native window in a thread causes a BadWindowID,
* so we need to request it now. We could call gdk_window_ensure_native(),
* but that would mean we require GTK+ 2.18, so instead we call this */
+#ifdef GTK2_14_ENABLED
GDK_WINDOW_XID(gtk_widget_get_window(GTK_WIDGET(widget)));
+#endif
}
gint get_player_window()
@@ -108,6 +110,23 @@ gint get_player_window()
}
}
+gboolean update_volume(gpointer data)
+{
+ if (use_pulse_flat_volume && !softvol) {
+ if (state != QUIT) {
+ if (idledata->mplayer_volume + 1 != idledata->volume) {
+#ifdef GTK2_12_ENABLED
+ gtk_scale_button_set_value(GTK_SCALE_BUTTON(vol_slider), idledata->mplayer_volume);
+#else
+ gtk_range_set_value(GTK_RANGE(vol_slider), idledata->mplayer_volume);
+#endif
+ }
+ }
+ }
+
+ return FALSE;
+}
+
gboolean set_adjust_layout(gpointer data)
{
adjusting = FALSE;
@@ -435,7 +454,7 @@ gboolean set_progress_value(void *data)
--- src/gui.c.orig Thu Feb 25 17:01:41 2010
+++ src/gui.c Mon Mar 29 12:04:50 2010
@@ -4796,15 +4796,13 @@ void menuitem_config_callback(GtkMenuItem * menuitem,
tooltip = gtk_tooltips_new();
gtk_tooltips_set_tip(tooltip, config_vo,
_
- ("mplayer video output device\nx11 should always work, try xv or gl for better performance"),
+ ("mplayer video output device\nx11 should always work\nTry xv or gl for better performance"),
NULL);
if (config_vo != NULL) {
gtk_combo_box_append_text(GTK_COMBO_BOX(config_vo), "gl");
gtk_combo_box_append_text(GTK_COMBO_BOX(config_vo), "gl2");
gtk_combo_box_append_text(GTK_COMBO_BOX(config_vo), "x11");
gtk_combo_box_append_text(GTK_COMBO_BOX(config_vo), "xv");
- gtk_combo_box_append_text(GTK_COMBO_BOX(config_vo), "xvmc");
- gtk_combo_box_append_text(GTK_COMBO_BOX(config_vo), "vdpau");
if (vo != NULL) {
if (strcmp(vo, "gl") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_vo), 0);
@@ -4814,14 +4812,10 @@ void menuitem_config_callback(GtkMenuItem * menuitem,
gtk_combo_box_set_active(GTK_COMBO_BOX(config_vo), 2);
if (strcmp(vo, "xv") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_vo), 3);
- if (strcmp(vo, "xvmc") == 0)
- gtk_combo_box_set_active(GTK_COMBO_BOX(config_vo), 4);
- if (strcmp(vo, "vdpau") == 0)
- gtk_combo_box_set_active(GTK_COMBO_BOX(config_vo), 5);
if (gtk_combo_box_get_active(GTK_COMBO_BOX(config_vo))
== -1) {
gtk_combo_box_append_text(GTK_COMBO_BOX(config_vo), vo);
- gtk_combo_box_set_active(GTK_COMBO_BOX(config_vo), 6);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(config_vo), 4);
}
}
if (idle->cachepercent < 1.0 && state == PAUSED) {
text =
- g_strdup_printf(_("Paused | %2i%% \342\226\274"),
+ g_strdup_printf(_("Paused | %2i%%"),
(gint) (idle->cachepercent * 100));
gmtk_media_tracker_set_text(tracker, text);
g_free(text);
@@ -561,7 +580,7 @@ gboolean set_progress_time(void *data)
if (idle->cachepercent > 0 && idle->cachepercent < 1.0 && !(playlist) && !forcecache
&& !idle->streaming) {
- g_snprintf(idle->progress_text, 128, "%s | %2i%% \342\226\274", text,
+ g_snprintf(idle->progress_text, 128, "%s | %2i%%", text,
(int) (idle->cachepercent * 100));
} else {
g_snprintf(idle->progress_text, 128, "%s", text);
@@ -595,17 +614,9 @@ gboolean set_volume_from_slider(gpointer data)
vol = (gint) gtk_range_get_value(GTK_RANGE(vol_slider));
#endif
if (!idledata->mute) {
- if (use_pulse_flat_volume && !softvol) {
- set_alsa_volume(TRUE, vol);
- } else {
- cmd = g_strdup_printf("volume %i 1\n", vol);
- send_command(cmd, FALSE);
- g_free(cmd);
- }
- send_command("get_property volume\n", FALSE);
- if (state == PAUSED || state == STOPPED) {
- send_command("pause\n", FALSE);
- }
+ cmd = g_strdup_printf("volume %i 1\n", vol);
+ send_command(cmd, FALSE);
+ g_free(cmd);
}
return FALSE;
@@ -1416,6 +1427,8 @@ gboolean delete_callback(GtkWidget * widget, GdkEvent
ok_to_play = FALSE;
dontplaynext = TRUE;
+ g_idle_remove_by_data(idledata);
+
if (remember_loc && !fullscreen && embed_window == 0) {
gm_store = gm_pref_store_new("gnome-mplayer");
gtk_window_get_position(GTK_WINDOW(window), &loc_window_x, &loc_window_y);
@@ -2308,13 +2321,9 @@ void vol_slider_callback(GtkRange * range, gpointer us
g_free(cmd);
idledata->mute = TRUE;
} else {
- if (use_pulse_flat_volume && !softvol) {
- set_alsa_volume(TRUE, vol);
- } else {
- cmd = g_strdup_printf("volume %i 1\n", vol);
- send_command(cmd, TRUE);
- g_free(cmd);
- }
+ cmd = g_strdup_printf("volume %i 1\n", vol);
+ send_command(cmd, TRUE);
+ g_free(cmd);
}
if (idledata->volume != vol) {
@@ -2323,24 +2332,18 @@ void vol_slider_callback(GtkRange * range, gpointer us
g_idle_add(set_volume_tip, idledata);
g_free(buf);
}
- send_command("get_property volume\n", TRUE);
dbus_send_rpsignal_with_double("RP_Volume", gtk_range_get_value(GTK_RANGE(vol_slider)));
}
#ifdef GTK2_12_ENABLED
-void vol_button_callback(GtkVolumeButton * volume, gpointer user_data)
+void vol_button_value_changed_callback(GtkScaleButton * volume, gdouble value, gpointer data)
{
- gint vol;
+ gint vol = value;
gchar *cmd;
gchar *buf;
- if (rpcontrols != NULL && g_strcasecmp(rpcontrols, "volumeslider") == 0) {
- vol = (gint) gtk_range_get_value(GTK_RANGE(vol_slider));
- } else {
- vol = (gint) gtk_scale_button_get_value(GTK_SCALE_BUTTON(volume));
- }
if (idledata->mute && vol > 0) {
cmd = g_strdup_printf("mute 0\n");
send_command(cmd, TRUE);
@@ -2356,6 +2359,7 @@ void vol_button_callback(GtkVolumeButton * volume, gpo
cmd = g_strdup_printf("volume %i 1\n", vol);
send_command(cmd, TRUE);
g_free(cmd);
+ idledata->volume = vol;
}
if (idledata->volume != vol) {
@@ -2364,11 +2368,8 @@ void vol_button_callback(GtkVolumeButton * volume, gpo
g_idle_add(set_volume_tip, idledata);
g_free(buf);
}
- send_command("get_property volume\n", TRUE);
- dbus_send_rpsignal_with_double("RP_Volume",
- gtk_scale_button_get_value(GTK_SCALE_BUTTON(vol_slider)));
-
+ dbus_send_rpsignal_with_double("RP_Volume", vol);
}
#endif
@@ -2427,23 +2428,26 @@ gboolean make_panel_and_mouse_invisible(gpointer data)
g_get_current_time(&currenttime);
g_time_val_add(&currenttime, -auto_hide_timeout * G_USEC_PER_SEC);
- if (last_movement_time > 0 && currenttime.tv_sec > last_movement_time) {
- cursor_source = gdk_pixmap_new(NULL, 1, 1, 1);
- cursor =
- gdk_cursor_new_from_pixmap(cursor_source, cursor_source, &cursor_color,
- &cursor_color, 0, 0);
- gdk_pixmap_unref(cursor_source);
- gdk_window_set_cursor(window->window, cursor);
- gdk_cursor_unref(cursor);
-
- if (use_pulse_flat_volume && !softvol) {
- if (idledata->mplayer_volume != idledata->volume) {
- idledata->volume = idledata->mplayer_volume;
- set_volume(idledata);
- }
- }
- }
-
+ if (GTK_WIDGET_VISIBLE(menu_file)
+ || GTK_WIDGET_VISIBLE(menu_edit)
+ || GTK_WIDGET_VISIBLE(menu_view)
+ || GTK_WIDGET_VISIBLE(menu_help)) {
+
+ gdk_window_set_cursor(window->window, NULL);
+
+ } else {
+
+ if (last_movement_time > 0 && currenttime.tv_sec > last_movement_time) {
+ cursor_source = gdk_pixmap_new(NULL, 1, 1, 1);
+ cursor =
+ gdk_cursor_new_from_pixmap(cursor_source, cursor_source, &cursor_color,
+ &cursor_color, 0, 0);
+ gdk_pixmap_unref(cursor_source);
+ gdk_window_set_cursor(window->window, cursor);
+ gdk_cursor_unref(cursor);
+ }
+ }
+
return FALSE;
}
@@ -3671,6 +3675,8 @@ void config_apply(GtkWidget * widget, void *data)
!(gboolean) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(config_embeddedfonts));
disable_pause_on_click =
!(gboolean) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(config_pause_on_click));
+ disable_animation =
+ (gboolean) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(config_disable_animation));
oldosd = osdlevel;
osdlevel = (gint) gtk_range_get_value(GTK_RANGE(config_osdlevel));
pplevel = (gint) gtk_range_get_value(GTK_RANGE(config_pplevel));
@@ -3774,6 +3780,7 @@ void config_apply(GtkWidget * widget, void *data)
gm_pref_store_set_boolean(gm_store, DISABLEDEINTERLACE, disable_deinterlace);
gm_pref_store_set_boolean(gm_store, DISABLEFRAMEDROP, disable_framedrop);
gm_pref_store_set_boolean(gm_store, DISABLEPAUSEONCLICK, disable_pause_on_click);
+ gm_pref_store_set_boolean(gm_store, DISABLEANIMATION, disable_animation);
gm_pref_store_set_boolean(gm_store, SHOWPLAYLIST, playlist_visible);
gm_pref_store_set_boolean(gm_store, SHOWDETAILS, details_visible);
gm_pref_store_set_boolean(gm_store, USE_MEDIAKEYS, use_mediakeys);
@@ -4697,32 +4704,41 @@ void menuitem_config_callback(GtkMenuItem * menuitem,
@@ -4891,32 +4885,29 @@ void menuitem_config_callback(GtkMenuItem * menuitem,
tooltip = gtk_tooltips_new();
gtk_tooltips_set_tip(tooltip, config_ao,
_
- ("mplayer audio output device\nalsa or oss should always work, try esd in gnome, arts in kde, or pulse on newer distributions"),
+ ("mplayer audio output device\nOn Linux, alsa or oss should always work\nTry esd in gnome, arts in kde, or pulse on newer Linux distributions\nOn OpenBSD, use sndio"),
+ ("mplayer audio output device\nsndio should always work\nTry esd under GNOME, arts under KDE\nTry jack if you use the JACK sound server\nUse rtunes if you want to stream to an Apple AirPort Express"),
NULL);
if (config_ao != NULL) {
gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "alsa");
- gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "alsa");
- gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "arts");
+ gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "sndio");
+ gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "sun");
gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "arts");
gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "esd");
+ gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "arts");
gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "jack");
gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "oss");
gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "pulse");
- gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "oss");
- gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "pulse");
+ gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), "rtunes");
if (ao != NULL) {
if (strcmp(ao, "alsa") == 0)
- if (strcmp(ao, "alsa") == 0)
+ if (strcmp(ao, "sndio") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 0);
- if (strcmp(ao, "arts") == 0)
+ if (strcmp(ao, "sndio") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 1);
- if (strcmp(ao, "esd") == 0)
+ if (strcmp(ao, "sun") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 2);
- if (strcmp(ao, "jack") == 0)
- gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 1);
if (strcmp(ao, "esd") == 0)
+ gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 1);
+ if (strcmp(ao, "arts") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 2);
if (strcmp(ao, "jack") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 3);
- if (strcmp(ao, "oss") == 0)
+ if (strcmp(ao, "esd") == 0)
+ if (strcmp(ao, "rtunes") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 4);
- if (strcmp(ao, "pulse") == 0)
+ if (strcmp(ao, "jack") == 0)
gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 5);
+ if (strcmp(ao, "oss") == 0)
+ gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 6);
+ if (strcmp(ao, "pulse") == 0)
+ gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 7);
+ if (strcmp(ao, "rtunes") == 0)
+ gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 8);
- gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 5);
if (gtk_combo_box_get_active(GTK_COMBO_BOX(config_ao))
== -1) {
gtk_combo_box_append_text(GTK_COMBO_BOX(config_ao), ao);
- gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 6);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 9);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(config_ao), 5);
}
}
}
@@ -5311,6 +5327,12 @@ void menuitem_config_callback(GtkMenuItem * menuitem,
GTK_SHRINK, 0, 0);
i++;
@@ -4995,8 +4986,8 @@ void menuitem_config_callback(GtkMenuItem * menuitem,
j = -1;
+ config_disable_animation = gtk_check_button_new_with_label(_("Disable Fullscreen Control Bar Animation"));
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(config_disable_animation), disable_animation);
+ gtk_table_attach(GTK_TABLE(conf_table), config_disable_animation, 0, 2, i, i + 1, GTK_FILL,
+ GTK_SHRINK, 0, 0);
+ i++;
+
config_verbose = gtk_check_button_new_with_label(_("Verbose Debug Enabled"));
tooltip = gtk_tooltips_new();
gtk_tooltips_set_tip(tooltip, config_verbose,
@@ -6235,7 +6257,6 @@ GtkWidget *create_window(gint windowid)
drawing_area = gtk_socket_new();
g_signal_connect(drawing_area, "realize", G_CALLBACK(drawing_area_realized), NULL);
-
cover_art = gtk_image_new();
media_label = gtk_label_new("");
gtk_widget_set_size_request(media_label, 300, -1);
@@ -6291,7 +6312,6 @@ GtkWidget *create_window(gint windowid)
// ok if the theme has all the icons we need, use them, otherwise use the default GNOME ones
-
if (gtk_icon_theme_has_icon(icon_theme, "media-playback-start")
&& gtk_icon_theme_has_icon(icon_theme, "media-playback-pause")
&& gtk_icon_theme_has_icon(icon_theme, "media-playback-stop")
@@ -6534,8 +6554,8 @@ GtkWidget *create_window(gint windowid)
else
gtk_object_set(GTK_OBJECT(vol_slider), "size", GTK_ICON_SIZE_MENU, NULL);
- g_signal_connect(G_OBJECT(vol_slider), "value_changed", G_CALLBACK(vol_button_callback),
- NULL);
+ g_signal_connect(G_OBJECT(vol_slider), "value_changed", G_CALLBACK(vol_button_value_changed_callback),
+ idledata);
gtk_button_set_relief(GTK_BUTTON(vol_slider), GTK_RELIEF_NONE);
#else
vol_slider = gtk_hscale_new_with_range(0.0, 100.0, 1.0);
@@ -6543,7 +6563,7 @@ GtkWidget *create_window(gint windowid)
gtk_scale_set_draw_value(GTK_SCALE(vol_slider), FALSE);
gtk_range_set_value(GTK_RANGE(vol_slider), idledata->volume);
g_signal_connect(G_OBJECT(vol_slider), "value_changed", G_CALLBACK(vol_slider_callback),
- NULL);
+ idledata);
#endif
config_mplayer_dvd_device = gtk_combo_box_entry_new_text();
- gtk_combo_box_append_text(GTK_COMBO_BOX(config_mplayer_dvd_device), "/dev/dvd");
- if (mplayer_dvd_device == NULL || g_ascii_strcasecmp("/dev/dvd", mplayer_dvd_device) == 0) {
+ gtk_combo_box_append_text(GTK_COMBO_BOX(config_mplayer_dvd_device), "/dev/rcd0c");
+ if (mplayer_dvd_device == NULL || g_ascii_strcasecmp("/dev/rcd0c", mplayer_dvd_device) == 0) {
j = i;
}
volume_tip = gtk_tooltips_new();
i++;
@@ -6222,12 +6213,19 @@ GtkWidget *create_window(gint windowid)
gtk_menu_append(menu_file, GTK_WIDGET(menuitem_file_open));
menuitem_file_open_folder =
GTK_MENU_ITEM(gtk_image_menu_item_new_with_mnemonic(_("Open _Folder")));
+ gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem_file_open_folder),
+ gtk_image_new_from_icon_name("folder",GTK_ICON_SIZE_MENU));
gtk_menu_append(menu_file, GTK_WIDGET(menuitem_file_open_folder));
menuitem_file_open_location =
GTK_MENU_ITEM(gtk_image_menu_item_new_with_mnemonic(_("Open _Location")));
+ gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem_file_open_location),
+ gtk_image_new_from_icon_name("network-server",GTK_ICON_SIZE_MENU));
gtk_menu_append(menu_file, GTK_WIDGET(menuitem_file_open_location));
- menuitem_file_disc = GTK_MENU_ITEM(gtk_menu_item_new_with_mnemonic(_("_Disc")));
+ menuitem_file_disc =
+ GTK_MENU_ITEM(gtk_image_menu_item_new_with_mnemonic(_("_Disc")));
+ gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem_file_disc),
+ gtk_image_new_from_icon_name("media-optical",GTK_ICON_SIZE_MENU));
menu_file_disc = GTK_MENU(gtk_menu_new());
gtk_widget_show(GTK_WIDGET(menuitem_file_disc));
gtk_menu_shell_append(GTK_MENU_SHELL(menu_file), GTK_WIDGET(menuitem_file_disc));
@@ -6276,7 +6274,9 @@ GtkWidget *create_window(gint windowid)
gtk_menu_append(menu_file_tv, GTK_WIDGET(menuitem_file_open_dtv));
#ifdef HAVE_GPOD
menuitem_file_open_ipod =
- GTK_MENU_ITEM(gtk_image_menu_item_new_with_mnemonic(_("Open _iPod™")));
+ GTK_MENU_ITEM(gtk_image_menu_item_new_with_mnemonic(_("Open _iPod")));
+ gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menuitem_file_open_ipod),
+ gtk_image_new_from_icon_name("multimedia-player",GTK_ICON_SIZE_MENU));
gtk_menu_append(menu_file, GTK_WIDGET(menuitem_file_open_ipod));
#endif
#ifdef GTK2_12_ENABLED

View File

@ -1,14 +0,0 @@
$OpenBSD: patch-src_gui_h,v 1.1 2009/10/31 12:26:25 edd Exp $
fix from upstream svn (config_disable_animation)
--- src/gui.h.orig Sun Oct 18 17:35:23 2009
+++ src/gui.h Sun Oct 18 17:36:11 2009
@@ -253,6 +253,7 @@ GtkWidget *config_show_notification;
GtkWidget *config_thumb_position;
GtkWidget *config_use_mediakeys;
GtkWidget *config_use_defaultpl;
+GtkWidget *config_disable_animation;
GtkWidget *config_alang;
GtkWidget *config_slang;

View File

@ -1,14 +0,0 @@
$OpenBSD: patch-src_libgmlib_gm_parse_c,v 1.1 2009/10/31 12:26:25 edd Exp $
fix from upstream svn: missing declaration
--- src/libgmlib/gm_parse.c.orig Sun Oct 11 05:20:52 2009
+++ src/libgmlib/gm_parse.c Sun Oct 11 05:22:10 2009
@@ -159,6 +159,7 @@ gboolean gm_parse_asx_is_asx(const gchar *uri)
#else
FILE *fp;
+ gchar **parse;
gchar *file = NULL;
file = g_strndup(uri, 4);

View File

@ -1,14 +0,0 @@
$OpenBSD: patch-src_libgmlib_gm_parse_h,v 1.1 2009/10/31 12:26:25 edd Exp $
fix from upstream svn: missing include
--- src/libgmlib/gm_parse.h.orig Sun Oct 11 05:20:54 2009
+++ src/libgmlib/gm_parse.h Sun Oct 11 05:23:57 2009
@@ -29,6 +29,7 @@
#else
#include <stdio.h>
#endif
+#include <string.h>
#ifdef __cplusplus
extern "C" {

View File

@ -1,58 +1,34 @@
$OpenBSD: patch-src_main_c,v 1.3 2009/11/06 16:57:23 edd Exp $
$OpenBSD: patch-src_main_c,v 1.4 2010/03/29 12:16:07 dcoppa Exp $
fix from upstream svn:
fix memory leak when we have an invalid item to play
set some sane defaults:
use mplayer's software volume control (see pkg/MESSAGE)
disable bar animation in full screen
use xscrnsaver controls over gnome-power-manager
fix from upstream svn (update volume control)
--- src/main.c.orig Thu Sep 17 09:56:06 2009
+++ src/main.c Fri Nov 6 05:22:16 2009
@@ -422,27 +422,13 @@ gint play_iter(GtkTreeIter * playiter, gint restart_se
g_strlcpy(thread_data->subtitle, subtitle, 1024);
g_free(subtitle);
--- src/main.c.orig Thu Feb 25 17:01:41 2010
+++ src/main.c Wed Mar 24 11:08:38 2010
@@ -260,6 +260,8 @@ gint play_iter(GtkTreeIter * playiter, gint restart_se
} else {
if (verbose > 1)
printf("iter is invalid, nothing to play\n");
+ g_free(thread_data);
+ thread_data = NULL;
return 0;
}
- /*
- #ifdef HAVE_ASOUNDLIB
- if (!softvol && ao != NULL
- && (g_ascii_strcasecmp(ao, "alsa") == 0
- || (use_pulse_flat_volume && g_ascii_strcasecmp(ao, "pulse") == 0))) {
- volume = (gint) get_alsa_volume(TRUE);
- idledata->volume = volume;
- #if GTK2_12_ENABLED
- gtk_scale_button_set_value(GTK_SCALE_BUTTON(vol_slider), volume);
- #else
- gtk_range_set_value(GTK_RANGE(vol_slider), volume);
- #endif
- }
- #endif
- #if GTK2_12_ENABLED
- volume = gtk_scale_button_get_value(GTK_SCALE_BUTTON(vol_slider));
- #else
- volume = gtk_range_get_value(GTK_RANGE(vol_slider));
- #endif
- */
+#if GTK2_12_ENABLED
+ volume = gtk_scale_button_get_value(GTK_SCALE_BUTTON(vol_slider));
+#else
+ volume = gtk_range_get_value(GTK_RANGE(vol_slider));
+#endif
+
if (g_ascii_strcasecmp(thread_data->filename, "") != 0) {
if (!device_name(thread_data->filename) && !streaming_media(thread_data->filename)) {
if (!g_file_test(thread_data->filename, G_FILE_TEST_EXISTS)) {
@@ -699,7 +685,7 @@ int main(int argc, char *argv[])
@@ -688,7 +690,7 @@ int main(int argc, char *argv[])
playlist_visible = FALSE;
disable_fullscreen = FALSE;
disable_framedrop = FALSE;
- softvol = FALSE;
+ softvol = TRUE;
subtitlefont = NULL;
subtitle_codepage = NULL;
subtitle_color = NULL;
@@ -711,7 +697,7 @@ int main(int argc, char *argv[])
remember_softvol = FALSE;
volume_softvol = -1;
volume_gain = 0;
@@ -703,7 +705,7 @@ int main(int argc, char *argv[])
reallyverbose = 0;
embedding_disabled = FALSE;
disable_pause_on_click = FALSE;
@ -61,3 +37,12 @@ fix from upstream svn (update volume control)
auto_hide_timeout = 3;
use_mediakeys = TRUE;
use_defaultpl = FALSE;
@@ -742,7 +744,7 @@ int main(int argc, char *argv[])
start_second = 0;
play_length = 0;
save_loc = TRUE;
- use_xscrnsaver = FALSE;
+ use_xscrnsaver = TRUE;
screensaver_disabled = FALSE;
sa.sa_handler = hup_handler;

View File

@ -1,166 +0,0 @@
$OpenBSD: patch-src_support_c,v 1.2 2009/10/31 12:26:25 edd Exp $
fixes from upstream svn:
problem with playlist detection on glib < 2.22
fix mute flag
--- src/support.c.orig Thu Sep 17 09:56:06 2009
+++ src/support.c Fri Oct 16 03:29:51 2009
@@ -39,6 +39,7 @@ gint detect_playlist(gchar * uri)
gchar *coltitle;
gint count;
gchar *path = NULL;
+ gchar *lower;
#ifdef GIO_ENABLED
GFile *file;
GFileInputStream *input;
@@ -75,40 +76,37 @@ gint detect_playlist(gchar * uri)
memset(buffer, 0, sizeof(buffer));
g_input_stream_read((GInputStream *) input, buffer, sizeof(buffer), NULL, NULL);
output = g_strsplit(buffer, "\n", 0);
- if (output[0] != NULL) {
- g_strchomp(output[0]);
- g_strchug(output[0]);
- }
+ lower = g_ascii_strdown(buffer, -1);
// printf("buffer=%s\n",buffer);
- if (strstr(g_strdown(buffer), "[playlist]") != 0) {
+ if (strstr(lower, "[playlist]") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "[reference]") != 0) {
+ if (strstr(lower, "[reference]") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "<asx") != 0) {
+ if (strstr(lower, "<asx") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "<smil>") != 0) {
+ if (strstr(lower, "<smil>") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "#extm3u") != 0) {
+ if (strstr(lower, "#extm3u") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "http://") != 0) {
+ if (strstr(lower, "http://") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "rtsp://") != 0) {
+ if (strstr(lower, "rtsp://") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "pnm://") != 0) {
+ if (strstr(lower, "pnm://") != 0) {
playlist = 1;
}
@@ -129,6 +127,7 @@ gint detect_playlist(gchar * uri)
}
g_free(newuri);
}
+ g_free(lower);
g_strfreev(output);
g_input_stream_close((GInputStream *) input, NULL, NULL);
@@ -150,16 +149,12 @@ gint detect_playlist(gchar * uri)
memset(buffer, 0, sizeof(buffer));
size = fread(buffer, 1, sizeof(buffer) - 1, fp);
output = g_strsplit(buffer, "\n", 0);
- if (output[0] != NULL) {
- g_strchomp(output[0]);
- g_strchug(output[0]);
- }
//printf("buffer=%s\n",buffer);
- if (strstr(g_strdown(buffer), "[playlist]") != 0) {
+ if (strstr(lower, "[playlist]") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "[reference]") != 0) {
+ if (strstr(lower, "[reference]") != 0) {
playlist = 1;
}
@@ -167,19 +162,19 @@ gint detect_playlist(gchar * uri)
playlist = 1;
}
- if (strstr(g_strdown(buffer), "<asx") != 0) {
+ if (strstr(lower, "<asx") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "http://") != 0) {
+ if (strstr(lower, "http://") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "rtsp://") != 0) {
+ if (strstr(lower, "rtsp://") != 0) {
playlist = 1;
}
- if (strstr(g_strdown(buffer), "pnm://") != 0) {
+ if (strstr(lower, "pnm://") != 0) {
playlist = 1;
}
if (output[0] != NULL && g_file_test(output[0], G_FILE_TEST_EXISTS)) {
@@ -193,7 +188,7 @@ gint detect_playlist(gchar * uri)
}
g_free(file);
}
-
+ g_free(lower);
g_strfreev(output);
}
fclose(fp);
@@ -1431,7 +1426,7 @@ MetaData *get_metadata(gchar * uri)
if (strstr(lower, "=title") != NULL || strstr(lower, "=name") != NULL) {
localtitle = strstr(output[ac + 1], "=") + 1;
if (localtitle)
- title = g_strstrip(metadata_to_utf8(localtitle));
+ title = metadata_to_utf8(localtitle);
else
title = NULL;
@@ -2253,9 +2248,13 @@ gdouble get_alsa_volume(gboolean show_details)
if (playback == 1) {
vol = (gdouble) ((get_vol - pmin) * f_multi);
} else {
- idledata->mute = TRUE;
vol = 0;
}
+ if (vol == 0) {
+ idledata->mute = TRUE;
+ } else {
+ idledata->mute = FALSE;
+ }
if (verbose && show_details) {
printf("%s Playback is %i\n", mixer, playback);
printf("%s Range is %li to %li \n", mixer, pmin, pmax);
@@ -2292,9 +2291,13 @@ gdouble get_alsa_volume(gboolean show_details)
if (playback == 1) {
vol = (gdouble) ((get_vol - pmin) * f_multi);
} else {
- idledata->mute = TRUE;
vol = 0;
}
+ if (vol == 0) {
+ idledata->mute = TRUE;
+ } else {
+ idledata->mute = FALSE;
+ }
if (verbose && show_details) {
printf("Master Playback is %i\n", playback);
printf("Master Range is %li to %li \n", pmin, pmax);

View File

@ -1,78 +1,22 @@
$OpenBSD: patch-src_thread_c,v 1.2 2009/11/06 16:57:23 edd Exp $
$OpenBSD: patch-src_thread_c,v 1.3 2010/03/29 12:16:08 dcoppa Exp $
volume and mute fixes from upstream svn
fix from upstream svn:
when dontplaynext is set, request next item on
playlist from plugin
--- src/thread.c.orig Thu Sep 17 10:01:44 2009
+++ src/thread.c Fri Nov 6 05:43:59 2009
@@ -269,7 +269,8 @@ gboolean thread_reader(GIOChannel * source, GIOConditi
GIOStatus status;
gchar *buf, *message = NULL;
gchar *cmd;
- gint pos, volume, i;
+ gint pos, i;
+ gfloat vol;
gfloat percent;
GError *error = NULL;
gchar *error_msg = NULL;
@@ -506,14 +507,11 @@ gboolean thread_reader(GIOChannel * source, GIOConditi
--- src/thread.c.orig Thu Feb 25 17:01:41 2010
+++ src/thread.c Wed Mar 24 12:07:32 2010
@@ -1496,6 +1496,13 @@ gpointer launch_player(gpointer data)
g_idle_add(play, p);
}
if (strstr(mplayer_output->str, "ANS_volume") != 0) {
buf = strstr(mplayer_output->str, "ANS_volume");
- sscanf(buf, "ANS_volume=%i", &volume);
- if (!idledata->mute) {
- if (use_pulse_flat_volume && !softvol) {
- // Need to track what the master volume is, gui is updated in make mouse invisible
- idledata->mplayer_volume = volume;
- idledata->mute = (volume > 0);
- }
- }
+ sscanf(buf, "ANS_volume=%f", &vol);
+ // Need to track what the master volume is, gui is updated in make mouse invisible
+ idledata->mplayer_volume = vol;
+ idledata->mute = !((gint)vol > 0);
+ g_idle_add(update_volume, idledata);
}
+ if (playback_error == NO_ERROR) {
+ if (embed_window != 0 || control_id != 0) {
+ dbus_send_event("MediaComplete", 0);
+ dbus_open_next();
+ }
+ }
+
dontplaynext = FALSE;
}
if (strstr(mplayer_output->str, "ANS_chapters") != 0) {
@@ -827,13 +825,6 @@ gboolean thread_query(gpointer data)
// but don't start polling until meter is visible
g_idle_add(map_af_export_file, idledata);
}
- // track volume control
- if (use_pulse_flat_volume && !softvol) {
- volume = (gint) get_alsa_volume(FALSE);
- idledata->volume = volume;
- if (!idledata->mute)
- g_idle_add(set_volume, idledata);
- }
if (state == PLAYING) {
// size = write(std_in, "get_percent_pos\n", strlen("get_percent_pos\n"));
@@ -842,9 +833,9 @@ gboolean thread_query(gpointer data)
g_idle_add(set_kill_mplayer,NULL);
return FALSE;
} else {
-
- //send_command("get_time_pos\n");
- send_command("get_property stream_pos\n", TRUE);
+ send_command("get_time_length\n", TRUE);
+ send_command("get_property stream_pos\n", TRUE);
+ send_command("get_property volume\n", TRUE);
if (threaddata->streaming)
send_command("get_property metadata\n", TRUE);
g_idle_add(make_panel_and_mouse_invisible, NULL);
@@ -979,11 +970,9 @@ gpointer launch_player(gpointer data)
argv[arg++] = g_strdup_printf("-softvol");
if (use_volume_option) {
- argv[arg++] = g_strdup_printf("-volume");
- if (idledata->mute)
- argv[arg++] = g_strdup_printf("0");
- else
- argv[arg++] = g_strdup_printf("%i", (gint) idledata->volume);
+ argv[arg++] = g_strdup_printf("-volume");
+ argv[arg++] = g_strdup_printf("%i", (gint) idledata->volume);
+ idledata->mplayer_volume = idledata->volume;
}
if (mixer != NULL && strlen(mixer) > 0) {

View File

@ -1,4 +1,4 @@
@comment $OpenBSD: PLIST,v 1.5 2009/12/21 20:46:01 ajacoutot Exp $
@comment $OpenBSD: PLIST,v 1.6 2010/03/29 12:16:08 dcoppa Exp $
@bin bin/gnome-mplayer
@man man/man1/gnome-mplayer.1
share/applications/gnome-mplayer.desktop
@ -12,6 +12,9 @@ share/doc/gnome-mplayer/README
share/doc/gnome-mplayer/dbus.txt
share/doc/gnome-mplayer/keyboard_shortcuts.txt
share/doc/gnome-mplayer/plugin-interaction.txt
share/gnome-control-center/
share/gnome-control-center/default-apps/
share/gnome-control-center/default-apps/gnome-mplayer.xml
share/icons/
share/icons/hicolor/
share/icons/hicolor/16x16/
@ -32,30 +35,30 @@ share/icons/hicolor/48x48/apps/gnome-mplayer.png
share/icons/hicolor/scalable/
share/icons/hicolor/scalable/apps/
share/icons/hicolor/scalable/apps/gnome-mplayer.svg
share/locale/ar/LC_MESSAGES/gnome-mplayer.mo
share/locale/bg/LC_MESSAGES/gnome-mplayer.mo
share/locale/ca/LC_MESSAGES/gnome-mplayer.mo
share/locale/cs/LC_MESSAGES/gnome-mplayer.mo
share/locale/de/LC_MESSAGES/gnome-mplayer.mo
share/locale/el/LC_MESSAGES/gnome-mplayer.mo
share/locale/en/LC_MESSAGES/gnome-mplayer.mo
share/locale/en_GB/
share/locale/en_GB/LC_MESSAGES/
share/locale/en_GB/LC_MESSAGES/gnome-mplayer.mo
share/locale/es/LC_MESSAGES/gnome-mplayer.mo
share/locale/fr/LC_MESSAGES/gnome-mplayer.mo
share/locale/gl/LC_MESSAGES/gnome-mplayer.mo
share/locale/he/LC_MESSAGES/gnome-mplayer.mo
share/locale/hu/LC_MESSAGES/gnome-mplayer.mo
share/locale/it/LC_MESSAGES/gnome-mplayer.mo
share/locale/ja/LC_MESSAGES/gnome-mplayer.mo
share/locale/ko/LC_MESSAGES/gnome-mplayer.mo
share/locale/lt/
share/locale/lt/LC_MESSAGES/
share/locale/lt/LC_MESSAGES/gnome-mplayer.mo
share/locale/nl/LC_MESSAGES/gnome-mplayer.mo
share/locale/pl/LC_MESSAGES/gnome-mplayer.mo
share/locale/pt/LC_MESSAGES/gnome-mplayer.mo
share/locale/pt_BR/LC_MESSAGES/gnome-mplayer.mo
share/locale/ro/LC_MESSAGES/gnome-mplayer.mo
share/locale/ru/LC_MESSAGES/gnome-mplayer.mo
share/locale/sr/LC_MESSAGES/gnome-mplayer.mo
share/locale/sr@latin/
share/locale/sr@latin/LC_MESSAGES/
share/locale/sr@latin/LC_MESSAGES/gnome-mplayer.mo
share/locale/sv/LC_MESSAGES/gnome-mplayer.mo
share/locale/tr/LC_MESSAGES/gnome-mplayer.mo