pidgin-libnotify version from upstream cvs

This commit is contained in:
Cedric Girard 2011-03-15 15:20:19 +01:00
parent 68b7262e9e
commit cd68cebb55
36 changed files with 2777 additions and 0 deletions

View file

@ -0,0 +1,3 @@
Authors
=======
Duarte Henriques <duarte.henriques@gmail.com>

View file

@ -0,0 +1,141 @@
2008-12-14 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: really show option to not show
notifications when absent.
2007-06-30 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c:
* src/pidgin-libnotify.c: rename to pidgin-libnotify.c
2007-06-30 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: fix bug #1657570, don't show multiple
notifications for different accounts of the same contact.
2007-06-30 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c:
* configure.ac:
* Makefile.am:
apply pidgin conversion patch by Colin Guthrie
2007-04-05 Jonh Wendell <wendell@bani.com.br>
* src/gaim-libnotify.c: fix bug #1648831, don't show
notifications when absent, with an option disabled by default.
2006-11-25 Eduardo Perez Ureta <eperez@users.sourceforge.net>
* configure.ac: intl directory is not needed anymore.
* autogen.sh: setup-gettext is deprecated.
* setup-gettext: removed (deprecated)
2006-11-17 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: fix i18n framework and include
headers. Patch by Eduardo Pérez.
2006-10-22 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: re-add features with gaim-2.0.0-beta4 API
support.
2006-09-30 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: comment features out as a workaround for
the new API, real fixes coming soon.
2006-06-22 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: fix bug #1491160, Notification When Buddy
Logs Out, with an option disabled by default.
2006-06-22 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: fix bug #1492483, Empty string on weird
characters by escaping and (as a bonus) truncating the name on the
title.
2006-04-28 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: workaround for libnotify API strangeness:
we have to call notification_show() after an update.
2006-04-11 Steve Frécinaux <steve@istique.net>
* src/gaim-libnotify.c: Let the GtkPixbufLoader detect the image
type by itself (fixes crash).
2006-03-30 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: adapt to gaim-2.0.0-beta3 API.
2006-02-10 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: fix bug truncating string in middle of a
utf-8 character.
2006-02-10 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: use g_object_unref() instead of g_free()
to free the pixbuf_loader, fixes crash (I hope).
2006-02-10 Carl van Tonder <carlishere@hotmail.com>
* src/gaim-libnotify.c: Add preference: blocked - ignore signon
and message events from blocked buddies.
2006-03-02 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: escape messages so that it works when
messages have '<' or '>' characters.
2006-02-27 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: Refactor of icon code, [s|g]et_user_data
converted to gobject_[s|g]et_data. Untested. Icons work again!
2006-02-26 Carl Van Tonder <carlishere@hotmail.com>
* src/gaim-libnotify.c: Add Preferences: newmsg, convonly and
signon.
2005-12-24 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: Update to libnotify 0.3.x and gaim 2.0.0
2005-07-09 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: Add hash_table for buddies, so that the
same handle is used for the same buddy.
2005-07-09 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: Add avatar support with help from Ezequiel
Pérez.
2005-07-09 Duarte Henriques <duarte.henriques@gmail.com>
* configure.ac:
* Makefile.am:
* setup-gettext:
* src/gaim-libnotify.c:
* src/gln-intl.h:
* intl:
* po:
* po/ChangeLog:
Add i18n support to gaim-libnotify, based on patch from Ezequiel
Pérez
* autogen.sh:
Add i18n support, taken from guifications
2005-07-08 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: (notify_cb): Adapted from patch by
Ezequiel Pérez to provide an action callback - opens the
conversation. Thanks Ezequiel!
2005-07-07 Duarte Henriques <duarte.henriques@gmail.com>
* src/gaim-libnotify.c: Adapt to new libnotify API.

View file

@ -0,0 +1,10 @@
EXTRA_DIST = \
VERSION \
VERSION.in \
ChangeLog \
NEWS \
README \
COPYING
SUBDIRS = po src

101
code/pidgin-libnotify/NEWS Normal file
View file

@ -0,0 +1,101 @@
0.14
==
* really add option: don't show notifications when absent
* Updated polish translation (Piotr Drąg)
* Added russian translation (Dmitry Egorkin)
* Added bulgarian translation (Dilyan Palauzov)
* Added german translation (Marc Mikolits)
* Added swedish translation (Jonas Granqvist)
0.13
==
* rename to pidgin-libnotify
* adapt to purple and pidgin API (Colin Guthrie)
* add option: don't show notifications when absent (John Wendell)
* don't show multiple notifications for the same contact (Duarte Henriques)
* Fix include headers and i18n framework (Eduardo Pérez)
* Add slovenian translation (Matic Zgur)
* Add chinese translation (Tao Wei)
* Add romanian translation (Ion Alyn)
* Add galician translation (Ignacio Casal Quinteiro)
* Update italian translation (Marco Cabizza)
0.12
==
* Adapt to gaim-2.0.0-beta4 API
0.11
==
* Add french translation by Ersplus
* Add brazilian portuguese translation by Everson Araujo
* Add option to show notification when a buddy logs out
* Fix bug where buddy names with xml characters were not shown
0.10
==
* Fix crasher with some icons (Steve Frécinaux)
* Workaround/bug fix: messages weren't updated (Duarte Henriques)
0.9
==
* Add polish translation by Krzysztof Rosiński
* Add dutch translation by Raymond Jelierse
* Adapt to gaim-2.0.0beta3 API
* Fix crasher bug caused by blindly splitting utf-8 strings
* There's a problem with icons on libnotify and dbus 0.61, please use dbus 0.60
* The white background of the clock over the yellow background is a problem that lies with notification-daemon on ubuntu
0.8
==
* Fix bug where messages with '<' and '>' didn't appear (Duarte Henriques)
* Add italian translation by Marco Cabizza
* Add preference (on by default) to not show notifications for blocked contacts (Carl van Tonder)
* Fix crasher bug with displaying buddy icons (Duarte Henriques)
0.7
==
* New preferences (Carl van Tonder)
* Icons and actions work again (Duarte Henriques)
0.6
==
* Update to libnotify 0.3.x and gaim 2.0.0
* Icon lost due to libnotify buggyness
0.5
==
* Use same notification for same buddy.
* Add avatar support with help from Ezequiel Pérez.
0.4
==
* Add i18n framework based on patch by Ezequiel Pérez and Guifications code
* Add es translation (Ezequiel Pérez)
* Add pt translation (Duarte Henriques)
0.3
==
Now opens the conversation when the notification is clicked, thanks
to Ezequiel Pérez.
0.2
==
Update to new libnotify API.
0.1
==
Initial release.

View file

@ -0,0 +1,12 @@
pidgin-libnotify
About
=====
pidgin-libnotify provides a libnotify interface to Pidgin
INSTALL
=======
./configure
make
make install

View file

@ -0,0 +1,11 @@
* file bug in libnotify/ubuntu: white background of the clock over the yellow background
DONE:
* file bug in libnotify: icons on libnotify and dbus 0.61 don't work (fixed in new version)
* fix bug in libnotify: Update existing notification doesn't work (was not a bug in libnotify, simply an API strangeness)
* ellipsize body
* ellipsize summary ?
* use the same handle for each buddy, to avoid IM flood
* use buddy avatar if available, fallback to prpl icon
* use icons again
* use hash table again

View file

@ -0,0 +1 @@
0.14

View file

@ -0,0 +1 @@
@VERSION@

View file

@ -0,0 +1,56 @@
#!/bin/sh
(glib-gettextize --version) < /dev/null > /dev/null 2>&1 || {
echo;
echo "You must have gettext installed to compile pidgin-libnotify";
echo;
exit;
}
(libtoolize --version) < /dev/null > /dev/null 2>&1 || {
echo;
echo "You must have libtool installed to compile pidgin-libnotify";
echo;
exit;
}
(automake --version) < /dev/null > /dev/null 2>&1 || {
echo;
echo "You must have automake installed to compile pidgin-libnotify";
echo;
exit;
}
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
echo;
echo "You must have autoconf installed to compile pidgin-libnotify";
echo;
exit;
}
echo "Generating configuration files for pidgin-libnotify, please wait...."
echo;
# Backup po/ChangeLog because gettext likes to change it
cp -p po/ChangeLog po/ChangeLog.save
echo "Running gettextize, please ignore non-fatal messages...."
glib-gettextize --force --copy
#restore pl/ChangeLog
mv po/ChangeLog.save po/ChangeLog
echo "Running libtoolize, please ignore non-fatal messages...."
echo n | libtoolize --copy --force || exit;
echo;
aclocal || exit;
autoheader || exit;
automake --add-missing --copy;
autoconf || exit;
automake || exit;
echo "Running ./configure $@"
echo;
./configure $@

View file

@ -0,0 +1,153 @@
#
# Most of this configure script was ripped from gaim or the
# gaim-encryption configure script, thanks guys ;)
#
AC_INIT([pidgin-libnotify], [0.14], [nothing])
AC_CANONICAL_SYSTEM
AM_CONFIG_HEADER(config.h)
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
AC_PREREQ([2.50])
AC_PATH_PROG(sedpath, sed)
#
# Setup libtool
#
AM_PROG_LIBTOOL
LIBTOOL="$LIBTOOL --silent"
#
# Our header
#
AH_TOP([ /* our header */
#ifndef _KS_CONFIG_H
#define _KS_CONFIG_H
])
AH_BOTTOM([
#endif /* _KS_CONFIG_H */
])
#
# Setup gettext
#
AC_PROG_INTLTOOL
GETTEXT_PACKAGE=pidgin-libnotify
AC_SUBST(GETTEXT_PACKAGE)
ALL_LINGUAS="es fr it nl pl pt pt_BR sl hu zh_CN ro gl ru bg de sv"
AM_GLIB_GNU_GETTEXT
#
# Look for the C compiler
#
CFLAGS_save="$CFLAGS"
AC_PROG_CC
CFLAGS="$CFLAGS_save"
AC_ARG_ENABLE(debug, [ --enable-debug compile with debugging support],,enable_debug=no)
if test "x$enable_debug" = "xyes" ; then
AC_DEFINE(DEBUG, 1, [Define if debugging is enabled.])
fi
AC_ARG_ENABLE(deprecated, [ --disable-deprecated compile without deprecated API usage],,enable_deprecated=yes)
if test "x$enable_deprecated" = no; then
DEBUG_CFLAGS = "$DEBUG_CFLAGS -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"
fi
AC_SUBST(DEBUG_CFLAGS)
if test "x$GCC" = "xyes"; then
CFLAGS="$CFLAGS -Wall -g3"
fi
AC_SUBST(CFLAGS)
#
# Check for libnotify
#
PKG_CHECK_MODULES(LIBNOTIFY, libnotify >= 0.3.2)
AC_SUBST(LIBNOTIFY_CFLAGS)
AC_SUBST(LIBNOTIFY_LIBS)
#
# Check for GTK+
#
PKG_CHECK_MODULES(GTK, gtk+-2.0)
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
#
# Check for libpurple
#
PKG_CHECK_MODULES(LIBPURPLE, purple >= 2.0.0,
[
AC_DEFINE(HAVE_LIBPURPLE, 1, [Define if we've found libpurple.])
])
AC_SUBST(LIBPURPLE_CFLAGS)
LIBPURPLE_LIBDIR=`pkg-config --variable=libdir purple`
LIBPURPLE_DATADIR=`pkg-config --variable=datadir purple`
AC_SUBST(LIBPURPLE_LIBDIR)
AC_SUBST(LIBPURPLE_DATADIR)
#
# Check for pidgin
#
PKG_CHECK_MODULES(PIDGIN, pidgin >= 2.0.0,
[
AC_DEFINE(HAVE_PIDGIN, 1, [Define if we've found pidgin.])
])
AC_SUBST(PIDGIN_CFLAGS)
PIDGIN_LIBDIR=`pkg-config --variable=libdir pidgin`
PIDGIN_DATADIR=`pkg-config --variable=datadir pidgin`
AC_SUBST(PIDGIN_LIBDIR)
AC_SUBST(PIDGIN_DATADIR)
#
# Check if plugins are enabled
#
want_plugins=yes
AM_CONDITIONAL(PLUGINS, test "$want_plugins" = "yes")
#
# Version stuff
#
AC_CONFIG_COMMANDS_PRE([
if test -e VERSION; then
cp -p VERSION VERSION.ac-save
fi
])
AC_CONFIG_COMMANDS_POST([
cmp VERSION VERSION.ac-save || touch -r VERSION.ac-save VERSION
rm -f VERSION.ac-save
])
#
# Finish up
#
AC_OUTPUT([Makefile
VERSION
po/Makefile.in
src/Makefile
])
echo;
echo Configuration complete
echo;
echo Debugging enabled..............: $enable_debug
echo Deprecated API enabled.........: $enable_deprecated
#echo libpurple API..................: $LIBPURPLE_CFLAGS
#echo pidgin API.....................: $PIDGIN_CFLAGS
echo;
echo Type make to compile
echo Thank you for using pidgin-libnotify
echo;

View file

@ -0,0 +1,49 @@
Makefile
po2tbl.sed
ChangeLog
Makefile.in
VERSION
bindtextdom.c
config.charset
dcgettext.c
dcigettext.c
dcngettext.c
dgettext.c
dngettext.c
eval-plural.h
explodename.c
finddomain.c
gettext.c
gettext.h
gettextP.h
gmo.h
hash-string.h
intl-compat.c
l10nflist.c
libgettext.h
libgnuintl.h
loadinfo.h
loadmsgcat.c
localcharset.c
locale.alias
localealias.c
localename.c
ngettext.c
os2compat.c
os2compat.h
osdep.c
plural.y
plural-exp.c
plural-exp.h
ref-add.sin
ref-del.sin
textdomain.c
cat-compat.c
linux-msg.sed
po2tbl.sed.in
xopen-msg.sed
plural.c
charset.alias
libintl.h
ref-add.sed
ref-del.sed

View file

@ -0,0 +1,111 @@
#! /bin/sh
# mkinstalldirs --- make directory hierarchy
# Author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
# Public domain
errstatus=0
dirmode=""
usage="\
Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
# process command line arguments
while test $# -gt 0 ; do
case $1 in
-h | --help | --h*) # -h for help
echo "$usage" 1>&2
exit 0
;;
-m) # -m PERM arg
shift
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
dirmode=$1
shift
;;
--) # stop option processing
shift
break
;;
-*) # unknown option
echo "$usage" 1>&2
exit 1
;;
*) # first non-opt arg
break
;;
esac
done
for file
do
if test -d "$file"; then
shift
else
break
fi
done
case $# in
0) exit 0 ;;
esac
case $dirmode in
'')
if mkdir -p -- . 2>/dev/null; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
fi
;;
*)
if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
fi
;;
esac
for file
do
set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
shift
pathcomp=
for d
do
pathcomp="$pathcomp$d"
case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp"
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
lasterr=""
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
pathcomp="$pathcomp/"
done
done
exit $errstatus
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# End:
# mkinstalldirs ends here

View file

@ -0,0 +1,17 @@
Makefile
Makefile.in
Makefile.in.in
POTFILES
POTFILES.in.missing
POTFILES.in.noi18n
Rules-quot
cat-id-tbl.c
stamp-cat-id
*.gmo
*.mo
*.pot
Makevars
*.sed
*.header
*.sin
ChangeLog.save

View file

@ -0,0 +1,71 @@
2008-12-14 Duarte Henriques <duarte.henriques@gmail.com>
* po/pl.po:
Update polish translation (Piotr Drąg)
* po/ru.po:
Add russian translation (Dmitry Egorkin)
* po/bg.po:
Add bulgarian translation (Dilyan Palauzov)
* po/de.po:
Add german translation (Marc Mikolits)
* po/sv.po:
Add swedish translation (Jonas Granqvist)
2007-06-30 Duarte Henriques <duarte.henriques@gmail.com>
* po/it.po:
Update italian translation (Marco Cabizza)
* po/zh_CN.po:
Add chinese translation (Tao Wei)
* po/ro.po:
Add romanian translation (Ion Alyn)
* po/gl.po:
Add galician translation (Ignacio Casal Quinteiro)
2005-11-17 Duarte Henriques <duarte.henriques@gmail.com>
* po/sl.po: Add slovenian translation by Matic Zgur
2005-06-22 Duarte Henriques <duarte.henriques@gmail.com>
* po/pt_BR.po:
Update brazilian portuguese translation
* po/pt.po:
Update portuguese translation
2005-06-22 Duarte Henriques <duarte.henriques@gmail.com>
* po/pt_BR.po:
Add brazilian portuguese translation (Everson Araujo)
2005-05-03 Duarte Henriques <duarte.henriques@gmail.com>
* po/fr.po:
Add french translation (Ersplus)
2005-04-10 Duarte Henriques <duarte.henriques@gmail.com>
* po/nl.po:
Add dutch translation (Raymond Jelierse)
2005-03-13 Duarte Henriques <duarte.henriques@gmail.com>
* po/pl.po:
Add polish translation (Krzysztof Rosiński)
2005-03-04 Duarte Henriques <duarte.henriques@gmail.com>
* po/it.po:
Add italian translation (Marco Cabizza)
2005-02-27 Duarte Henriques <duarte.henriques@gmail.com>
* po/pt.po:
Update pt translation
2005-07-09 Duarte Henriques <duarte.henriques@gmail.com>
* po/es.po:
Add spanish translation (Ezequiel Pérez)
* po/pt.po:
Add portuguese translation

View file

@ -0,0 +1 @@
src/pidgin-libnotify.c

View file

@ -0,0 +1,72 @@
# Bulgarian (br) translation of pidgin-libnotify
# Copyright (C) 2007 Dilyan Palauzov
# This file is distributed under the same license as the PACKAGE package.
# Dilyan Palauzov <dilyan.palauzov@aegee.org> 2007
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: pidgin-libnotify\n"
"Report-Msgid-Bugs-To: gettext@aegee.org\n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2007-12-29 00:00:00+GMT\n"
"Last-Translator: Dilyan Palauzov <dilyan.palauzov@aegee.org>\n"
"Language-Team: BULGARIAN <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Нови съобщения"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Само нови разговори"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Пренебрегвай съобщения от блокирани потребители"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Приятел се включи"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Приятел се изключи"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Покажи"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s се включи"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s се изключи"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s каза:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Libnotify балони"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Показва балони чрез libnotifz"
#: src/pidgin-libnotify.c:574
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Pidgin-libnotify:\n"
"Показва балони чрез libnotify."

View file

@ -0,0 +1,77 @@
# German (de) translation of pidgin-libnotify.
# Copyright (C) 2008, Marc Mikolits <marco_spam@gmx.at>
#
# This file is distributed under the same license as pidgin-libnotify.
#
msgid ""
msgstr ""
"Project-Id-Version: pidgin-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2008-03-05 18:04+0100\n"
"Last-Translator: Marc Mikolits <marc_spam@gmx.at>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Neue Nachrichten"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Nur neue Unterhaltungen"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Ignoriere Events von blockierten Kontakten"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Kontakt meldet sich an"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Kontakt meldet sich ab"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Zeige"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s hat sich angemeldet"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s hat sich abgemeldet"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s sagt:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "libnotify Popups"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Zeigt Popups via libnotify"
#: src/pidgin-libnotify.c:574
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Pidgin-libnotify:\n"
"Zeigt Popups via libnotify."
#: source location unknown
msgid "Only when available"
msgstr "Nur wenn verfügbar"

View file

@ -0,0 +1,78 @@
# Spanish (es) translation of gaim-libnotify.
# Copyright (C) 2005, Ezequiel Pérez <eazel7@gmail.com>
#
# This file is distributed under the same license as gaim-libnotify.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2005-07-08 12:30-0300\n"
"Last-Translator: Ezequiel Prez <eazel7@gmail.com>\n"
"Language-Team: Spanish <es@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr ""
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr ""
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr ""
#: src/pidgin-libnotify.c:72
#, fuzzy
msgid "Buddy signs on"
msgstr "%s se ha conectado"
#: src/pidgin-libnotify.c:77
#, fuzzy
msgid "Buddy signs off"
msgstr "%s se ha conectado"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Mostrar"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s se ha conectado"
#: src/pidgin-libnotify.c:379
#, fuzzy, c-format
msgid "%s signed off"
msgstr "%s se ha conectado"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s dice:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr ""
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Muestra avisos mediante libnotify."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Muestra avisos mediante libnotify."
#~ msgid "Libnotify Interface"
#~ msgstr "Interfaz con libnotify"

View file

@ -0,0 +1,77 @@
# French (fr) translation of gaim-libnotify.
# Copyright (C) 2005, Ersplus <ersplus@free.fr>
#
# This file is distributed under the same license as gaim-libnotify.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2006-05-03 15:35+0100\n"
"Last-Translator: Ersplus <ersplus@free.fr>\n"
"Language-Team: French <ef@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Nouveau message"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Seulement les nouvelles conversations"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Ignorer les evenements des utilsateurs bloqués"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "L'utilisateur se connecte"
#: src/pidgin-libnotify.c:77
#, fuzzy
msgid "Buddy signs off"
msgstr "L'utilisateur se connecte"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Montrer"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s s'est connecté"
#: src/pidgin-libnotify.c:379
#, fuzzy, c-format
msgid "%s signed off"
msgstr "%s s'est connecté"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s dit :"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Popups Libnotify"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Affiche des popups via libnotify."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Affiche des messages via libnotify."
#~ msgid "Libnotify Interface"
#~ msgstr "Interfaz con libnotify"

View file

@ -0,0 +1,73 @@
# translation of gl.po to Galego
# Copyright (C) 2007
# This file is distributed under the same license as the pidgin-libnotify package.
#
# Ignacio Casal Quinteiro <icq@cvs.gnome.org>, 2007.
msgid ""
msgstr ""
"Project-Id-Version: gl\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2007-05-31 19:32+0200\n"
"Last-Translator: Ignacio Casal Quinteiro <icq@cvs.gnome.org>\n"
"Language-Team: Galego <proxecto@trasno.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Mensaxes novas"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Só novas conversas"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Ignorar eventos de usuarios bloqueados"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Contactos que se conectan"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Contactos que se desconectan"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Mostrar"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s conectouse"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s desconectouse"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s di:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Emerxentes de libnotify"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Mostra emerxentes por medio de libnotify."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Mostra emerxentes por medio de libnotify."

View file

@ -0,0 +1,68 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2006-11-01 18:33+0100\n"
"Last-Translator: Peter Avramucz <muczy@freestart.hu>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Country: HUNGARY\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Új üzenetek"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Csak az új beszélgetéseknél"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Hagyja figyelmen kívűl a blokkolt felhasználókat"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Partner bejelentkezett"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Partner kijelentkezett"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Mutasd"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s bejelentkezett"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s kijelentkezett"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s mondja:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Libnotify buborékok"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Mutassa a buborékokat libnotify segítségével."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Mutassa a buborékokat libnotify segítségével."

View file

@ -0,0 +1,79 @@
# Italian (it) translation of gaim-libnotify.
# Copyright (C) 2006, Marco Cabizza <marco87@gmail.com>
#
# This file is distributed under the same license as gaim-libnotify.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2007-05-25 12:30-0300\n"
"Last-Translator: Marco Cabizza <marco87@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
#, fuzzy
msgid "New messages"
msgstr "Nuovi messaggi"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Solo le nuove finestre"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Ignora gli utenti bloccati"
#: src/pidgin-libnotify.c:72
#, fuzzy
msgid "Buddy signs on"
msgstr "%s entra"
#: src/pidgin-libnotify.c:77
#, fuzzy
msgid "Buddy signs off"
msgstr "%s entra"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Mostra"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s è entrato"
#: src/pidgin-libnotify.c:379
#, fuzzy, c-format
msgid "%s signed off"
msgstr "%s è entrato"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s dice:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Popups di libnotify"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Mostra avvisi mediante libnotify."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Mostra avvisi mediante libnotify."
#~ msgid "Libnotify Interface"
#~ msgstr "Interfaccia libnotify"

View file

@ -0,0 +1,78 @@
# Dutch (nl) translation of gaim-libnotify.
# Copyright (C) 2006, Raymond Jelierse <eagletitan@users.sourceforge.net>
#
# This file is distributed under the same license as gaim-libnotify.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2005-07-08 12:30-0300\n"
"Last-Translator: Raymond Jelierse <eagletitan@users.sourceforge.net>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
#, fuzzy
msgid "New messages"
msgstr "Nieuwe berichten"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Alleen nieuwe gesprekken"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Negeer gebeurtenissen van geblokkeerde gebruikers"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Contactpersoon heeft zich aangemeld"
#: src/pidgin-libnotify.c:77
#, fuzzy
msgid "Buddy signs off"
msgstr "Contactpersoon heeft zich aangemeld"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Toon"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s heeft zich aangemeld"
#: src/pidgin-libnotify.c:379
#, fuzzy, c-format
msgid "%s signed off"
msgstr "%s heeft zich aangemeld"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s zegt:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr ""
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Toons popups via libnotify."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Toont popups via libnotify."
#~ msgid "Libnotify Interface"
#~ msgstr "Libnotify Interface"

View file

@ -0,0 +1,75 @@
# Polish (pl) translation of gaim-libnotify
# Copyright (C) 2006, Krzysztof Rosiński <kr@post.pl>
# This file is distributed under the same license as the gaim-libnotify package.
# Krzysztof Rosiński <kr@post.pl>, 2006.
# Piotr Drąg <raven@pmail.pl>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2006-03-13 19:39+ZONE\n"
"Last-Translator: Piotr Drąg <raven@pmail.pl>\n"
"Language-Team: Polish <pl@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2);\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Nowe wiadomości"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Tylko nowe rozmowy"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Zignoruj zdarzenia od zablokowanych użytkowników"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Znajomy zalogował się"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Znajomy wylogował się"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Wyświetl"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s zalogował się"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s wylogował się"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s napisał:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Powiadomienia libnotify"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Wyświetla powiadomienia przez libnotify."
#: src/pidgin-libnotify.c:574
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Pidgin-libnotify:\n"
"Wyświetla powiadomienia przez libnotify."

View file

@ -0,0 +1,76 @@
# Portuguese (pt) translation of gaim-libnotify.
# Copyright (C) 2005-2006, Duarte Henriques <duarte.henriques@gmail.com>
#
# This file is distributed under the same license as gaim-libnotify.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-12-14 16:31+0000\n"
"PO-Revision-Date: 2006-03-31 15:32+0100\n"
"Last-Translator: Duarte Henriques <duarte.henriques@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Novas mensagens"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Apenas novas conversações"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Ignorar acontecimentos para utilizadores bloqueados"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Contacto liga-se"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Contacto desliga-se"
#: src/pidgin-libnotify.c:82
msgid "Only when available"
msgstr "Apenas quando disponível"
#: src/pidgin-libnotify.c:320
msgid "Show"
msgstr "Mostrar"
#: src/pidgin-libnotify.c:352
#, c-format
msgid "%s signed on"
msgstr "%s ligou-se"
#: src/pidgin-libnotify.c:384
#, c-format
msgid "%s signed off"
msgstr "%s desligou-se"
#: src/pidgin-libnotify.c:411
#, c-format
msgid "%s says:"
msgstr "%s diz:"
#: src/pidgin-libnotify.c:577
msgid "Libnotify Popups"
msgstr "Popups Libnotify"
#: src/pidgin-libnotify.c:578
msgid "Displays popups via libnotify."
msgstr "Mostra popups via libnotify."
#: src/pidgin-libnotify.c:579
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Pidgin-libnotify:\n"
"Mostra popups via libnotify."

View file

@ -0,0 +1,73 @@
# Brazilian Portuguese (pt_BR) translation of gaim-libnotify.
# This file is distributed under the same license as gaim-libnotify.
# Duarte Henriques <duarte.henriques@gmail.com>, 2006.
# Everson Araujo <everson@por.com.br>, 2006.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2006-06-21 19:06-0300\n"
"Last-Translator: Everson -NoBIOS- Santos Araujo <everson@por.com.br>\n"
"Language-Team: Portuguese/Brazil <gnome-l10n-br@listas.cipsga.org.br>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Novas mensagens"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Apenas novas conversações"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Ignorar eventos de usuários bloqueados"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Amigo conecta"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Amigo desconecta"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Mostrar"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s conectou"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s desconectou"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s diz:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Popups Libnotify"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Mostra popups via libnotify."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Mostra popups via libnotify."

View file

@ -0,0 +1,76 @@
# translation of ro.po to
# translation of gaim-libnotify.po to
# Copyright (C) 2007
# This file is distributed under the same license as the pidgin-libnotify package.
#
# Ion Alin <alyn3d@gmail.com>, 2007.
msgid ""
msgstr ""
"Project-Id-Version: ro\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2007-01-25 22:00+0200\n"
"Last-Translator: Ion Alin <alyn3d@gmail.com>\n"
"Language-Team: <ro@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
"20)) ? 1 : 2;\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Mesaje noi"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Numai conversatii noi"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Ignora evenimentele de la utilizatorii blocati"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Userul este online"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Userul este offline"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Arata"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s este online"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s este offline"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s spune:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Pop-up Libnotify"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Arata popup-uri via libnotify."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Arata popup-uri via libnotify."

View file

@ -0,0 +1,75 @@
# Russian (ru) translation of gaim-libnotify.
# Copyright (C) 2007, Dmitry Egorkin <egorkin@gmail.com>
#
# This file is distributed under the same license as gaim-libnotify.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2007-11-29 12:30-0300\n"
"Last-Translator: Dmitry Egorkin <egorkin@gmail.com>\n"
"Language-Team: Russian\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Новые сообщения"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Только для новых собеседников"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Игнорировать заблокированных пользователей"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Пользователь приходит"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Пользователь уходит"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Показать"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s пришёл"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s ушёл"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s пишет:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Показывать всплывающие сообщения"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Показывать новые сообщения всплывающими в трее."
#: src/pidgin-libnotify.c:574
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Pidgin-libnotify:\n"
"Показывать всплывающие сообщения в трее, используя libnotify."
#~ msgid "Libnotify Interface"
#~ msgstr "Настройки libnotify"

View file

@ -0,0 +1,76 @@
# Slovenian (sl) translation of gaim-libnotify.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the gaim-libnotify package.
#
# Matic Žgur <mr.zgur@gmail.com>, 2006.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2006-11-16 18:11+0100\n"
"Last-Translator: Matic Žgur <mr.zgur@gmail.com>\n"
"Language-Team: Slovenian <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
"%100==4 ? 2 : 3);\n"
"X-Poedit-Language: Slovenian\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Nova sporočila"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Samo novi pogovori"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Prezri dogodke pri blokiranih uporabnikih"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Prijatelj se prijavi"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Prijatelj se odjavi"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Prikaži"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s se je prijavil/a"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s se je odjavil/a"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s pravi:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Pojavna okna libnotify"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Prikaže pojavna okna preko libnotify."
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"Prikaže pojavna okna preko libnotify."

View file

@ -0,0 +1,72 @@
# Swedish translation of piding-libnotify, made for version 0.13.
# Copyright (C) 2008
# This file is distributed under the same license as the pidgin-libnotify package.
# Jonas Granqvist <jonas.granqvist@gmail.com>, 2008.
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2008-03-16 21:12+0100\n"
"Last-Translator: Jonas Granqvist <jonas.granqvist@gmail.com>\n"
"Language-Team: swedish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "Nya meddelanden"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "Enbart nya konversationer"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "Ignorera händelser från blockerade användare"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "Kompis ansluter"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "Kompis kopplar från"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "Visa"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s anslöt"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s kopplade från"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s säger:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Libnotify-poppuppfönster"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "Visa poppuppfönster via libnotify"
#: src/pidgin-libnotify.c:574
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Pidgin-libnotify:\n"
"Visa poppuppfönster via libnotify."

View file

@ -0,0 +1,166 @@
#!/usr/bin/perl -w
# GNOME po update utility.
# (C) 2000 The Free Software Foundation
#
# Author(s): Kenneth Christiansen
$VERSION = "1.2.5 beta 2";
$LANG = $ARGV[0];
$PACKAGE = "gaim-libnotify";
if (! $LANG){
print "update.pl: missing file arguments\n";
print "Try `update.pl --help' for more information.\n";
exit;
}
if ($LANG=~/^-(.)*/){
if ("$LANG" eq "--version" || "$LANG" eq "-V"){
print "GNOME PO Updater $VERSION\n";
print "Written by Kenneth Christiansen <kenneth\@gnome.org>, 2000.\n\n";
print "Copyright (C) 2000 Free Software Foundation, Inc.\n";
print "This is free software; see the source for copying conditions. There is NO\n";
print "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n";
exit;
}
elsif ($LANG eq "--help" || "$LANG" eq "-H"){
print "Usage: ./update.pl [OPTIONS] ...LANGCODE\n";
print "Updates pot files and merge them with the translations.\n\n";
print " -V, --version shows the version\n";
print " -H, --help shows this help page\n";
print " -P, --pot only generates the potfile\n";
print " -M, --maintain search for missing files in POTFILES.in\n";
print "\nExamples of use:\n";
print "update.sh --pot just creates a new pot file from the source\n";
print "update.sh da created new pot file and updated the da.po file\n\n";
print "Report bugs to <kenneth\@gnome.org>.\n";
exit;
}
elsif($LANG eq "--pot" || "$LANG" eq "-P"){
print "Building the $PACKAGE.pot ...";
$b="xgettext --default-domain\=$PACKAGE --directory\=\.\."
." --add-comments --keyword\=\_ --keyword\=N\_"
." --files-from\=\.\/POTFILES\.in ";
$b1="test \! -f $PACKAGE\.po \|\| \( rm -f \.\/$PACKAGE\.pot "
."&& mv $PACKAGE\.po \.\/$PACKAGE\.pot \)";
`$b`;
`$b1`;
print "...done\n";
exit;
}
elsif ($LANG eq "--maintain" || "$LANG" eq "-M"){
$a="find ../ -print | egrep '.*\\.(c|y|cc|c++|h|gob)' ";
open(BUF2, "POTFILES.in") || die "update.pl: there's not POTFILES.in!!!\n";
print "Searching for missing _(\" \") entries...\n";
open(BUF1, "$a|");
@buf2 = <BUF2>;
@buf1 = <BUF1>;
if (-s "POTFILES.ignore"){
open FILE, "POTFILES.ignore";
while (<FILE>) {
if ($_=~/^[^#]/o){
push @bup, $_;
}
}
print "POTFILES.ignore found! Ignoring files...\n";
@buf2 = (@bup, @buf2);
}
foreach my $file (@buf1){
open FILE, "<$file";
while (<FILE>) {
if ($_=~/_\(\"/o){
$file = unpack("x3 A*",$file) . "\n";
push @buff1, $file;
last;
}
}
}
@bufff1 = sort (@buff1);
@bufff2 = sort (@buf2);
my %in2;
foreach (@bufff2) {
$in2{$_} = 1;
}
foreach (@bufff1){
if (!exists($in2{$_})){
push @result, $_ }
}
if(@result){
open OUT, ">POTFILES.in.missing";
print OUT @result;
print "\nHere are the results:\n\n", @result, "\n";
print "File POTFILES.in.missing is being placed in directory...\n";
print "Please add the files that should be ignored in POTFILES.ignore\n";
}
else{
print "\nWell, it's all perfect! Congratulation!\n";
}
}
else{
print "update.pl: invalid option -- $LANG\n";
print "Try `update.pl --help' for more information.\n";
}
exit;
}
elsif(-s "$LANG.po"){
print "Building the $PACKAGE.pot ...";
$c="xgettext --default-domain\=$PACKAGE --directory\=\.\."
." --add-comments --keyword\=\_ --keyword\=N\_"
." --files-from\=\.\/POTFILES\.in ";
$c1="test \! -f $PACKAGE\.po \|\| \( rm -f \.\/$PACKAGE\.pot "
."&& mv $PACKAGE\.po \.\/$PACKAGE\.pot \)";
`$c`;
`$c1`;
print "...done";
print "\nNow merging $LANG.po with $PACKAGE.pot, and creating an updated $LANG.po ...\n";
$d="mv $LANG.po $LANG.po.old && msgmerge $LANG.po.old $PACKAGE.pot -o $LANG.po";
$f="msgfmt --statistics $LANG.po";
`$d`;
`$f`;
unlink "messages";
#unlink "$LANG.po.old"; # nao apagar o backup meu idiota!
exit;
}
else{
print "update.pl: sorry $LANG.po does not exist!\n";
print "Try `update.pl --help' for more information.\n";
exit;
}

View file

@ -0,0 +1,76 @@
# Chinese(zh_CN) translation of gaim-libnotify.
# Copyright (C) 2006, Tao WEI <weitao1979@gmail.com>
# This file is distributed under the same license as gaim-libnotify.
#
#
msgid ""
msgstr ""
"Project-Id-Version: gaim-libnotify\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-06-30 19:58+0000\n"
"PO-Revision-Date: 2007-01-03 21:45+0100\n"
"Last-Translator: Tao WEI <weitao1979@gmail.com>\n"
"Language-Team: chinese\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#: src/pidgin-libnotify.c:57
msgid "New messages"
msgstr "新的信息"
#: src/pidgin-libnotify.c:62
msgid "Only new conversations"
msgstr "只有新的对话"
#: src/pidgin-libnotify.c:67
msgid "Ignore events from blocked users"
msgstr "忽略来自屏蔽用户的事件"
#: src/pidgin-libnotify.c:72
msgid "Buddy signs on"
msgstr "好友登入"
#: src/pidgin-libnotify.c:77
msgid "Buddy signs off"
msgstr "好友登出"
#: src/pidgin-libnotify.c:315
msgid "Show"
msgstr "显示"
#: src/pidgin-libnotify.c:347
#, c-format
msgid "%s signed on"
msgstr "%s 登入了"
#: src/pidgin-libnotify.c:379
#, c-format
msgid "%s signed off"
msgstr "%s 登出了"
#: src/pidgin-libnotify.c:406
#, c-format
msgid "%s says:"
msgstr "%s 说:"
#: src/pidgin-libnotify.c:572
msgid "Libnotify Popups"
msgstr "Libnotify 弹出对话框"
#: src/pidgin-libnotify.c:573
msgid "Displays popups via libnotify."
msgstr "通过 libnotify 来显示弹出对话框。"
#: src/pidgin-libnotify.c:574
#, fuzzy
msgid ""
"Pidgin-libnotify:\n"
"Displays popups via libnotify."
msgstr ""
"Gaim-libnotify:\n"
"通过 libnotify 来显示弹出对话框。"
#~ msgid "Libnotify Interface"
#~ msgstr "Libnotify 界面"

View file

@ -0,0 +1,9 @@
.deps
.libs
Makefile
Makefile.in
*.o
*.lo
*.la
*.dll
*.loT

View file

@ -0,0 +1,29 @@
gddir = $(LIBPURPLE_LIBDIR)/purple-2
pidgin_libnotify_la_LDFLAGS = -module -avoid-version
if PLUGINS
gd_LTLIBRARIES = pidgin-libnotify.la
pidgin_libnotify_la_SOURCES = \
pidgin-libnotify.c \
gln_intl.h
pidgin_libnotify_la_LIBADD = $(LIBNOTIFY_LIBS) $(DBUS_LIBS) $(GTK_LIBS)
endif
AM_CPPFLAGS = \
-DLIBDIR=\"$(LIBPURPLE_LIBDIR)/purple-2/\" \
-DDATADIR=\"$(LIBPURPLE_DATADIR)\" \
-DLOCALEDIR=\"$(LIBPURPLE_DATADIR)/locale\" \
$(DEBUG_CFLAGS) \
$(GTK_CFLAGS) \
$(GLIB_CFLAGS) \
$(PIDGIN_CFLAGS) \
$(LIBPURPLE_CFLAGS) \
$(LIBNOTIFY_CFLAGS) \
$(DBUS_CFLAGS) \
$(GTK_CFLAGS)

View file

@ -0,0 +1,43 @@
/*
* Gaim-libnotify - Provides a libnotify interface for Gaim
* Copyright (C) 2005 Duarte Henriques
*
* 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef GLN_INTL_H
#define GLN_INTL_H
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#ifdef ENABLE_NLS
# include <locale.h>
# include <libintl.h>
# define _(x) dgettext(PACKAGE, x)
# ifdef dgettext_noop
# define N_(String) dgettext_noop (PACKAGE, String)
# else
# define N_(String) (String)
# endif
#else
# include <locale.h>
# define N_(String) (String)
# define _(x) (x)
# define ngettext(Singular, Plural, Number) ((Number == 1) ? (Singular) : (Plural))
#endif
#endif

View file

@ -0,0 +1,591 @@
/*
* Pidgin-libnotify - Provides a libnotify interface for Pidgin
* Copyright (C) 2005-2007 Duarte Henriques
*
* 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include "gln_intl.h"
#ifndef PURPLE_PLUGINS
#define PURPLE_PLUGINS
#endif
#include <pidgin.h>
#include <version.h>
#include <debug.h>
#include <util.h>
#include <privacy.h>
/* for pidgin_create_prpl_icon */
#include <gtkutils.h>
#include <libnotify/notify.h>
#include <string.h>
#define PLUGIN_ID "pidgin-libnotify"
static GHashTable *buddy_hash;
static PurplePluginPrefFrame *
get_plugin_pref_frame (PurplePlugin *plugin)
{
PurplePluginPrefFrame *frame;
PurplePluginPref *ppref;
frame = purple_plugin_pref_frame_new ();
ppref = purple_plugin_pref_new_with_name_and_label (
"/plugins/gtk/libnotify/newmsg",
_("New messages"));
purple_plugin_pref_frame_add (frame, ppref);
ppref = purple_plugin_pref_new_with_name_and_label (
"/plugins/gtk/libnotify/newconvonly",
_("Only new conversations"));
purple_plugin_pref_frame_add (frame, ppref);
ppref = purple_plugin_pref_new_with_name_and_label (
"/plugins/gtk/libnotify/blocked",
_("Ignore events from blocked users"));
purple_plugin_pref_frame_add (frame, ppref);
ppref = purple_plugin_pref_new_with_name_and_label (
"/plugins/gtk/libnotify/signon",
_("Buddy signs on"));
purple_plugin_pref_frame_add (frame, ppref);
ppref = purple_plugin_pref_new_with_name_and_label (
"/plugins/gtk/libnotify/signoff",
_("Buddy signs off"));
purple_plugin_pref_frame_add (frame, ppref);
ppref = purple_plugin_pref_new_with_name_and_label (
"/plugins/gtk/libnotify/only_available",
_("Only when available"));
purple_plugin_pref_frame_add (frame, ppref);
return frame;
}
/* Signon flood be gone! - thanks to the guifications devs */
static GList *just_signed_on_accounts = NULL;
static gboolean
event_connection_throttle_cb (gpointer data)
{
PurpleAccount *account;
account = (PurpleAccount *)data;
if (!account)
return FALSE;
if (!purple_account_get_connection (account)) {
just_signed_on_accounts = g_list_remove (just_signed_on_accounts, account);
return FALSE;
}
if (!purple_account_is_connected (account))
return TRUE;
just_signed_on_accounts = g_list_remove (just_signed_on_accounts, account);
return FALSE;
}
static void
event_connection_throttle (PurpleConnection *conn, gpointer data)
{
PurpleAccount *account;
/* TODO: this function gets called after buddy signs on for GTalk
users who have themselves as a buddy */
purple_debug_info (PLUGIN_ID, "event_connection_throttle() called\n");
if (!conn)
return;
account = purple_connection_get_account(conn);
if (!account)
return;
just_signed_on_accounts = g_list_prepend (just_signed_on_accounts, account);
g_timeout_add (5000, event_connection_throttle_cb, (gpointer)account);
}
/* do NOT g_free() the string returned by this function */
static gchar *
best_name (PurpleBuddy *buddy)
{
if (buddy->alias) {
return buddy->alias;
} else if (buddy->server_alias) {
return buddy->server_alias;
} else {
return buddy->name;
}
}
static GdkPixbuf *
pixbuf_from_buddy_icon (PurpleBuddyIcon *buddy_icon)
{
GdkPixbuf *icon;
const guchar *data;
size_t len;
GdkPixbufLoader *loader;
data = purple_buddy_icon_get_data (buddy_icon, &len);
loader = gdk_pixbuf_loader_new ();
gdk_pixbuf_loader_set_size (loader, 48, 48);
gdk_pixbuf_loader_write (loader, data, len, NULL);
gdk_pixbuf_loader_close (loader, NULL);
icon = gdk_pixbuf_loader_get_pixbuf (loader);
if (icon) {
g_object_ref (icon);
}
g_object_unref (loader);
return icon;
}
static void
action_cb (NotifyNotification *notification,
gchar *action, gpointer user_data)
{
PurpleBuddy *buddy = NULL;
PurpleConversation *conv = NULL;
purple_debug_info (PLUGIN_ID, "action_cb(), "
"notification: 0x%x, action: '%s'", notification, action);
buddy = (PurpleBuddy *)g_object_get_data (G_OBJECT(notification), "buddy");
if (!buddy) {
purple_debug_warning (PLUGIN_ID, "Got no buddy!");
return;
}
conv = purple_find_conversation_with_account (PURPLE_CONV_TYPE_ANY, buddy->name, buddy->account);
if (!conv) {
conv = purple_conversation_new (PURPLE_CONV_TYPE_IM,
buddy->account,
buddy->name);
}
conv->ui_ops->present (conv);
notify_notification_close (notification, NULL);
}
static gboolean
closed_cb (NotifyNotification *notification)
{
PurpleContact *contact;
purple_debug_info (PLUGIN_ID, "closed_cb(), notification: 0x%x\n", notification);
contact = (PurpleContact *)g_object_get_data (G_OBJECT(notification), "contact");
if (contact)
g_hash_table_remove (buddy_hash, contact);
g_object_unref (G_OBJECT(notification));
return FALSE;
}
/* you must g_free the returned string
* num_chars is utf-8 characters */
static gchar *
truncate_escape_string (const gchar *str,
int num_chars)
{
gchar *escaped_str;
if (g_utf8_strlen (str, num_chars*2+1) > num_chars) {
gchar *truncated_str;
gchar *str2;
/* allocate number of bytes and not number of utf-8 chars */
str2 = g_malloc ((num_chars-1) * 2 * sizeof(gchar));
g_utf8_strncpy (str2, str, num_chars-2);
truncated_str = g_strdup_printf ("%s..", str2);
escaped_str = g_markup_escape_text (truncated_str, strlen (truncated_str));
g_free (str2);
g_free (truncated_str);
} else {
escaped_str = g_markup_escape_text (str, strlen (str));
}
return escaped_str;
}
static gboolean
should_notify_unavailable (PurpleAccount *account)
{
PurpleStatus *status;
if (!purple_prefs_get_bool ("/plugins/gtk/libnotify/only_available"))
return TRUE;
status = purple_account_get_active_status (account);
return purple_status_is_online (status) && purple_status_is_available (status);
}
static void
notify (const gchar *title,
const gchar *body,
PurpleBuddy *buddy)
{
NotifyNotification *notification = NULL;
GdkPixbuf *icon;
PurpleBuddyIcon *buddy_icon;
gchar *tr_body;
PurpleContact *contact;
contact = purple_buddy_get_contact (buddy);
if (body)
tr_body = truncate_escape_string (body, 60);
else
tr_body = NULL;
notification = g_hash_table_lookup (buddy_hash, contact);
if (notification != NULL) {
notify_notification_update (notification, title, tr_body, NULL);
/* this shouldn't be necessary, file a bug */
notify_notification_show (notification, NULL);
purple_debug_info (PLUGIN_ID, "notify(), update: "
"title: '%s', body: '%s', buddy: '%s'\n",
title, tr_body, best_name (buddy));
g_free (tr_body);
return;
}
notification = notify_notification_new (title, tr_body, NULL, NULL);
purple_debug_info (PLUGIN_ID, "notify(), new: "
"title: '%s', body: '%s', buddy: '%s'\n",
title, tr_body, best_name (buddy));
g_free (tr_body);
buddy_icon = purple_buddy_get_icon (buddy);
if (buddy_icon) {
icon = pixbuf_from_buddy_icon (buddy_icon);
purple_debug_info (PLUGIN_ID, "notify(), has a buddy icon.\n");
} else {
icon = pidgin_create_prpl_icon (buddy->account, 1);
purple_debug_info (PLUGIN_ID, "notify(), has a prpl icon.\n");
}
if (icon) {
notify_notification_set_icon_from_pixbuf (notification, icon);
g_object_unref (icon);
} else {
purple_debug_warning (PLUGIN_ID, "notify(), couldn't find any icon!\n");
}
g_hash_table_insert (buddy_hash, contact, notification);
g_object_set_data (G_OBJECT(notification), "contact", contact);
g_signal_connect (notification, "closed", G_CALLBACK(closed_cb), NULL);
notify_notification_set_urgency (notification, NOTIFY_URGENCY_NORMAL);
notify_notification_add_action (notification, "show", _("Show"), action_cb, NULL, NULL);
if (!notify_notification_show (notification, NULL)) {
purple_debug_error (PLUGIN_ID, "notify(), failed to send notification\n");
}
}
static void
notify_buddy_signon_cb (PurpleBuddy *buddy,
gpointer data)
{
gchar *tr_name, *title;
gboolean blocked;
g_return_if_fail (buddy);
if (!purple_prefs_get_bool ("/plugins/gtk/libnotify/signon"))
return;
if (g_list_find (just_signed_on_accounts, buddy->account))
return;
blocked = purple_prefs_get_bool ("/plugins/gtk/libnotify/blocked");
if (!purple_privacy_check (buddy->account, buddy->name) && blocked)
return;
if (!should_notify_unavailable (purple_buddy_get_account (buddy)))
return;
tr_name = truncate_escape_string (best_name (buddy), 25);
title = g_strdup_printf (_("%s signed on"), tr_name);
notify (title, NULL, buddy);
g_free (tr_name);
g_free (title);
}
static void
notify_buddy_signoff_cb (PurpleBuddy *buddy,
gpointer data)
{
gchar *tr_name, *title;
gboolean blocked;
g_return_if_fail (buddy);
if (!purple_prefs_get_bool ("/plugins/gtk/libnotify/signoff"))
return;
if (g_list_find (just_signed_on_accounts, buddy->account))
return;
blocked = purple_prefs_get_bool ("/plugins/gtk/libnotify/blocked");
if (!purple_privacy_check (buddy->account, buddy->name) && blocked)
return;
if (!should_notify_unavailable (purple_buddy_get_account (buddy)))
return;
tr_name = truncate_escape_string (best_name (buddy), 25);
title = g_strdup_printf (_("%s signed off"), tr_name);
notify (title, NULL, buddy);
g_free (tr_name);
g_free (title);
}
static void
notify_msg_sent (PurpleAccount *account,
const gchar *sender,
const gchar *message)
{
PurpleBuddy *buddy;
gchar *title, *body, *tr_name;
gboolean blocked;
buddy = purple_find_buddy (account, sender);
if (!buddy)
return;
blocked = purple_prefs_get_bool ("/plugins/gtk/libnotify/blocked");
if (!purple_privacy_check(account, sender) && blocked)
return;
tr_name = truncate_escape_string (best_name (buddy), 25);
title = g_strdup_printf (_("%s says:"), tr_name);
body = purple_markup_strip_html (message);
notify (title, body, buddy);
g_free (tr_name);
g_free (title);
g_free (body);
}
static void
notify_new_message_cb (PurpleAccount *account,
const gchar *sender,
const gchar *message,
int flags,
gpointer data)
{
PurpleConversation *conv;
if (!purple_prefs_get_bool ("/plugins/gtk/libnotify/newmsg"))
return;
conv = purple_find_conversation_with_account (PURPLE_CONV_TYPE_IM, sender, account);
#ifndef DEBUG /* in debug mode, always show notifications */
if (conv && purple_conversation_has_focus (conv)) {
purple_debug_info (PLUGIN_ID, "Conversation has focus 0x%x\n", conv);
return;
}
#endif
if (conv && purple_prefs_get_bool ("/plugins/gtk/libnotify/newconvonly")) {
purple_debug_info (PLUGIN_ID, "Conversation is not new 0x%x\n", conv);
return;
}
if (!should_notify_unavailable (account))
return;
notify_msg_sent (account, sender, message);
}
static void
notify_chat_nick (PurpleAccount *account,
const gchar *sender,
const gchar *message,
PurpleConversation *conv,
gpointer data)
{
gchar *nick;
nick = (gchar *)purple_conv_chat_get_nick (PURPLE_CONV_CHAT(conv));
if (nick && !strcmp (sender, nick))
return;
if (!g_strstr_len (message, strlen(message), nick))
return;
notify_msg_sent (account, sender, message);
}
static gboolean
plugin_load (PurplePlugin *plugin)
{
void *conv_handle, *blist_handle, *conn_handle;
if (!notify_is_initted () && !notify_init ("Pidgin")) {
purple_debug_error (PLUGIN_ID, "libnotify not running!\n");
return FALSE;
}
conv_handle = purple_conversations_get_handle ();
blist_handle = purple_blist_get_handle ();
conn_handle = purple_connections_get_handle();
buddy_hash = g_hash_table_new (NULL, NULL);
purple_signal_connect (blist_handle, "buddy-signed-on", plugin,
PURPLE_CALLBACK(notify_buddy_signon_cb), NULL);
purple_signal_connect (blist_handle, "buddy-signed-off", plugin,
PURPLE_CALLBACK(notify_buddy_signoff_cb), NULL);
purple_signal_connect (conv_handle, "received-im-msg", plugin,
PURPLE_CALLBACK(notify_new_message_cb), NULL);
purple_signal_connect (conv_handle, "received-chat-msg", plugin,
PURPLE_CALLBACK(notify_chat_nick), NULL);
/* used just to not display the flood of guifications we'd get */
purple_signal_connect (conn_handle, "signed-on", plugin,
PURPLE_CALLBACK(event_connection_throttle), NULL);
return TRUE;
}
static gboolean
plugin_unload (PurplePlugin *plugin)
{
void *conv_handle, *blist_handle, *conn_handle;
conv_handle = purple_conversations_get_handle ();
blist_handle = purple_blist_get_handle ();
conn_handle = purple_connections_get_handle();
purple_signal_disconnect (blist_handle, "buddy-signed-on", plugin,
PURPLE_CALLBACK(notify_buddy_signon_cb));
purple_signal_disconnect (blist_handle, "buddy-signed-off", plugin,
PURPLE_CALLBACK(notify_buddy_signoff_cb));
purple_signal_disconnect (conv_handle, "received-im-msg", plugin,
PURPLE_CALLBACK(notify_new_message_cb));
purple_signal_disconnect (conv_handle, "received-chat-msg", plugin,
PURPLE_CALLBACK(notify_chat_nick));
purple_signal_disconnect (conn_handle, "signed-on", plugin,
PURPLE_CALLBACK(event_connection_throttle));
g_hash_table_destroy (buddy_hash);
notify_uninit ();
return TRUE;
}
static PurplePluginUiInfo prefs_info = {
get_plugin_pref_frame,
0, /* page num (Reserved) */
NULL /* frame (Reserved) */
};
static PurplePluginInfo info = {
PURPLE_PLUGIN_MAGIC, /* api version */
PURPLE_MAJOR_VERSION,
PURPLE_MINOR_VERSION,
PURPLE_PLUGIN_STANDARD, /* type */
0, /* ui requirement */
0, /* flags */
NULL, /* dependencies */
PURPLE_PRIORITY_DEFAULT, /* priority */
PLUGIN_ID, /* id */
NULL, /* name */
VERSION, /* version */
NULL, /* summary */
NULL, /* description */
"Duarte Henriques <duarte.henriques@gmail.com>", /* author */
"http://sourceforge.net/projects/gaim-libnotify/", /* homepage */
plugin_load, /* load */
plugin_unload, /* unload */
NULL, /* destroy */
NULL, /* ui info */
NULL, /* extra info */
&prefs_info /* prefs info */
};
static void
init_plugin (PurplePlugin *plugin)
{
bindtextdomain (PACKAGE, LOCALEDIR);
bind_textdomain_codeset (PACKAGE, "UTF-8");
info.name = _("Libnotify Popups");
info.summary = _("Displays popups via libnotify.");
info.description = _("Pidgin-libnotify:\nDisplays popups via libnotify.");
purple_prefs_add_none ("/plugins/gtk/libnotify");
purple_prefs_add_bool ("/plugins/gtk/libnotify/newmsg", TRUE);
purple_prefs_add_bool ("/plugins/gtk/libnotify/blocked", TRUE);
purple_prefs_add_bool ("/plugins/gtk/libnotify/newconvonly", FALSE);
purple_prefs_add_bool ("/plugins/gtk/libnotify/signon", TRUE);
purple_prefs_add_bool ("/plugins/gtk/libnotify/signoff", FALSE);
purple_prefs_add_bool ("/plugins/gtk/libnotify/only_available", FALSE);
}
PURPLE_INIT_PLUGIN(notify, init_plugin, info)