libraries/libido3: Added (Indicator Display Objects).

Signed-off-by: David Spencer <idlemoor@slackbuilds.org>
This commit is contained in:
David Woodfall 2017-10-24 00:09:13 +01:00 committed by Willy Sudiarto Raharjo
parent b7c53cd84f
commit e3c5a7e4f6
6 changed files with 244 additions and 0 deletions

View File

@ -0,0 +1,34 @@
From 9e672e82e01f0bbe11869a4b67bd0a26c9494c50 Mon Sep 17 00:00:00 2001
From: Xiao-Long Chen <chenxiaolong@cxl.epac.to>
Date: Wed, 29 Oct 2014 00:36:15 -0400
Subject: [PATCH] Temporarily disable previous-button drop-shadow drawing
When indicator-sound is connected to a media player through mpris,
a bug in either cairo or ido causes unity-panel-service to segfault
---
src/idoplaybackmenuitem.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/idoplaybackmenuitem.c b/src/idoplaybackmenuitem.c
index 11af9bb..5fb66da 100644
--- a/src/idoplaybackmenuitem.c
+++ b/src/idoplaybackmenuitem.c
@@ -1443,6 +1443,7 @@ ido_playback_menu_item_draw (GtkWidget* button, cairo_t *cr)
MIDDLE_END);
}
+#if 0
// draw previous-button drop-shadow
if ((item->cur_pushed_button == BUTTON_PREVIOUS && item->keyboard_activated) ||
item->cur_hover_button == BUTTON_PREVIOUS)
@@ -1485,6 +1486,7 @@ ido_playback_menu_item_draw (GtkWidget* button, cairo_t *cr)
_surface_blur (surf, 1);
_finalize (cr, &cr_surf, &surf, abs_prev_x, PREV_Y + 1.0f);
}
+#endif
// draw previous-button
_setup (&cr_surf, &surf, PREV_WIDTH, PREV_HEIGHT);
--
2.1.2

1
libraries/libido3/README Normal file
View File

@ -0,0 +1 @@
Widgets and other objects used for indicators.

View File

@ -0,0 +1,69 @@
--- a/configure.ac
+++ b/configure.ac
@@ -140,6 +140,16 @@ dnl = GTK Doc Check ====================
GTK_DOC_CHECK([1.8])
+dnl = GTK+ Ubuntu Private API =================================================
+
+AC_ARG_ENABLE([ubuntu-private-api],
+ [AS_HELP_STRING([--enable-ubuntu-private-api=@<:@no/yes@:>@],
+ [Use Ubuntu GTK+ Private API @<:@default=yes@:>@])],
+ [enable_ubuntu_private_api="$enableval"],
+ [enable_ubuntu_private_api=yes])
+
+AM_CONDITIONAL([USE_UBUNTU_PRIVATE_API], [test "x$enable_ubuntu_private_api" != xno])
+
dnl ===========================================================================
AC_CONFIG_FILES([
@@ -160,6 +170,7 @@ echo ""
echo " Prefix : ${prefix}"
echo " gcov : ${use_gcov}"
echo " introspection: ${enable_introspection}"
+echo " ubuntu gtk+ : ${enable_ubuntu_private_api}"
echo ""
echo " Documentation: ${enable_gtk_doc}"
echo ""
--- a/src/idomenuitemfactory.c
+++ b/src/idomenuitemfactory.c
@@ -17,6 +17,7 @@
* Lars Uebernickel <lars.uebernickel@canonical.com>
*/
+#ifdef USE_UBUNTU_PRIVATE_API
#include <gtk/gtk.h>
#include <gtk/ubuntu-private.h>
@@ -117,3 +118,4 @@ static void
ido_menu_item_factory_init (IdoMenuItemFactory *factory)
{
}
+#endif
--- a/src/libido.c
+++ b/src/libido.c
@@ -28,9 +28,11 @@
void
ido_init (void)
{
+#ifdef USE_UBUNTU_PRIVATE_API
GType ido_menu_item_factory_get_type (void);
/* make sure this extension point is registered so that gtk calls it
* when finding custom menu items */
g_type_ensure (ido_menu_item_factory_get_type ());
+#endif
}
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -68,6 +68,10 @@ AM_CPPFLAGS = \
$(MAINTAINER_CFLAGS) \
-Wall -Werror -Wextra -Wno-unused-parameter -Wno-error=deprecated-declarations
+if USE_UBUNTU_PRIVATE_API
+AM_CPPFLAGS += -DUSE_UBUNTU_PRIVATE_API
+endif
+
AM_CFLAGS = \
$(COVERAGE_CFLAGS)

View File

@ -0,0 +1,111 @@
#!/bin/sh
# Slackware build script for libido3
# Copyright 2017 David Woodfall <dave@dawoodfall.net>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=libido3
VERSION=${VERSION:-16.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# This is from Arch
patch -p1 --verbose \
<$CWD/0001-Temporarily-disable-previous-button-drop-shadow-draw.patch
# We want to disable the gtk-ubuntu stuff
# Pinched from Manjaro
patch -p1 --verbose < $CWD/ido-optional-ubuntu-private.patch
./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--infodir=/usr/info \
--disable-static \
--disable-gtk-doc \
--enable-ubuntu-private-api=no \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make
make install DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
AUTHORS COPYING COPYING.LGPL.2.1 ChangeLog INSTALL NEWS README TODO \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

View File

@ -0,0 +1,10 @@
PRGNAM="libido3"
VERSION="16.10"
HOMEPAGE="https://launchpad.net/ido"
DOWNLOAD="http://unrealize.co.uk/source/libido3-16.10.tar.gz"
MD5SUM="0f834f81ef5aed1a2468aff335ff497e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gnome-common vala"
MAINTAINER="David Woodfall"
EMAIL="dave@dawoodfall.net"

View File

@ -0,0 +1,19 @@
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
libido3: libido3 (Indicator Display Objects)
libido3:
libido3: Widgets and other objects used for indicators.
libido3:
libido3: https://launchpad.net/ido
libido3:
libido3:
libido3:
libido3:
libido3:
libido3: