Hello community, here is the log from the commit of package xfce4-panel-plugin-pulseaudio for openSUSE:Factory checked in at 2015-05-15 07:43:27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xfce4-panel-plugin-pulseaudio (Old) and /work/SRC/openSUSE:Factory/.xfce4-panel-plugin-pulseaudio.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xfce4-panel-plugin-pulseaudio" Changes: -------- --- /work/SRC/openSUSE:Factory/xfce4-panel-plugin-pulseaudio/xfce4-panel-plugin-pulseaudio.changes 2015-03-28 18:38:46.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.xfce4-panel-plugin-pulseaudio.new/xfce4-panel-plugin-pulseaudio.changes 2015-05-15 07:43:32.000000000 +0200 @@ -1,0 +2,9 @@ +Tue May 12 08:03:47 UTC 2015 - g...@opensuse.org + +- update to version 0.2.3 + - corrected copyright and author list + - added OSD notifications + - >100% audio volume is now allowed (only when using a volume + slider) + +------------------------------------------------------------------- Old: ---- xfce4-pulseaudio-plugin-0.2.2.tar.bz2 New: ---- xfce4-pulseaudio-plugin-0.2.3.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xfce4-panel-plugin-pulseaudio.spec ++++++ --- /var/tmp/diff_new_pack.rRJk2k/_old 2015-05-15 07:43:32.000000000 +0200 +++ /var/tmp/diff_new_pack.rRJk2k/_new 2015-05-15 07:43:32.000000000 +0200 @@ -21,7 +21,7 @@ %define plugin_name xfce4-pulseaudio-plugin Name: xfce4-panel-plugin-pulseaudio -Version: 0.2.2 +Version: 0.2.3 Release: 0 Summary: Pulseaudio Volume Control Plugin for the Xfce Panel License: GPL-2.0+ ++++++ xfce4-pulseaudio-plugin-0.2.2.tar.bz2 -> xfce4-pulseaudio-plugin-0.2.3.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/ChangeLog new/xfce4-pulseaudio-plugin-0.2.3/ChangeLog --- old/xfce4-pulseaudio-plugin-0.2.2/ChangeLog 2015-03-26 22:45:10.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/ChangeLog 2015-05-12 03:22:45.000000000 +0200 @@ -1,4 +1,14 @@ # created with git log --pretty=format:"%ad %h %s %aN <%aE>" --no-merges --date=short +2015-05-12 7cfc9a3 make distcheck fix Andrzej <ndrwr...@gmail.com> +2015-04-19 405f94a Corrected copyright and author list Andrzej <ndrwr...@gmail.com> +2015-04-19 f4b6b6c Added OSD notifications Andrzej <ndrwr...@gmail.com> +2015-04-18 18ef95f Do not increase volume beyond 100% when using keyboard or mouse scroll Andrzej <ndrwr...@gmail.com> +2015-04-07 cd06756 Limit volume to newly introduced volume-max rather than to 100% Andrzej <ndrwr...@gmail.com> +2015-04-07 e3f8abf Added a volume_max xfconf property Andrzej <ndrwr...@gmail.com> +2015-04-07 67e4394 Fixed an incorrect constant in debugging code Andrzej <ndrwr...@gmail.com> +2015-04-06 af38716 Allow volume object use plugin settings. Andrzej <ndrwr...@gmail.com> +2015-03-26 45d2d85 Back to development Andrzej <ndrwr...@gmail.com> +2015-03-26 4c20235 Updates for a release Andrzej <ndrwr...@gmail.com> 2015-03-26 3f7b531 Updated po/Makefile.in.in Andrzej <ndrwr...@gmail.com> 2015-03-21 d545681 Create new icon for the plugin Simon Steinbeiss <simon.steinbe...@elfenbeinturm.at> 2015-03-21 7b2057f Install the audio volume icons in hicolor Simon Steinbeiss <simon.steinbe...@elfenbeinturm.at> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/Makefile.in new/xfce4-pulseaudio-plugin-0.2.3/Makefile.in --- old/xfce4-pulseaudio-plugin-0.2.2/Makefile.in 2015-03-26 22:47:06.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/Makefile.in 2015-05-12 03:23:18.000000000 +0200 @@ -256,6 +256,10 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ +LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ +LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ +LIBNOTIFY_REQUIRED_VERSION = @LIBNOTIFY_REQUIRED_VERSION@ +LIBNOTIFY_VERSION = @LIBNOTIFY_VERSION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/config.h.in new/xfce4-pulseaudio-plugin-0.2.3/config.h.in --- old/xfce4-pulseaudio-plugin-0.2.2/config.h.in 2015-03-26 22:47:19.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/config.h.in 2015-05-12 03:23:28.000000000 +0200 @@ -33,6 +33,9 @@ /* Define if your <locale.h> file defines LC_MESSAGES. */ #undef HAVE_LC_MESSAGES +/* Define if libnotify >= 0.7.0 present */ +#undef HAVE_LIBNOTIFY + /* Define if libX11 is available */ #undef HAVE_LIBX11 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/configure new/xfce4-pulseaudio-plugin-0.2.3/configure --- old/xfce4-pulseaudio-plugin-0.2.2/configure 2015-03-26 22:47:07.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/configure 2015-05-12 03:23:19.000000000 +0200 @@ -1,7 +1,7 @@ #! /bin/sh -# From configure.ac 4c20235. +# From configure.ac 9371397. # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for xfce4-pulseaudio-plugin 0.2.2. +# Generated by GNU Autoconf 2.69 for xfce4-pulseaudio-plugin 0.2.3. # # Report bugs to <http://bugzilla.xfce.org/>. # @@ -594,8 +594,8 @@ # Identity of this package. PACKAGE_NAME='xfce4-pulseaudio-plugin' PACKAGE_TARNAME='xfce4-pulseaudio-plugin' -PACKAGE_VERSION='0.2.2' -PACKAGE_STRING='xfce4-pulseaudio-plugin 0.2.2' +PACKAGE_VERSION='0.2.3' +PACKAGE_STRING='xfce4-pulseaudio-plugin 0.2.3' PACKAGE_BUGREPORT='http://bugzilla.xfce.org/' PACKAGE_URL='' @@ -644,6 +644,12 @@ PLATFORM_CPPFLAGS DEFAULT_MIXER_COMMAND LIBM +HAVE_LIBNOTIFY_FALSE +HAVE_LIBNOTIFY_TRUE +LIBNOTIFY_REQUIRED_VERSION +LIBNOTIFY_LIBS +LIBNOTIFY_CFLAGS +LIBNOTIFY_VERSION HAVE_KEYBINDER_FALSE HAVE_KEYBINDER_TRUE KEYBINDER_REQUIRED_VERSION @@ -875,6 +881,7 @@ with_locales_dir with_x enable_keybinder +enable_libnotify enable_debug with_mixer_command ' @@ -1431,7 +1438,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xfce4-pulseaudio-plugin 0.2.2 to adapt to many kinds of systems. +\`configure' configures xfce4-pulseaudio-plugin 0.2.3 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1507,7 +1514,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xfce4-pulseaudio-plugin 0.2.2:";; + short | recursive ) echo "Configuration of xfce4-pulseaudio-plugin 0.2.3:";; esac cat <<\_ACEOF @@ -1533,6 +1540,9 @@ --enable-keybinder Enable checking for keybinder Support (default=[]) --disable-keybinder Disable checking for keybinder Support + --enable-libnotify Enable checking for libnotify library + (default=[]) + --disable-libnotify Disable checking for libnotify library --enable-debug[=no|minimum|yes|full] Build with debugging support [default=[]] --disable-debug Include no debugging support @@ -1634,7 +1644,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xfce4-pulseaudio-plugin configure 0.2.2 +xfce4-pulseaudio-plugin configure 0.2.3 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2006,7 +2016,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xfce4-pulseaudio-plugin $as_me 0.2.2, which was +It was created by xfce4-pulseaudio-plugin $as_me 0.2.3, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2984,7 +2994,7 @@ # Define the identity of the package. PACKAGE='xfce4-pulseaudio-plugin' - VERSION='0.2.2' + VERSION='0.2.3' cat >>confdefs.h <<_ACEOF @@ -15511,6 +15521,242 @@ + + + + # Check whether --enable-libnotify was given. +if test "${enable_libnotify+set}" = set; then : + enableval=$enable_libnotify; xdt_cv_LIBNOTIFY_check=$enableval +else + xdt_cv_LIBNOTIFY_check=yes +fi + + + if test x"$xdt_cv_LIBNOTIFY_check" = x"yes"; then + if $PKG_CONFIG --exists "libnotify >= 0.7.0" >/dev/null 2>&1; then + + + # minimum supported version of pkg-config + xdt_cv_PKG_CONFIG_MIN_VERSION=0.9.0 + + + + + + + + + +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. +set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_PKG_CONFIG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +PKG_CONFIG=$ac_cv_path_PKG_CONFIG +if test -n "$PKG_CONFIG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 +$as_echo "$PKG_CONFIG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_path_PKG_CONFIG"; then + ac_pt_PKG_CONFIG=$PKG_CONFIG + # Extract the first word of "pkg-config", so it can be a program name with args. +set dummy pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $ac_pt_PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG +if test -n "$ac_pt_PKG_CONFIG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 +$as_echo "$ac_pt_PKG_CONFIG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_pt_PKG_CONFIG" = x; then + PKG_CONFIG="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + PKG_CONFIG=$ac_pt_PKG_CONFIG + fi +else + PKG_CONFIG="$ac_cv_path_PKG_CONFIG" +fi + +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=$xdt_cv_PKG_CONFIG_MIN_VERSION + { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 +$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + PKG_CONFIG="" + fi +fi + + if test x"$PKG_CONFIG" = x""; then + echo + echo "*** Your version of pkg-config is too old. You need atleast" + echo "*** pkg-config $xdt_cv_PKG_CONFIG_MIN_VERSION or newer. You can download pkg-config" + echo "*** from the freedesktop.org software repository at" + echo "***" + echo "*** http://www.freedesktop.org/software/pkgconfig" + echo "***" + exit 1; + fi + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libnotify >= 0.7.0" >&5 +$as_echo_n "checking for libnotify >= 0.7.0... " >&6; } + if $PKG_CONFIG "--atleast-version=0.7.0" "libnotify" >/dev/null 2>&1; then + LIBNOTIFY_VERSION=`$PKG_CONFIG --modversion "libnotify"` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBNOTIFY_VERSION" >&5 +$as_echo "$LIBNOTIFY_VERSION" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBNOTIFY_CFLAGS" >&5 +$as_echo_n "checking LIBNOTIFY_CFLAGS... " >&6; } + LIBNOTIFY_CFLAGS=`$PKG_CONFIG --cflags "libnotify"` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBNOTIFY_CFLAGS" >&5 +$as_echo "$LIBNOTIFY_CFLAGS" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking LIBNOTIFY_LIBS" >&5 +$as_echo_n "checking LIBNOTIFY_LIBS... " >&6; } + LIBNOTIFY_LIBS=`$PKG_CONFIG --libs "libnotify"` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBNOTIFY_LIBS" >&5 +$as_echo "$LIBNOTIFY_LIBS" >&6; } + + LIBNOTIFY_REQUIRED_VERSION=0.7.0 + + + + + + + + +$as_echo "#define HAVE_LIBNOTIFY 1" >>confdefs.h + + LIBNOTIFY_FOUND="yes" + + elif $PKG_CONFIG --exists "libnotify" >/dev/null 2>&1; then + xdt_cv_version=`$PKG_CONFIG --modversion "libnotify"` + { $as_echo "$as_me:${as_lineno-$LINENO}: result: found, but $xdt_cv_version" >&5 +$as_echo "found, but $xdt_cv_version" >&6; } + + + echo "*** The required package libnotify was found on your system," + echo "*** but the installed version ($xdt_cv_version) is too old." + echo "*** Please upgrade libnotify to atleast version 0.7.0, or adjust" + echo "*** the PKG_CONFIG_PATH environment variable if you installed" + echo "*** the new version of the package in a nonstandard prefix so" + echo "*** pkg-config is able to find it." + exit 1 + + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 +$as_echo "not found" >&6; } + + + echo "*** The required package libnotify was not found on your system." + echo "*** Please install libnotify (atleast version 0.7.0) or adjust" + echo "*** the PKG_CONFIG_PATH environment variable if you" + echo "*** installed the package in a nonstandard prefix so that" + echo "*** pkg-config is able to find it." + exit 1 + + fi + + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for optional package libnotify >= 0.7.0" >&5 +$as_echo_n "checking for optional package libnotify >= 0.7.0... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 +$as_echo "not found" >&6; } + fi + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for optional package libnotify" >&5 +$as_echo_n "checking for optional package libnotify... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: disabled" >&5 +$as_echo "disabled" >&6; } + fi + + if test x"$LIBNOTIFY_FOUND" = x"yes"; then + HAVE_LIBNOTIFY_TRUE= + HAVE_LIBNOTIFY_FALSE='#' +else + HAVE_LIBNOTIFY_TRUE='#' + HAVE_LIBNOTIFY_FALSE= +fi + + + LIBM= case $host in *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) @@ -15914,6 +16160,10 @@ as_fn_error $? "conditional \"HAVE_KEYBINDER\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${HAVE_LIBNOTIFY_TRUE}" && test -z "${HAVE_LIBNOTIFY_FALSE}"; then + as_fn_error $? "conditional \"HAVE_LIBNOTIFY\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 @@ -16311,7 +16561,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xfce4-pulseaudio-plugin $as_me 0.2.2, which was +This file was extended by xfce4-pulseaudio-plugin $as_me 0.2.3, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -16377,7 +16627,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -xfce4-pulseaudio-plugin config.status 0.2.2 +xfce4-pulseaudio-plugin config.status 0.2.3 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -18183,5 +18433,6 @@ echo echo "* Debug Support: $enable_debug" echo "* Use keybinder: ${KEYBINDER_FOUND:-no}" +echo "* Use libnotify: ${LIBNOTIFY_FOUND:-no}" echo "* Default Mixer command: $DEFAULT_MIXER_COMMAND" echo diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/configure.ac new/xfce4-pulseaudio-plugin-0.2.3/configure.ac --- old/xfce4-pulseaudio-plugin-0.2.2/configure.ac 2015-03-26 22:47:01.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/configure.ac 2015-05-12 03:23:15.000000000 +0200 @@ -13,9 +13,9 @@ dnl *************************** m4_define([pulseaudio_version_major], [0]) m4_define([pulseaudio_version_minor], [2]) -m4_define([pulseaudio_version_micro], [2]) +m4_define([pulseaudio_version_micro], [3]) m4_define([pulseaudio_version_nano], []) dnl leave this empty to have no nano version -m4_define([pulseaudio_version_build], [4c20235]) +m4_define([pulseaudio_version_build], [9371397]) m4_define([pulseaudio_version_tag], []) m4_define([pulseaudio_version], [pulseaudio_version_major().pulseaudio_version_minor().pulseaudio_version_micro()ifelse(pulseaudio_version_nano(), [], [], [.pulseaudio_version_nano()])ifelse(pulseaudio_version_tag(), [git], [pulseaudio_version_tag()-pulseaudio_version_build()], [pulseaudio_version_tag()])]) @@ -28,7 +28,7 @@ AC_PREREQ([2.50]) AC_CONFIG_HEADERS([config.h]) AC_CANONICAL_TARGET() -AC_REVISION([4c20235]) +AC_REVISION([9371397]) dnl *************************** dnl *** Initialize automake *** @@ -95,6 +95,12 @@ XDT_CHECK_OPTIONAL_PACKAGE([KEYBINDER], [keybinder-3.0], [0.2.2], [keybinder], [keybinder Support]) +dnl ********************************** +dnl *** Optional libnotify Support *** +dnl ********************************** +XDT_CHECK_OPTIONAL_PACKAGE([LIBNOTIFY], [libnotify], [0.7.0], [libnotify], + [libnotify library]) + AC_CHECK_LIBM AC_SUBST(LIBM) @@ -145,5 +151,6 @@ echo echo "* Debug Support: $enable_debug" echo "* Use keybinder: ${KEYBINDER_FOUND:-no}" +echo "* Use libnotify: ${LIBNOTIFY_FOUND:-no}" echo "* Default Mixer command: $DEFAULT_MIXER_COMMAND" echo diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/icons/48x48/Makefile.in new/xfce4-pulseaudio-plugin-0.2.3/icons/48x48/Makefile.in --- old/xfce4-pulseaudio-plugin-0.2.2/icons/48x48/Makefile.in 2015-03-26 22:47:06.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/icons/48x48/Makefile.in 2015-05-12 03:23:18.000000000 +0200 @@ -205,6 +205,10 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ +LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ +LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ +LIBNOTIFY_REQUIRED_VERSION = @LIBNOTIFY_REQUIRED_VERSION@ +LIBNOTIFY_VERSION = @LIBNOTIFY_VERSION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/icons/Makefile.in new/xfce4-pulseaudio-plugin-0.2.3/icons/Makefile.in --- old/xfce4-pulseaudio-plugin-0.2.2/icons/Makefile.in 2015-03-26 22:47:06.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/icons/Makefile.in 2015-05-12 03:23:18.000000000 +0200 @@ -235,6 +235,10 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ +LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ +LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ +LIBNOTIFY_REQUIRED_VERSION = @LIBNOTIFY_REQUIRED_VERSION@ +LIBNOTIFY_VERSION = @LIBNOTIFY_VERSION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/icons/scalable/Makefile.in new/xfce4-pulseaudio-plugin-0.2.3/icons/scalable/Makefile.in --- old/xfce4-pulseaudio-plugin-0.2.2/icons/scalable/Makefile.in 2015-03-26 22:47:06.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/icons/scalable/Makefile.in 2015-05-12 03:23:18.000000000 +0200 @@ -235,6 +235,10 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ +LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ +LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ +LIBNOTIFY_REQUIRED_VERSION = @LIBNOTIFY_REQUIRED_VERSION@ +LIBNOTIFY_VERSION = @LIBNOTIFY_VERSION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/icons/scalable/apps/Makefile.in new/xfce4-pulseaudio-plugin-0.2.3/icons/scalable/apps/Makefile.in --- old/xfce4-pulseaudio-plugin-0.2.2/icons/scalable/apps/Makefile.in 2015-03-26 22:47:06.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/icons/scalable/apps/Makefile.in 2015-05-12 03:23:18.000000000 +0200 @@ -205,6 +205,10 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ +LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ +LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ +LIBNOTIFY_REQUIRED_VERSION = @LIBNOTIFY_REQUIRED_VERSION@ +LIBNOTIFY_VERSION = @LIBNOTIFY_VERSION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/icons/scalable/status/Makefile.in new/xfce4-pulseaudio-plugin-0.2.3/icons/scalable/status/Makefile.in --- old/xfce4-pulseaudio-plugin-0.2.2/icons/scalable/status/Makefile.in 2015-03-26 22:47:06.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/icons/scalable/status/Makefile.in 2015-05-12 03:23:18.000000000 +0200 @@ -205,6 +205,10 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ +LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ +LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ +LIBNOTIFY_REQUIRED_VERSION = @LIBNOTIFY_REQUIRED_VERSION@ +LIBNOTIFY_VERSION = @LIBNOTIFY_VERSION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/Makefile.am new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/Makefile.am --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/Makefile.am 2015-03-08 04:52:24.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/Makefile.am 2015-05-03 22:52:14.000000000 +0200 @@ -35,6 +35,8 @@ pulseaudio-dialog.h \ pulseaudio-menu.c \ pulseaudio-menu.h \ + pulseaudio-notify.c \ + pulseaudio-notify.h \ scalemenuitem.c \ scalemenuitem.h @@ -48,6 +50,7 @@ $(LIBXFCE4PANEL_CFLAGS) \ $(XFCONF_CFLAGS) \ $(KEYBINDER_CFLAGS) \ + $(LIBNOTIFY_CFLAGS) \ $(PLATFORM_CFLAGS) libpulseaudio_plugin_la_LDFLAGS = \ @@ -66,6 +69,7 @@ $(LIBXFCE4PANEL_LIBS) \ $(XFCONF_LIBS) \ $(KEYBINDER_LIBS) \ + $(LIBNOTIFY_LIBS) \ $(LIBM) # diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/Makefile.in new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/Makefile.in --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/Makefile.in 2015-03-26 22:47:06.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/Makefile.in 2015-05-12 03:23:18.000000000 +0200 @@ -128,7 +128,8 @@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) am__objects_1 = am_libpulseaudio_plugin_la_OBJECTS = $(am__objects_1) \ libpulseaudio_plugin_la-pulseaudio-debug.lo \ @@ -138,6 +139,7 @@ libpulseaudio_plugin_la-pulseaudio-plugin.lo \ libpulseaudio_plugin_la-pulseaudio-dialog.lo \ libpulseaudio_plugin_la-pulseaudio-menu.lo \ + libpulseaudio_plugin_la-pulseaudio-notify.lo \ libpulseaudio_plugin_la-scalemenuitem.lo libpulseaudio_plugin_la_OBJECTS = \ $(am_libpulseaudio_plugin_la_OBJECTS) @@ -275,6 +277,10 @@ LD = @LD@ LDFLAGS = @LDFLAGS@ LIBM = @LIBM@ +LIBNOTIFY_CFLAGS = @LIBNOTIFY_CFLAGS@ +LIBNOTIFY_LIBS = @LIBNOTIFY_LIBS@ +LIBNOTIFY_REQUIRED_VERSION = @LIBNOTIFY_REQUIRED_VERSION@ +LIBNOTIFY_VERSION = @LIBNOTIFY_VERSION@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ @@ -446,6 +452,8 @@ pulseaudio-dialog.h \ pulseaudio-menu.c \ pulseaudio-menu.h \ + pulseaudio-notify.c \ + pulseaudio-notify.h \ scalemenuitem.c \ scalemenuitem.h @@ -458,6 +466,7 @@ $(LIBXFCE4PANEL_CFLAGS) \ $(XFCONF_CFLAGS) \ $(KEYBINDER_CFLAGS) \ + $(LIBNOTIFY_CFLAGS) \ $(PLATFORM_CFLAGS) libpulseaudio_plugin_la_LDFLAGS = \ @@ -476,6 +485,7 @@ $(LIBXFCE4PANEL_LIBS) \ $(XFCONF_LIBS) \ $(KEYBINDER_LIBS) \ + $(LIBNOTIFY_LIBS) \ $(LIBM) @@ -584,6 +594,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-debug.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-dialog.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-menu.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-notify.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-plugin.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-volume.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpulseaudio_plugin_la-scalemenuitem.Plo@am__quote@ @@ -658,6 +669,13 @@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpulseaudio_plugin_la_CFLAGS) $(CFLAGS) -c -o libpulseaudio_plugin_la-pulseaudio-menu.lo `test -f 'pulseaudio-menu.c' || echo '$(srcdir)/'`pulseaudio-menu.c +libpulseaudio_plugin_la-pulseaudio-notify.lo: pulseaudio-notify.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpulseaudio_plugin_la_CFLAGS) $(CFLAGS) -MT libpulseaudio_plugin_la-pulseaudio-notify.lo -MD -MP -MF $(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-notify.Tpo -c -o libpulseaudio_plugin_la-pulseaudio-notify.lo `test -f 'pulseaudio-notify.c' || echo '$(srcdir)/'`pulseaudio-notify.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-notify.Tpo $(DEPDIR)/libpulseaudio_plugin_la-pulseaudio-notify.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pulseaudio-notify.c' object='libpulseaudio_plugin_la-pulseaudio-notify.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpulseaudio_plugin_la_CFLAGS) $(CFLAGS) -c -o libpulseaudio_plugin_la-pulseaudio-notify.lo `test -f 'pulseaudio-notify.c' || echo '$(srcdir)/'`pulseaudio-notify.c + libpulseaudio_plugin_la-scalemenuitem.lo: scalemenuitem.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpulseaudio_plugin_la_CFLAGS) $(CFLAGS) -MT libpulseaudio_plugin_la-scalemenuitem.lo -MD -MP -MF $(DEPDIR)/libpulseaudio_plugin_la-scalemenuitem.Tpo -c -o libpulseaudio_plugin_la-scalemenuitem.lo `test -f 'scalemenuitem.c' || echo '$(srcdir)/'`scalemenuitem.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libpulseaudio_plugin_la-scalemenuitem.Tpo $(DEPDIR)/libpulseaudio_plugin_la-scalemenuitem.Plo diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-button.c new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-button.c --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-button.c 2015-03-22 03:23:45.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-button.c 2015-05-03 22:52:14.000000000 +0200 @@ -223,16 +223,24 @@ static gboolean pulseaudio_button_scroll_event (GtkWidget *widget, GdkEventScroll *event) { - PulseaudioButton *button = PULSEAUDIO_BUTTON (widget); - gdouble volume = pulseaudio_volume_get_volume (button->volume); - gdouble volume_step = pulseaudio_config_get_volume_step (button->config) / 100.0; - gdouble new_volume; + PulseaudioButton *button = PULSEAUDIO_BUTTON (widget); + gdouble volume = pulseaudio_volume_get_volume (button->volume); + gdouble volume_step = pulseaudio_config_get_volume_step (button->config) / 100.0; + gdouble new_volume; - new_volume = MIN (MAX (volume + (1.0 - 2.0 * event->direction) * volume_step, 0.0), 1.0); + if (event->direction == 1) // decrease volume + new_volume = volume - volume_step; + else if (event->direction == 0) // increase volume + new_volume = MIN (volume + volume_step, MAX (volume, 1.0)); + else + new_volume = volume; + pulseaudio_volume_set_volume (button->volume, new_volume); //g_debug ("dir: %d %f -> %f", event->direction, volume, new_volume); + pulseaudio_notify (button->plugin); + return TRUE; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-config.c new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-config.c --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-config.c 2015-03-04 21:47:30.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-config.c 2015-05-03 22:52:14.000000000 +0200 @@ -47,6 +47,7 @@ #define DEFAULT_ENABLE_KEYBOARD_SHORTCUTS TRUE #define DEFAULT_VOLUME_STEP 6 +#define DEFAULT_VOLUME_MAX 153 @@ -73,6 +74,7 @@ gboolean enable_keyboard_shortcuts; guint volume_step; + guint volume_max; gchar *mixer_command; }; @@ -83,6 +85,7 @@ PROP_0, PROP_ENABLE_KEYBOARD_SHORTCUTS, PROP_VOLUME_STEP, + PROP_VOLUME_MAX, PROP_MIXER_COMMAND, N_PROPERTIES, }; @@ -129,6 +132,15 @@ g_object_class_install_property (gobject_class, + PROP_VOLUME_MAX, + g_param_spec_uint ("volume-max", NULL, NULL, + 1, 300, DEFAULT_VOLUME_MAX, + G_PARAM_READWRITE | + G_PARAM_STATIC_STRINGS)); + + + + g_object_class_install_property (gobject_class, PROP_MIXER_COMMAND, g_param_spec_string ("mixer-command", NULL, NULL, @@ -153,6 +165,7 @@ { config->enable_keyboard_shortcuts = DEFAULT_ENABLE_KEYBOARD_SHORTCUTS; config->volume_step = DEFAULT_VOLUME_STEP; + config->volume_max = DEFAULT_VOLUME_MAX; config->mixer_command = g_strdup (DEFAULT_MIXER_COMMAND); } @@ -189,6 +202,10 @@ g_value_set_uint (value, config->volume_step); break; + case PROP_VOLUME_MAX: + g_value_set_uint (value, config->volume_max); + break; + case PROP_MIXER_COMMAND: g_value_set_string (value, config->mixer_command); break; @@ -233,6 +250,16 @@ } break; + case PROP_VOLUME_MAX: + val_uint = g_value_get_uint (value); + if (config->volume_max != val_uint) + { + config->volume_max = val_uint; + g_object_notify (G_OBJECT (config), "volume-max"); + g_signal_emit (G_OBJECT (config), pulseaudio_config_signals [CONFIGURATION_CHANGED], 0); + } + break; + case PROP_MIXER_COMMAND: g_free (config->mixer_command); config->mixer_command = g_value_dup_string (value); @@ -261,7 +288,7 @@ guint pulseaudio_config_get_volume_step (PulseaudioConfig *config) { - g_return_val_if_fail (IS_PULSEAUDIO_CONFIG (config), DEFAULT_ENABLE_KEYBOARD_SHORTCUTS); + g_return_val_if_fail (IS_PULSEAUDIO_CONFIG (config), DEFAULT_VOLUME_STEP); return config->volume_step; } @@ -269,6 +296,17 @@ +guint +pulseaudio_config_get_volume_max (PulseaudioConfig *config) +{ + g_return_val_if_fail (IS_PULSEAUDIO_CONFIG (config), DEFAULT_VOLUME_MAX); + + return config->volume_max; +} + + + + const gchar * pulseaudio_config_get_mixer_command (PulseaudioConfig *config) { @@ -301,6 +339,10 @@ xfconf_g_property_bind (channel, property, G_TYPE_UINT, config, "volume-step"); g_free (property); + property = g_strconcat (property_base, "/volume-max", NULL); + xfconf_g_property_bind (channel, property, G_TYPE_UINT, config, "volume-max"); + g_free (property); + property = g_strconcat (property_base, "/mixer-command", NULL); xfconf_g_property_bind (channel, property, G_TYPE_STRING, config, "mixer-command"); g_free (property); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-config.h new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-config.h --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-config.h 2015-03-04 21:47:49.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-config.h 2015-05-03 22:52:14.000000000 +0200 @@ -40,7 +40,8 @@ gboolean pulseaudio_config_get_enable_keyboard_shortcuts (PulseaudioConfig *config); guint pulseaudio_config_get_volume_step (PulseaudioConfig *config); -const gchar *pulseaudio_config_get_mixer_command (PulseaudioConfig *config); +guint pulseaudio_config_get_volume_max (PulseaudioConfig *config); +const gchar *pulseaudio_config_get_mixer_command (PulseaudioConfig *config); G_END_DECLS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-menu.c new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-menu.c --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-menu.c 2015-03-22 03:23:45.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-menu.c 2015-05-03 22:52:14.000000000 +0200 @@ -119,7 +119,7 @@ scroll_event = (GdkEventScroll*)event; - new_volume = MIN (MAX (volume + (1.0 - 2.0 * scroll_event->direction) * volume_step, 0.0), 1.0); + new_volume = volume + (1.0 - 2.0 * scroll_event->direction) * volume_step; pulseaudio_volume_set_volume (menu->volume, new_volume); //printf ("scroll %d %g %g\n", scroll_event->direction, volume, new_volume); } @@ -210,6 +210,7 @@ GdkScreen *gscreen; GtkWidget *mi; GtkWidget *img = NULL; + gdouble volume_max; g_return_val_if_fail (IS_PULSEAUDIO_VOLUME (volume), NULL); g_return_val_if_fail (IS_PULSEAUDIO_CONFIG (config), NULL); @@ -232,7 +233,8 @@ G_CALLBACK (pulseaudio_menu_volume_changed), menu); /* output volume slider */ - mi = scale_menu_item_new_with_range (0.0, 100.0, 1.0); + volume_max = pulseaudio_config_get_volume_max (menu->config); + mi = scale_menu_item_new_with_range (0.0, volume_max, 1.0); img = gtk_image_new_from_icon_name ("audio-volume-high-symbolic", GTK_ICON_SIZE_DND); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (mi), img); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-notify.c new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-notify.c --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-notify.c 1970-01-01 01:00:00.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-notify.c 2015-05-03 22:52:14.000000000 +0200 @@ -0,0 +1,219 @@ +/* Copyright (c) 2009-2015 Steve Dodier-Lazaro <s...@xfce.org> + * Copyright (c) 2015 Andrzej <ndrwr...@gmail.com> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + + + +/* + * This file implements a wrapper for libnotify + * + */ + + + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#ifdef HAVE_MATH_H +#include <math.h> +#endif + +#ifdef HAVE_LIBNOTIFY +#include <libnotify/notify.h> +#include <libxfce4util/libxfce4util.h> + + +#define SYNCHRONOUS "x-canonical-private-synchronous" +#define LAYOUT_ICON_ONLY "x-canonical-private-icon-only" + +#include "pulseaudio-notify.h" + +#define V_MUTED 0 +#define V_LOW 1 +#define V_MEDIUM 2 +#define V_HIGH 3 + + +/* Icons for different volume levels */ +static const char *icons[] = { + "audio-volume-muted-symbolic", + "audio-volume-low-symbolic", + "audio-volume-medium-symbolic", + "audio-volume-high-symbolic", + NULL +}; + + +static void pulseaudio_notify_finalize (GObject *object); + + +struct _PulseaudioNotify +{ + GObject __parent__; + + PulseaudioConfig *config; + PulseaudioVolume *volume; + + gboolean gauge_notifications; + NotifyNotification *notification; +}; + +struct _PulseaudioNotifyClass +{ + GObjectClass __parent__; +}; + + + + +G_DEFINE_TYPE (PulseaudioNotify, pulseaudio_notify, G_TYPE_OBJECT) + +static void +pulseaudio_notify_class_init (PulseaudioNotifyClass *klass) +{ + GObjectClass *gobject_class; + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = pulseaudio_notify_finalize; +} + + + +static void +pulseaudio_notify_init (PulseaudioNotify *notify) +{ + GList *caps_list; + GList *node; + + notify->gauge_notifications = TRUE; + notify->notification = NULL; + + //g_set_application_name ("Xfce volume control"); + notify_init ("Xfce volume control"); + + caps_list = notify_get_server_caps (); + + if (caps_list) + { + node = g_list_find_custom (caps_list, LAYOUT_ICON_ONLY, (GCompareFunc) g_strcmp0); + if (!node) + notify->gauge_notifications = FALSE; + /* node = g_list_find_custom (caps_list, SYNCHRONOUS, (GCompareFunc) g_strcmp0);*/ + /* if (!node)*/ + /* Inst->gauge_notifications = FALSE;*/ + g_list_free (caps_list); + } + notify->notification = notify_notification_new ("xfce4-pulseaudio-plugin", NULL, NULL); + notify_notification_set_timeout (notify->notification, 1500); +} + + + +static void +pulseaudio_notify_finalize (GObject *object) +{ + PulseaudioNotify *notify = PULSEAUDIO_NOTIFY (object); + + notify->config = NULL; + + g_object_unref (G_OBJECT (notify->notification)); + notify->notification = NULL; + notify_uninit (); + + (*G_OBJECT_CLASS (pulseaudio_notify_parent_class)->finalize) (object); +} + + + +void +pulseaudio_notify_notify (PulseaudioNotify *notify) +{ + GError *error = NULL; + gdouble volume; + gint volume_i; + gboolean muted; + gchar *title = NULL; + const gchar *icon = NULL; + + g_return_if_fail (IS_PULSEAUDIO_NOTIFY (notify)); + g_return_if_fail (IS_PULSEAUDIO_VOLUME (notify->volume)); + + volume = pulseaudio_volume_get_volume (notify->volume); + muted = pulseaudio_volume_get_muted (notify->volume); + volume_i = (gint) round (volume * 100); + + if (muted) + title = g_strdup_printf ( _("Volume %d%c (muted)"), volume_i, '%'); + else + title = g_strdup_printf ( _("Volume %d%c"), volume_i, '%'); + + if (muted) + icon = icons[V_MUTED]; + else if (volume <= 0.0) + icon = icons[V_MUTED]; + else if (volume <= 0.3) + icon = icons[V_LOW]; + else if (volume <= 0.7) + icon = icons[V_MEDIUM]; + else + icon = icons[V_HIGH]; + + + notify_notification_update (notify->notification, + title, + NULL, + icon); + g_free (title); + + if (notify->gauge_notifications) { + notify_notification_set_hint_int32 (notify->notification, + "value", + volume_i); + notify_notification_set_hint_string (notify->notification, + "x-canonical-private-synchronous", + ""); + } + + if (!notify_notification_show (notify->notification, &error)) + { + g_warning ("Error while sending notification : %s\n", error->message); + g_error_free (error); + } +} + + + +PulseaudioNotify * +pulseaudio_notify_new (PulseaudioConfig *config, + PulseaudioVolume *volume) +{ + PulseaudioNotify *notify; + + g_return_val_if_fail (IS_PULSEAUDIO_CONFIG (config), NULL); + g_return_val_if_fail (IS_PULSEAUDIO_VOLUME (volume), NULL); + + notify = g_object_new (TYPE_PULSEAUDIO_NOTIFY, NULL); + + notify->config = config; + notify->volume = volume; + + return notify; +} + + +#endif /* HAVE_LIBNOTIFY */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-notify.h new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-notify.h --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-notify.h 1970-01-01 01:00:00.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-notify.h 2015-05-03 22:52:14.000000000 +0200 @@ -0,0 +1,50 @@ +/* Copyright (c) 2009-2015 Steve Dodier-Lazaro <s...@xfce.org> + * Copyright (c) 2015 Andrzej <ndrwr...@gmail.com> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __PULSEAUDIO_NOTIFY_H__ +#define __PULSEAUDIO_NOTIFY_H__ + +#ifdef HAVE_LIBNOTIFY + +#include <glib-object.h> +#include "pulseaudio-config.h" +#include "pulseaudio-volume.h" + +G_BEGIN_DECLS + +#define TYPE_PULSEAUDIO_NOTIFY (pulseaudio_notify_get_type ()) +#define PULSEAUDIO_NOTIFY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PULSEAUDIO_NOTIFY, PulseaudioNotify)) +#define PULSEAUDIO_NOTIFY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PULSEAUDIO_NOTIFY, PulseaudioNotifyClass)) +#define IS_PULSEAUDIO_NOTIFY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PULSEAUDIO_NOTIFY)) +#define IS_PULSEAUDIO_NOTIFY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PULSEAUDIO_NOTIFY)) +#define PULSEAUDIO_NOTIFY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PULSEAUDIO_NOTIFY, PulseaudioNotifyClass)) + +typedef struct _PulseaudioNotify PulseaudioNotify; +typedef struct _PulseaudioNotifyClass PulseaudioNotifyClass; + +GType pulseaudio_notify_get_type (void) G_GNUC_CONST; + +PulseaudioNotify *pulseaudio_notify_new (PulseaudioConfig *config, + PulseaudioVolume *volume); + +void pulseaudio_notify_notify (PulseaudioNotify *notify); + +G_END_DECLS + +#endif /* HAVE_LIBNOTIFY */ +#endif /* !__PULSEAUDIO_NOTIFY_H__ */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-plugin.c new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-plugin.c --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-plugin.c 2015-03-20 23:20:55.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-plugin.c 2015-05-03 22:52:14.000000000 +0200 @@ -41,6 +41,7 @@ #include "pulseaudio-volume.h" #include "pulseaudio-button.h" #include "pulseaudio-dialog.h" +#include "pulseaudio-notify.h" #ifdef HAVE_IDO #include <libido/libido.h> @@ -89,6 +90,9 @@ PulseaudioConfig *config; PulseaudioVolume *volume; +#ifdef HAVE_LIBNOTIFY + PulseaudioNotify *notify; +#endif /* panel widgets */ GtkWidget *button; @@ -130,6 +134,9 @@ pulseaudio_plugin->volume = NULL; pulseaudio_plugin->button = NULL; +#ifdef HAVE_LIBNOTIFY + pulseaudio_plugin->notify = NULL; +#endif } @@ -189,6 +196,8 @@ { "Andrzej Radecki <ndrwr...@gmail.com>", "Guido Berhoerster <guido+x...@berhoerster.name>", + "Simon Steinbeiss <si...@xfce.org>", + "Steve Dodier-Lazaro <s...@xfce.org>", NULL }; @@ -294,9 +303,10 @@ pulseaudio_debug ("%s pressed", keystring); if (strcmp (keystring, PULSEAUDIO_PLUGIN_RAISE_VOLUME_KEY) == 0) - pulseaudio_volume_set_volume (pulseaudio_plugin->volume, MIN (MAX (volume + volume_step, 0.0), 1.0)); + pulseaudio_volume_set_volume (pulseaudio_plugin->volume, MIN (volume + volume_step, MAX (volume, 1.0))); else if (strcmp (keystring, PULSEAUDIO_PLUGIN_LOWER_VOLUME_KEY) == 0) - pulseaudio_volume_set_volume (pulseaudio_plugin->volume, MIN (MAX (volume - volume_step, 0.0), 1.0)); + pulseaudio_volume_set_volume (pulseaudio_plugin->volume, volume - volume_step); + pulseaudio_notify (pulseaudio_plugin); } @@ -309,10 +319,21 @@ pulseaudio_debug ("%s pressed", keystring); pulseaudio_volume_toggle_muted (pulseaudio_plugin->volume); + pulseaudio_notify (pulseaudio_plugin); } #endif +void +pulseaudio_notify (PulseaudioPlugin *pulseaudio_plugin) +{ +#ifdef HAVE_LIBNOTIFY + pulseaudio_notify_notify (pulseaudio_plugin->notify); +#endif +} + + + static void pulseaudio_plugin_construct (XfcePanelPlugin *plugin) { @@ -348,7 +369,13 @@ #endif /* volume controller */ - pulseaudio_plugin->volume = pulseaudio_volume_new (); + pulseaudio_plugin->volume = pulseaudio_volume_new (pulseaudio_plugin->config); + + /* initialize notify wrapper */ +#ifdef HAVE_LIBNOTIFY + pulseaudio_plugin->notify = pulseaudio_notify_new (pulseaudio_plugin->config, + pulseaudio_plugin->volume); +#endif /* instantiate a button box */ pulseaudio_plugin->button = pulseaudio_button_new (pulseaudio_plugin, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-plugin.h new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-plugin.h --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-plugin.h 2015-03-04 21:46:53.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-plugin.h 2015-05-03 22:52:14.000000000 +0200 @@ -37,6 +37,8 @@ void pulseaudio_plugin_register_type (XfcePanelTypeModule *type_module); +void pulseaudio_notify (PulseaudioPlugin *pulseaudio_plugin); + G_END_DECLS #endif /* !__PULSEAUDIO_PLUGIN_H__ */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-volume.c new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-volume.c --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-volume.c 2015-03-04 21:51:49.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-volume.c 2015-05-03 22:52:14.000000000 +0200 @@ -1,4 +1,4 @@ -/* Copyright (c) 2014 Andrzej <ndrwr...@gmail.com> +/* Copyright (c) 2014-2015 Andrzej <ndrwr...@gmail.com> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -32,19 +32,25 @@ #include <pulse/pulseaudio.h> #include <pulse/glib-mainloop.h> +#include "pulseaudio-config.h" #include "pulseaudio-debug.h" #include "pulseaudio-volume.h" static void pulseaudio_volume_finalize (GObject *object); static void pulseaudio_volume_connect (PulseaudioVolume *volume); -static gdouble pulseaudio_volume_v2d (pa_volume_t vol); +static gdouble pulseaudio_volume_v2d (PulseaudioVolume *volume, + pa_volume_t vol); +static pa_volume_t pulseaudio_volume_d2v (PulseaudioVolume *volume, + gdouble vol); struct _PulseaudioVolume { GObject __parent__; + PulseaudioConfig *config; + pa_glib_mainloop *pa_mainloop; pa_context *pa_context; gboolean connected; @@ -118,6 +124,8 @@ { PulseaudioVolume *volume = PULSEAUDIO_VOLUME (object); + volume->config = NULL; + pa_glib_mainloop_free (volume->pa_mainloop); (*G_OBJECT_CLASS (pulseaudio_volume_parent_class)->finalize) (object); @@ -140,7 +148,7 @@ if (i == NULL) return; muted = (gboolean) i->mute; - vol = pulseaudio_volume_v2d (i->volume.values[0]); + vol = pulseaudio_volume_v2d (volume, i->volume.values[0]); if (volume->muted != muted) { @@ -294,29 +302,38 @@ static gdouble -pulseaudio_volume_v2d (pa_volume_t vol) +pulseaudio_volume_v2d (PulseaudioVolume *volume, + pa_volume_t pa_volume) { - gdouble volume; + gdouble vol; + gdouble vol_max; + + g_return_val_if_fail (IS_PULSEAUDIO_VOLUME (volume), 0.0); - volume = (gdouble) vol - PA_VOLUME_MUTED; - volume /= (gdouble) (PA_VOLUME_NORM - PA_VOLUME_MUTED); + vol_max = pulseaudio_config_get_volume_max (volume->config) / 100.0; + + vol = (gdouble) pa_volume - PA_VOLUME_MUTED; + vol /= (gdouble) (PA_VOLUME_NORM - PA_VOLUME_MUTED); /* for safety */ - volume = MIN (MAX (volume, 0.0), 1.0); - return volume; + vol = MIN (MAX (vol, 0.0), vol_max); + return vol; } static pa_volume_t -pulseaudio_volume_d2v (gdouble vol) +pulseaudio_volume_d2v (PulseaudioVolume *volume, + gdouble vol) { - gdouble volume; + gdouble pa_volume; + + g_return_val_if_fail (IS_PULSEAUDIO_VOLUME (volume), PA_VOLUME_MUTED); - volume = (PA_VOLUME_NORM - PA_VOLUME_MUTED) * vol; - volume = (pa_volume_t) volume + PA_VOLUME_MUTED; + pa_volume = (PA_VOLUME_NORM - PA_VOLUME_MUTED) * vol; + pa_volume = (pa_volume_t) pa_volume + PA_VOLUME_MUTED; /* for safety */ - volume = MIN (MAX (volume, PA_VOLUME_MUTED), PA_VOLUME_NORM); - return volume; + pa_volume = MIN (MAX (pa_volume, PA_VOLUME_MUTED), PA_VOLUME_MAX); + return pa_volume; } @@ -412,7 +429,7 @@ if (i == NULL) return; //pulseaudio_debug ("*** %s", pa_cvolume_snprint (st, sizeof (st), &i->volume)); - pa_cvolume_set (&i->volume, 1, pulseaudio_volume_d2v (volume->volume)); + pa_cvolume_set (&i->volume, 1, pulseaudio_volume_d2v (volume, volume->volume)); pa_context_set_sink_volume_by_index (context, i->index, &i->volume, pulseaudio_volume_sink_volume_changed, volume); } @@ -435,12 +452,18 @@ pulseaudio_volume_set_volume (PulseaudioVolume *volume, gdouble vol) { + gdouble vol_max; + gdouble vol_trim; + g_return_if_fail (IS_PULSEAUDIO_VOLUME (volume)); g_return_if_fail (pa_context_get_state (volume->pa_context) == PA_CONTEXT_READY); - if (volume->volume != vol) + vol_max = pulseaudio_config_get_volume_max (volume->config) / 100.0; + vol_trim = MIN (MAX (vol, 0.0), vol_max); + + if (volume->volume != vol_trim) { - volume->volume = vol; + volume->volume = vol_trim; pa_context_get_server_info (volume->pa_context, pulseaudio_volume_set_volume_cb1, volume); } } @@ -448,9 +471,14 @@ PulseaudioVolume * -pulseaudio_volume_new (void) +pulseaudio_volume_new (PulseaudioConfig *config) { - PulseaudioVolume *volume = g_object_new (TYPE_PULSEAUDIO_VOLUME, NULL); + PulseaudioVolume *volume; + + g_return_val_if_fail (IS_PULSEAUDIO_CONFIG (config), NULL); + + volume = g_object_new (TYPE_PULSEAUDIO_VOLUME, NULL); + volume->config = config; return volume; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-volume.h new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-volume.h --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/pulseaudio-volume.h 2015-03-04 21:52:09.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/pulseaudio-volume.h 2015-05-03 22:52:14.000000000 +0200 @@ -1,4 +1,4 @@ -/* Copyright (c) 2014 Andrzej <ndrwr...@gmail.com> +/* Copyright (c) 2014-2015 Andrzej <ndrwr...@gmail.com> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -19,6 +19,7 @@ #define __PULSEAUDIO_VOLUME_H__ #include <glib-object.h> +#include "pulseaudio-config.h" G_BEGIN_DECLS @@ -34,7 +35,7 @@ GType pulseaudio_volume_get_type (void) G_GNUC_CONST; -PulseaudioVolume *pulseaudio_volume_new (); +PulseaudioVolume *pulseaudio_volume_new (PulseaudioConfig *config); gdouble pulseaudio_volume_get_volume (PulseaudioVolume *volume); void pulseaudio_volume_set_volume (PulseaudioVolume *volume, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/scalemenuitem.c new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/scalemenuitem.c --- old/xfce4-pulseaudio-plugin-0.2.2/panel-plugin/scalemenuitem.c 2015-03-19 02:06:46.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/panel-plugin/scalemenuitem.c 2015-05-03 22:52:14.000000000 +0200 @@ -402,6 +402,8 @@ gtk_widget_set_size_request (priv->scale, 100, -1); gtk_range_set_inverted (GTK_RANGE(priv->scale), FALSE); gtk_scale_set_draw_value (GTK_SCALE(priv->scale), FALSE); + if (max > 100.0) + gtk_scale_add_mark (GTK_SCALE (priv->scale), 100.0, GTK_POS_BOTTOM, NULL); update_packing (scale_item); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xfce4-pulseaudio-plugin-0.2.2/po/POTFILES.in new/xfce4-pulseaudio-plugin-0.2.3/po/POTFILES.in --- old/xfce4-pulseaudio-plugin-0.2.2/po/POTFILES.in 2015-03-05 22:14:05.000000000 +0100 +++ new/xfce4-pulseaudio-plugin-0.2.3/po/POTFILES.in 2015-05-12 03:21:08.000000000 +0200 @@ -6,3 +6,4 @@ panel-plugin/pulseaudio-button.c panel-plugin/pulseaudio-volume.c panel-plugin/pulseaudio-menu.c +panel-plugin/pulseaudio-notify.c