aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Claessens <xclaesse@gmail.com>2007-07-01 05:12:20 +0800
committerXavier Claessens <xclaesse@src.gnome.org>2007-07-01 05:12:20 +0800
commit63bc73ed30d97c8ecfb1be4bc19c3e30e9aaddf2 (patch)
tree569b475dff544ef4e2b6f75ac86dc196f600167a
parent7746736afa656f880933e3f5a9effaba490be65a (diff)
downloadgsoc2013-empathy-63bc73ed30d97c8ecfb1be4bc19c3e30e9aaddf2.tar
gsoc2013-empathy-63bc73ed30d97c8ecfb1be4bc19c3e30e9aaddf2.tar.gz
gsoc2013-empathy-63bc73ed30d97c8ecfb1be4bc19c3e30e9aaddf2.tar.bz2
gsoc2013-empathy-63bc73ed30d97c8ecfb1be4bc19c3e30e9aaddf2.tar.lz
gsoc2013-empathy-63bc73ed30d97c8ecfb1be4bc19c3e30e9aaddf2.tar.xz
gsoc2013-empathy-63bc73ed30d97c8ecfb1be4bc19c3e30e9aaddf2.tar.zst
gsoc2013-empathy-63bc73ed30d97c8ecfb1be4bc19c3e30e9aaddf2.zip
Fix a leaked ref.
2007-06-30 Xavier Claessens <xclaesse@gmail.com> * libempathy-gtk/empathy-account-widget-generic.c: Fix a leaked ref. * src/empathy.c: If we get a chatroom we have to create an EmpathyTpChatroom object. * src/Makefile.am: Fix build system, programs links to libempathy-gtk and libempathy. * configure.ac: libempathy does not depends on libgnome-vfs. * libempathy-gtk/empathy-status-icon.c: * libempathy-gtk/empathy-chat.c: * libempathy/empathy-tp-chat.c: * libempathy/empathy-tp-chat.h: * libempathy/empathy-filter.c: * libempathy/empathy-filter.h: * libempathy/empathy-filter.xml: * libempathy/Makefile.am: Filter incoming text channels and make status icon flash when there we receive a new message. Dispatch the channel only when we get a message and the user click on the icon. svn path=/trunk/; revision=175
-rw-r--r--ChangeLog23
-rw-r--r--configure.ac1
-rw-r--r--libempathy-gtk/empathy-account-widget-generic.c2
-rw-r--r--libempathy-gtk/empathy-chat.c16
-rw-r--r--libempathy-gtk/empathy-group-chat.c37
-rw-r--r--libempathy-gtk/empathy-private-chat.c19
-rw-r--r--libempathy-gtk/empathy-status-icon.c99
-rw-r--r--libempathy/Makefile.am6
-rw-r--r--libempathy/empathy-filter.c232
-rw-r--r--libempathy/empathy-filter.h63
-rw-r--r--libempathy/empathy-filter.xml18
-rw-r--r--libempathy/empathy-tp-chat.c272
-rw-r--r--libempathy/empathy-tp-chat.h10
-rw-r--r--po/ChangeLog4
-rw-r--r--po/pl.po865
-rw-r--r--src/Makefile.am3
-rw-r--r--src/empathy.c7
17 files changed, 1095 insertions, 582 deletions
diff --git a/ChangeLog b/ChangeLog
index a17214689..2ca348e57 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,26 @@
+2007-06-30 Xavier Claessens <xclaesse@gmail.com>
+
+ * libempathy-gtk/empathy-account-widget-generic.c: Fix a leaked ref.
+
+ * src/empathy.c: If we get a chatroom we have to create an
+ EmpathyTpChatroom object.
+
+ * src/Makefile.am: Fix build system, programs links to libempathy-gtk
+ and libempathy.
+
+ * configure.ac: libempathy does not depends on libgnome-vfs.
+
+ * libempathy-gtk/empathy-status-icon.c:
+ * libempathy-gtk/empathy-chat.c:
+ * libempathy/empathy-tp-chat.c:
+ * libempathy/empathy-tp-chat.h:
+ * libempathy/empathy-filter.c:
+ * libempathy/empathy-filter.h:
+ * libempathy/empathy-filter.xml:
+ * libempathy/Makefile.am: Filter incoming text channels and make
+ status icon flash when there we receive a new message. Dispatch the
+ channel only when we get a message and the user click on the icon.
+
2007-06-22 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/libempathy-gtk.pc.in:
diff --git a/configure.ac b/configure.ac
index 22fce88dd..2920aa236 100644
--- a/configure.ac
+++ b/configure.ac
@@ -56,7 +56,6 @@ PKG_CHECK_MODULES(LIBEMPATHY,
gobject-2.0
gconf-2.0 >= $GCONF_REQUIRED
libxml-2.0
- gnome-vfs-2.0
libtelepathy >= $TELEPATHY_REQUIRED
libmissioncontrol >= $MISSION_CONTROL_REQUIRED
])
diff --git a/libempathy-gtk/empathy-account-widget-generic.c b/libempathy-gtk/empathy-account-widget-generic.c
index 4f9ea03b0..73b579a55 100644
--- a/libempathy-gtk/empathy-account-widget-generic.c
+++ b/libempathy-gtk/empathy-account-widget-generic.c
@@ -258,6 +258,8 @@ accounts_widget_generic_setup (EmpathyAccountWidgetGeneric *settings)
settings);
g_slist_free (params);
+ g_object_unref (profile);
+ g_object_unref (protocol);
}
static void
diff --git a/libempathy-gtk/empathy-chat.c b/libempathy-gtk/empathy-chat.c
index 0000e5d5a..8f6ca3705 100644
--- a/libempathy-gtk/empathy-chat.c
+++ b/libempathy-gtk/empathy-chat.c
@@ -392,7 +392,7 @@ chat_input_text_view_send (EmpathyChat *chat)
}
static void
-chat_message_received_cb (EmpathyTpChat *tp_chat,
+chat_message_received_cb (EmpathyTpChat *tp_chat,
EmpathyMessage *message,
EmpathyChat *chat)
{
@@ -1288,10 +1288,11 @@ empathy_chat_load_geometry (EmpathyChat *chat,
}
void
-empathy_chat_set_tp_chat (EmpathyChat *chat,
- EmpathyTpChat *tp_chat)
+empathy_chat_set_tp_chat (EmpathyChat *chat,
+ EmpathyTpChat *tp_chat)
{
EmpathyChatPriv *priv;
+ GList *messages, *l;
g_return_if_fail (EMPATHY_IS_CHAT (chat));
g_return_if_fail (EMPATHY_IS_TP_CHAT (tp_chat));
@@ -1332,7 +1333,14 @@ empathy_chat_set_tp_chat (EmpathyChat *chat,
G_CALLBACK (chat_destroy_cb),
chat);
- empathy_tp_chat_request_pending (tp_chat);
+ /* Get pending messages */
+ empathy_tp_chat_set_acknowledge (tp_chat, TRUE);
+ messages = empathy_tp_chat_get_pendings (tp_chat);
+ for (l = messages; l; l = l->next) {
+ chat_message_received_cb (tp_chat, l->data, chat);
+ g_object_unref (l->data);
+ }
+ g_list_free (messages);
if (!priv->sensitive) {
gtk_widget_set_sensitive (chat->input_text_view, TRUE);
diff --git a/libempathy-gtk/empathy-group-chat.c b/libempathy-gtk/empathy-group-chat.c
index 623547d9b..6861dd5cd 100644
--- a/libempathy-gtk/empathy-group-chat.c
+++ b/libempathy-gtk/empathy-group-chat.c
@@ -75,39 +75,36 @@ struct _EmpathyGroupChatPriv {
};
static void group_chat_finalize (GObject *object);
-static void group_chat_create_ui (EmpathyGroupChat *chat);
+static void group_chat_create_ui (EmpathyGroupChat *chat);
static void group_chat_widget_destroy_cb (GtkWidget *widget,
- EmpathyGroupChat *chat);
+ EmpathyGroupChat *chat);
static void group_chat_contact_added_cb (EmpathyTpChatroom *tp_chat,
- EmpathyContact *contact,
- EmpathyGroupChat *chat);
+ EmpathyContact *contact,
+ EmpathyGroupChat *chat);
static void group_chat_contact_removed_cb (EmpathyTpChatroom *tp_chat,
- EmpathyContact *contact,
- EmpathyGroupChat *chat);
-/*static void group_chat_topic_changed_cb (EmpathyTpChatroom *tp_chat,
- const gchar *new_topic,
- EmpathyGroupChat *chat);*/
+ EmpathyContact *contact,
+ EmpathyGroupChat *chat);
static void group_chat_topic_entry_activate_cb (GtkWidget *entry,
GtkDialog *dialog);
static void group_chat_topic_response_cb (GtkWidget *dialog,
gint response,
- EmpathyGroupChat *chat);
-static const gchar * group_chat_get_name (EmpathyChat *chat);
-static gchar * group_chat_get_tooltip (EmpathyChat *chat);
-static const gchar * group_chat_get_status_icon_name (EmpathyChat *chat);
-static GtkWidget * group_chat_get_widget (EmpathyChat *chat);
-static gboolean group_chat_is_group_chat (EmpathyChat *chat);
-static void group_chat_set_tp_chat (EmpathyChat *chat,
+ EmpathyGroupChat *chat);
+static const gchar * group_chat_get_name (EmpathyChat *chat);
+static gchar * group_chat_get_tooltip (EmpathyChat *chat);
+static const gchar * group_chat_get_status_icon_name (EmpathyChat *chat);
+static GtkWidget * group_chat_get_widget (EmpathyChat *chat);
+static gboolean group_chat_is_group_chat (EmpathyChat *chat);
+static void group_chat_set_tp_chat (EmpathyChat *chat,
EmpathyTpChat *tp_chat);
static void group_chat_subject_notify_cb (EmpathyTpChat *tp_chat,
GParamSpec *param,
- EmpathyGroupChat *chat);
+ EmpathyGroupChat *chat);
static void group_chat_name_notify_cb (EmpathyTpChat *tp_chat,
GParamSpec *param,
- EmpathyGroupChat *chat);
+ EmpathyGroupChat *chat);
/*static gboolean group_chat_key_press_event (GtkWidget *widget,
GdkEventKey *event,
- EmpathyGroupChat *chat);*/
+ EmpathyGroupChat *chat);*/
static gint group_chat_contacts_completion_func (const gchar *s1,
const gchar *s2,
gsize n);
@@ -173,7 +170,7 @@ group_chat_finalize (GObject *object)
EmpathyGroupChat *
empathy_group_chat_new (McAccount *account,
- TpChan *tp_chan)
+ TpChan *tp_chan)
{
EmpathyGroupChat *chat;
EmpathyGroupChatPriv *priv;
diff --git a/libempathy-gtk/empathy-private-chat.c b/libempathy-gtk/empathy-private-chat.c
index ddc0633e4..81f93c021 100644
--- a/libempathy-gtk/empathy-private-chat.c
+++ b/libempathy-gtk/empathy-private-chat.c
@@ -37,7 +37,6 @@
#include <libempathy/empathy-tp-chat.h>
#include <libempathy/empathy-tp-contact-list.h>
#include <libempathy/empathy-contact-manager.h>
-//#include <libempathy/empathy-log.h>
#include "empathy-private-chat.h"
#include "empathy-chat-view.h"
@@ -53,12 +52,10 @@
struct _EmpathyPrivateChatPriv {
EmpathyContact *contact;
- gchar *name;
-
- gboolean is_online;
-
- GtkWidget *widget;
- GtkWidget *text_view_sw;
+ gchar *name;
+ gboolean is_online;
+ GtkWidget *widget;
+ GtkWidget *text_view_sw;
};
static void empathy_private_chat_class_init (EmpathyPrivateChatClass *klass);
@@ -328,13 +325,13 @@ private_chat_setup (EmpathyPrivateChat *chat,
EmpathyPrivateChat *
empathy_private_chat_new (McAccount *account,
- TpChan *tp_chan)
+ TpChan *tp_chan)
{
- EmpathyPrivateChat *chat;
+ EmpathyPrivateChat *chat;
EmpathyTpChat *tp_chat;
EmpathyContactManager *manager;
EmpathyTpContactList *list;
- EmpathyContact *contact;
+ EmpathyContact *contact;
g_return_val_if_fail (MC_IS_ACCOUNT (account), NULL);
g_return_val_if_fail (TELEPATHY_IS_CHAN (tp_chan), NULL);
@@ -359,7 +356,7 @@ EmpathyPrivateChat *
empathy_private_chat_new_with_contact (EmpathyContact *contact)
{
EmpathyPrivateChat *chat;
- EmpathyTpChat *tp_chat;
+ EmpathyTpChat *tp_chat;
g_return_val_if_fail (EMPATHY_IS_CONTACT (contact), NULL);
diff --git a/libempathy-gtk/empathy-status-icon.c b/libempathy-gtk/empathy-status-icon.c
index b9c1af790..6ec17ecc0 100644
--- a/libempathy-gtk/empathy-status-icon.c
+++ b/libempathy-gtk/empathy-status-icon.c
@@ -33,10 +33,12 @@
#include <libempathy/empathy-contact-list.h>
#include <libempathy/empathy-contact-manager.h>
#include <libempathy/empathy-contact.h>
+#include <libempathy/empathy-tp-chat.h>
#include <libempathy/empathy-debug.h>
#include <libempathy/empathy-utils.h>
#include <libempathy/empathy-conf.h>
#include <libempathy/empathy-idle.h>
+#include <libempathy/empathy-filter.h>
#include "empathy-status-icon.h"
#include "empathy-contact-dialogs.h"
@@ -44,6 +46,7 @@
#include "empathy-preferences.h"
#include "empathy-ui-utils.h"
#include "empathy-accounts-dialog.h"
+#include "empathy-images.h"
#define GET_PRIV(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), \
@@ -59,9 +62,11 @@ typedef struct _StatusIconEvent StatusIconEvent;
struct _EmpathyStatusIconPriv {
GtkStatusIcon *icon;
EmpathyContactManager *manager;
+ EmpathyFilter *text_filter;
EmpathyIdle *idle;
+ MissionControl *mc;
GList *events;
- GList *current_event;
+ gboolean showing_event_icon;
StatusIconEvent *flash_state_event;
guint blink_timeout;
@@ -85,6 +90,10 @@ struct _StatusIconEvent {
static void empathy_status_icon_class_init (EmpathyStatusIconClass *klass);
static void empathy_status_icon_init (EmpathyStatusIcon *icon);
static void status_icon_finalize (GObject *object);
+static void status_icon_filter_new_channel (EmpathyFilter *filter,
+ TpConn *tp_conn,
+ TpChan *tp_chan,
+ EmpathyStatusIcon *icon);
static void status_icon_idle_notify_cb (EmpathyStatusIcon *icon);
static void status_icon_update_tooltip (EmpathyStatusIcon *icon);
static void status_icon_set_from_state (EmpathyStatusIcon *icon);
@@ -111,6 +120,7 @@ static void status_icon_local_pending_cb (EmpathyContactManager *manag
EmpathyStatusIcon *icon);
static void status_icon_event_subscribe_cb (StatusIconEvent *event);
static void status_icon_event_flash_state_cb (StatusIconEvent *event);
+static void status_icon_event_msg_cb (StatusIconEvent *event);
static StatusIconEvent * status_icon_event_new (EmpathyStatusIcon *icon,
const gchar *icon_name,
const gchar *message);
@@ -142,10 +152,19 @@ empathy_status_icon_init (EmpathyStatusIcon *icon)
priv->icon = gtk_status_icon_new ();
priv->idle = empathy_idle_new ();
priv->manager = empathy_contact_manager_new ();
+ priv->mc = empathy_mission_control_new ();
+ priv->text_filter = empathy_filter_new ("org.gnome.Empathy.Chat",
+ "/org/freedesktop/Telepathy/Filter",
+ TP_IFACE_CHANNEL_TYPE_TEXT,
+ MC_FILTER_PRIORITY_DIALOG,
+ MC_FILTER_FLAG_INCOMING);
status_icon_create_menu (icon);
status_icon_idle_notify_cb (icon);
+ g_signal_connect (priv->text_filter, "new-channel",
+ G_CALLBACK (status_icon_filter_new_channel),
+ icon);
g_signal_connect_swapped (priv->idle, "notify",
G_CALLBACK (status_icon_idle_notify_cb),
icon);
@@ -190,6 +209,7 @@ status_icon_finalize (GObject *object)
g_object_unref (priv->window);
g_object_unref (priv->idle);
g_object_unref (priv->manager);
+ g_object_unref (priv->mc);
}
EmpathyStatusIcon *
@@ -224,6 +244,51 @@ empathy_status_icon_new (GtkWindow *window)
}
static void
+status_icon_filter_new_channel (EmpathyFilter *filter,
+ TpConn *tp_conn,
+ TpChan *tp_chan,
+ EmpathyStatusIcon *icon)
+{
+ EmpathyStatusIconPriv *priv;
+ McAccount *account;
+ EmpathyTpChat *tp_chat;
+ EmpathyContact *sender;
+ GList *messages;
+ gchar *msg;
+ StatusIconEvent *event;
+
+ priv = GET_PRIV (icon);
+
+ empathy_debug (DEBUG_DOMAIN, "New text channel to be filtered");
+
+ account = mission_control_get_account_for_connection (priv->mc, tp_conn, NULL);
+ tp_chat = empathy_tp_chat_new (account, tp_chan);
+ g_object_unref (account);
+
+ messages = empathy_tp_chat_get_pendings (tp_chat);
+ if (!messages) {
+ empathy_debug (DEBUG_DOMAIN, "There is no message pending, "
+ "don't dispatch the channel");
+ empathy_filter_process (filter, tp_chan, FALSE);
+ g_object_unref (tp_chat);
+ return;
+ }
+
+ sender = empathy_message_get_sender (messages->data);
+ msg = g_strdup_printf (_("New message from %s:\n%s"),
+ empathy_contact_get_name (sender),
+ empathy_message_get_body (messages->data));
+
+ g_object_set_data (G_OBJECT (tp_chat), "filter", filter);
+ event = status_icon_event_new (icon, EMPATHY_IMAGE_NEW_MESSAGE, msg);
+ event->func = status_icon_event_msg_cb;
+ event->user_data = tp_chat;
+
+ g_list_foreach (messages, (GFunc) g_object_unref, NULL);
+ g_list_free (messages);
+}
+
+static void
status_icon_idle_notify_cb (EmpathyStatusIcon *icon)
{
EmpathyStatusIconPriv *priv;
@@ -241,7 +306,6 @@ status_icon_idle_notify_cb (EmpathyStatusIcon *icon)
priv->flash_state_event = status_icon_event_new (icon, icon_name, NULL);
priv->flash_state_event->user_data = icon;
priv->flash_state_event->func = status_icon_event_flash_state_cb;
-
} else {
/* We are still flashing but with another state */
g_free (priv->flash_state_event->icon_name);
@@ -254,7 +318,7 @@ status_icon_idle_notify_cb (EmpathyStatusIcon *icon)
priv->flash_state_event = NULL;
}
- if (!priv->current_event) {
+ if (!priv->showing_event_icon) {
status_icon_set_from_state (icon);
}
@@ -498,6 +562,21 @@ status_icon_event_flash_state_cb (StatusIconEvent *event)
empathy_idle_set_flash_state (priv->idle, MC_PRESENCE_UNSET);
}
+static void
+status_icon_event_msg_cb (StatusIconEvent *event)
+{
+ EmpathyFilter *filter;
+ EmpathyTpChat *tp_chat;
+
+ empathy_debug (DEBUG_DOMAIN, "Dispatching text channel");
+
+ tp_chat = event->user_data;
+ filter = g_object_get_data (G_OBJECT (tp_chat), "filter");
+ empathy_filter_process (filter,
+ empathy_tp_chat_get_channel (tp_chat),
+ TRUE);
+ g_object_unref (tp_chat);
+}
static StatusIconEvent *
status_icon_event_new (EmpathyStatusIcon *icon,
@@ -515,7 +594,7 @@ status_icon_event_new (EmpathyStatusIcon *icon,
priv->events = g_list_append (priv->events, event);
if (!priv->blink_timeout) {
- priv->current_event = NULL;
+ priv->showing_event_icon = FALSE;
priv->blink_timeout = g_timeout_add (BLINK_TIMEOUT,
(GSourceFunc) status_icon_event_timeout_cb,
icon);
@@ -538,7 +617,7 @@ status_icon_event_remove (EmpathyStatusIcon *icon,
}
priv->events = g_list_remove (priv->events, event);
status_icon_event_free (event);
- priv->current_event = NULL;
+ priv->showing_event_icon = FALSE;
status_icon_update_tooltip (icon);
status_icon_set_from_state (icon);
@@ -559,18 +638,14 @@ status_icon_event_timeout_cb (EmpathyStatusIcon *icon)
priv = GET_PRIV (icon);
- if (priv->current_event) {
- priv->current_event = priv->current_event->next;
- } else {
- priv->current_event = priv->events;
- }
+ priv->showing_event_icon = !priv->showing_event_icon;
- if (!priv->current_event) {
+ if (!priv->showing_event_icon) {
status_icon_set_from_state (icon);
} else {
StatusIconEvent *event;
- event = priv->current_event->data;
+ event = priv->events->data;
gtk_status_icon_set_from_icon_name (priv->icon, event->icon_name);
}
status_icon_update_tooltip (icon);
diff --git a/libempathy/Makefile.am b/libempathy/Makefile.am
index c30f62fa5..3f73265cf 100644
--- a/libempathy/Makefile.am
+++ b/libempathy/Makefile.am
@@ -8,6 +8,7 @@ AM_CPPFLAGS = \
BUILT_SOURCES = \
empathy-marshal.h \
empathy-marshal.c \
+ empathy-filter-glue.h \
empathy-chandler-glue.h
lib_LTLIBRARIES = libempathy.la
@@ -30,6 +31,7 @@ libempathy_la_SOURCES = \
empathy-tp-chat.c \
empathy-tp-chatroom.c \
empathy-chandler.c \
+ empathy-filter.c \
empathy-idle.c \
empathy-log-manager.c \
empathy-marshal-main.c
@@ -56,6 +58,7 @@ libempathy_HEADERS = \
empathy-tp-chat.h \
empathy-tp-chatroom.h \
empathy-chandler.h \
+ empathy-filter.h \
empathy-idle.h \
empathy-log-manager.h
@@ -69,6 +72,8 @@ libempathy_HEADERS = \
empathy-chandler-glue.h: empathy-chandler.xml
$(LIBTOOL) --mode=execute $(DBUS_BINDING_TOOL) --prefix=empathy_chandler --mode=glib-server --output=$@ $<
+empathy-filter-glue.h: empathy-filter.xml
+ $(LIBTOOL) --mode=execute $(DBUS_BINDING_TOOL) --prefix=empathy_filter --mode=glib-server --output=$@ $<
dtddir = $(datadir)/empathy
dtd_DATA = \
@@ -84,6 +89,7 @@ pkgconfig_DATA = libempathy.pc
EXTRA_DIST = \
empathy-marshal.list \
empathy-chandler.xml \
+ empathy-filter.xml \
$(stylesheet_DATA) \
$(dtd_DATA)
diff --git a/libempathy/empathy-filter.c b/libempathy/empathy-filter.c
new file mode 100644
index 000000000..c811991f5
--- /dev/null
+++ b/libempathy/empathy-filter.c
@@ -0,0 +1,232 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2007 Collabora Ltd.
+ *
+ * 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.
+ *
+ * Authors: Xavier Claessens <xclaesse@gmail.com>
+ */
+
+#include <config.h>
+
+#include <dbus/dbus-glib.h>
+
+#include <libtelepathy/tp-helpers.h>
+#include <libtelepathy/tp-conn.h>
+
+#include "empathy-filter.h"
+#include "empathy-debug.h"
+#include "empathy-utils.h"
+#include "empathy-marshal.h"
+
+#define GET_PRIV(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), \
+ EMPATHY_TYPE_FILTER, EmpathyFilterPriv))
+
+#define DEBUG_DOMAIN "EmpathyFilter"
+
+struct _EmpathyFilterPriv {
+ GHashTable *table;
+};
+
+static void empathy_filter_class_init (EmpathyFilterClass *klass);
+static void empathy_filter_init (EmpathyFilter *filter);
+static void filter_finalize (GObject *object);
+static gboolean empathy_filter_filter_channel (EmpathyFilter *filter,
+ const gchar *bus_name,
+ const gchar *connection,
+ const gchar *channel_type,
+ const gchar *channel,
+ guint handle_type,
+ guint handle,
+ guint id,
+ GError **error);
+
+#include "empathy-filter-glue.h"
+
+enum {
+ PROCESS,
+ NEW_CHANNEL,
+ LAST_SIGNAL
+};
+
+static guint signals[LAST_SIGNAL];
+
+G_DEFINE_TYPE (EmpathyFilter, empathy_filter, G_TYPE_OBJECT)
+
+static void
+empathy_filter_class_init (EmpathyFilterClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+ object_class->finalize = filter_finalize;
+
+ signals[NEW_CHANNEL] =
+ g_signal_new ("new-channel",
+ G_OBJECT_CLASS_TYPE (klass),
+ G_SIGNAL_RUN_LAST,
+ 0,
+ NULL, NULL,
+ empathy_marshal_VOID__OBJECT_OBJECT,
+ G_TYPE_NONE,
+ 2, TELEPATHY_CONN_TYPE, TELEPATHY_CHAN_TYPE);
+
+ signals[PROCESS] =
+ g_signal_new ("process",
+ G_OBJECT_CLASS_TYPE (klass),
+ G_SIGNAL_RUN_LAST,
+ 0,
+ NULL, NULL,
+ empathy_marshal_VOID__UINT_BOOLEAN,
+ G_TYPE_NONE,
+ 2, G_TYPE_UINT, G_TYPE_BOOLEAN);
+
+ g_type_class_add_private (object_class, sizeof (EmpathyFilterPriv));
+}
+
+static void
+empathy_filter_init (EmpathyFilter *filter)
+{
+ EmpathyFilterPriv *priv;
+
+ priv = GET_PRIV (filter);
+
+ priv->table = g_hash_table_new_full (g_direct_hash, g_direct_equal,
+ (GDestroyNotify) g_object_unref,
+ NULL);
+}
+
+static void
+filter_finalize (GObject *object)
+{
+ EmpathyFilterPriv *priv;
+
+ priv = GET_PRIV (object);
+
+ g_hash_table_destroy (priv->table);
+}
+
+EmpathyFilter *
+empathy_filter_new (const gchar *bus_name,
+ const gchar *object_path,
+ const gchar *channel_type,
+ guint priority,
+ guint flags)
+{
+ static gboolean initialized = FALSE;
+ MissionControl *mc;
+ EmpathyFilter *filter;
+ DBusGProxy *proxy;
+ guint result;
+ GError *error = NULL;
+
+ if (!initialized) {
+ dbus_g_object_type_install_info (EMPATHY_TYPE_FILTER,
+ &dbus_glib_empathy_filter_object_info);
+ initialized = TRUE;
+ }
+
+ proxy = dbus_g_proxy_new_for_name (tp_get_bus (),
+ DBUS_SERVICE_DBUS,
+ DBUS_PATH_DBUS,
+ DBUS_INTERFACE_DBUS);
+
+ if (!dbus_g_proxy_call (proxy, "RequestName", &error,
+ G_TYPE_STRING, bus_name,
+ G_TYPE_UINT, DBUS_NAME_FLAG_DO_NOT_QUEUE,
+ G_TYPE_INVALID,
+ G_TYPE_UINT, &result,
+ G_TYPE_INVALID)) {
+ empathy_debug (DEBUG_DOMAIN,
+ "Failed to request name: %s",
+ error ? error->message : "No error given");
+ g_clear_error (&error);
+
+ return NULL;
+ }
+ g_object_unref (proxy);
+
+ filter = g_object_new (EMPATHY_TYPE_FILTER, NULL);
+ dbus_g_connection_register_g_object (tp_get_bus (),
+ object_path,
+ G_OBJECT (filter));
+
+ mc = empathy_mission_control_new ();
+ mission_control_register_filter (mc,
+ bus_name,
+ object_path,
+ channel_type,
+ priority,
+ flags,
+ NULL);
+ g_object_unref (mc);
+
+ return filter;
+}
+
+void
+empathy_filter_process (EmpathyFilter *filter,
+ TpChan *tp_chan,
+ gboolean process)
+{
+ EmpathyFilterPriv *priv;
+ guint id;
+
+ priv = GET_PRIV (filter);
+
+ id = GPOINTER_TO_UINT (g_hash_table_lookup (priv->table, tp_chan));
+ if (id != 0) {
+ g_signal_emit (filter, signals[PROCESS], 0, id, process);
+ g_hash_table_remove (priv->table, tp_chan);
+ }
+}
+
+static gboolean
+empathy_filter_filter_channel (EmpathyFilter *filter,
+ const gchar *bus_name,
+ const gchar *connection,
+ const gchar *channel_type,
+ const gchar *channel,
+ guint handle_type,
+ guint handle,
+ guint id,
+ GError **error)
+{
+ EmpathyFilterPriv *priv;
+ TpChan *tp_chan;
+ TpConn *tp_conn;
+
+ priv = GET_PRIV (filter);
+
+ tp_conn = tp_conn_new (tp_get_bus (),
+ bus_name,
+ connection);
+
+ tp_chan = tp_chan_new (tp_get_bus(),
+ bus_name,
+ channel,
+ channel_type,
+ handle_type,
+ handle);
+
+ g_hash_table_insert (priv->table, tp_chan, GUINT_TO_POINTER (id));
+
+ g_signal_emit (filter, signals[NEW_CHANNEL], 0, tp_conn, tp_chan);
+
+ g_object_unref (tp_conn);
+
+ return TRUE;
+}
+
diff --git a/libempathy/empathy-filter.h b/libempathy/empathy-filter.h
new file mode 100644
index 000000000..53c85935a
--- /dev/null
+++ b/libempathy/empathy-filter.h
@@ -0,0 +1,63 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2007 Collabora Ltd.
+ *
+ * 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.
+ *
+ * Authors: Xavier Claessens <xclaesse@gmail.com>
+ */
+
+#ifndef __EMPATHY_FILTER_H__
+#define __EMPATHY_FILTER_H__
+
+#include <glib.h>
+
+#include <libtelepathy/tp-chan.h>
+
+G_BEGIN_DECLS
+
+#define EMPATHY_TYPE_FILTER (empathy_filter_get_type ())
+#define EMPATHY_FILTER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EMPATHY_TYPE_FILTER, EmpathyFilter))
+#define EMPATHY_FILTER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), EMPATHY_TYPE_FILTER, EmpathyFilterClass))
+#define EMPATHY_IS_FILTER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EMPATHY_TYPE_FILTER))
+#define EMPATHY_IS_FILTER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EMPATHY_TYPE_FILTER))
+#define EMPATHY_FILTER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), EMPATHY_TYPE_FILTER, EmpathyFilterClass))
+
+typedef struct _EmpathyFilter EmpathyFilter;
+typedef struct _EmpathyFilterClass EmpathyFilterClass;
+typedef struct _EmpathyFilterPriv EmpathyFilterPriv;
+
+struct _EmpathyFilter {
+ GObject parent;
+};
+
+struct _EmpathyFilterClass {
+ GObjectClass parent_class;
+};
+
+GType empathy_filter_get_type (void) G_GNUC_CONST;
+EmpathyFilter *empathy_filter_new (const gchar *bus_name,
+ const gchar *object_path,
+ const gchar *channel_type,
+ guint priority,
+ guint flags);
+void empathy_filter_process (EmpathyFilter *filter,
+ TpChan *tp_chan,
+ gboolean process);
+
+G_END_DECLS
+
+#endif /* __EMPATHY_FILTER_H__ */
diff --git a/libempathy/empathy-filter.xml b/libempathy/empathy-filter.xml
new file mode 100644
index 000000000..0223fefb0
--- /dev/null
+++ b/libempathy/empathy-filter.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<node name="/">
+ <interface name="org.freedesktop.Telepathy.MissionControl.Filter">
+ <method name="FilterChannel">
+ <arg direction="in" type="s" name="bus_name" />
+ <arg direction="in" type="o" name="connection" />
+ <arg direction="in" type="s" name="channel_type" />
+ <arg direction="in" type="o" name="channel" />
+ <arg direction="in" type="u" name="handle_type" />
+ <arg direction="in" type="u" name="handle" />
+ <arg direction="in" type="u" name="id" />
+ </method>
+ <signal name="Process">
+ <arg type="u" name="id"/>
+ <arg type="b" name="process"/>
+ </signal>
+ </interface>
+</node>
diff --git a/libempathy/empathy-tp-chat.c b/libempathy/empathy-tp-chat.c
index e97b5d641..e52b4a086 100644
--- a/libempathy/empathy-tp-chat.c
+++ b/libempathy/empathy-tp-chat.c
@@ -49,6 +49,7 @@ struct _EmpathyTpChatPriv {
McAccount *account;
gchar *id;
MissionControl *mc;
+ gboolean acknowledge;
TpChan *tp_chan;
DBusGProxy *props_iface;
@@ -56,56 +57,57 @@ struct _EmpathyTpChatPriv {
DBusGProxy *chat_state_iface;
};
-static void empathy_tp_chat_class_init (EmpathyTpChatClass *klass);
-static void empathy_tp_chat_init (EmpathyTpChat *chat);
-static void tp_chat_finalize (GObject *object);
-static GObject * tp_chat_constructor (GType type,
- guint n_props,
- GObjectConstructParam *props);
-static void tp_chat_get_property (GObject *object,
- guint param_id,
- GValue *value,
- GParamSpec *pspec);
-static void tp_chat_set_property (GObject *object,
- guint param_id,
- const GValue *value,
- GParamSpec *pspec);
-static void tp_chat_destroy_cb (TpChan *text_chan,
- EmpathyTpChat *chat);
-static void tp_chat_closed_cb (TpChan *text_chan,
- EmpathyTpChat *chat);
-static void tp_chat_received_cb (DBusGProxy *text_iface,
- guint message_id,
- guint timestamp,
- guint from_handle,
- guint message_type,
- guint message_flags,
- gchar *message_body,
- EmpathyTpChat *chat);
-static void tp_chat_sent_cb (DBusGProxy *text_iface,
- guint timestamp,
- guint message_type,
- gchar *message_body,
- EmpathyTpChat *chat);
-static void tp_chat_state_changed_cb (DBusGProxy *chat_state_iface,
- guint handle,
- TelepathyChannelChatState state,
- EmpathyTpChat *chat);
-static void tp_chat_emit_message (EmpathyTpChat *chat,
- guint type,
- guint timestamp,
- guint from_handle,
- const gchar *message_body);
-static void tp_chat_properties_ready_cb (TpPropsIface *props_iface,
- EmpathyTpChat *chat);
-static void tp_chat_properties_changed_cb (TpPropsIface *props_iface,
- guint prop_id,
- TpPropsChanged flag,
- EmpathyTpChat *chat);
+static void empathy_tp_chat_class_init (EmpathyTpChatClass *klass);
+static void empathy_tp_chat_init (EmpathyTpChat *chat);
+static void tp_chat_finalize (GObject *object);
+static GObject * tp_chat_constructor (GType type,
+ guint n_props,
+ GObjectConstructParam *props);
+static void tp_chat_get_property (GObject *object,
+ guint param_id,
+ GValue *value,
+ GParamSpec *pspec);
+static void tp_chat_set_property (GObject *object,
+ guint param_id,
+ const GValue *value,
+ GParamSpec *pspec);
+static void tp_chat_destroy_cb (TpChan *text_chan,
+ EmpathyTpChat *chat);
+static void tp_chat_closed_cb (TpChan *text_chan,
+ EmpathyTpChat *chat);
+static void tp_chat_received_cb (DBusGProxy *text_iface,
+ guint message_id,
+ guint timestamp,
+ guint from_handle,
+ guint message_type,
+ guint message_flags,
+ gchar *message_body,
+ EmpathyTpChat *chat);
+static void tp_chat_sent_cb (DBusGProxy *text_iface,
+ guint timestamp,
+ guint message_type,
+ gchar *message_body,
+ EmpathyTpChat *chat);
+static void tp_chat_state_changed_cb (DBusGProxy *chat_state_iface,
+ guint handle,
+ TelepathyChannelChatState state,
+ EmpathyTpChat *chat);
+static EmpathyMessage * tp_chat_build_message (EmpathyTpChat *chat,
+ guint type,
+ guint timestamp,
+ guint from_handle,
+ const gchar *message_body);
+static void tp_chat_properties_ready_cb (TpPropsIface *props_iface,
+ EmpathyTpChat *chat);
+static void tp_chat_properties_changed_cb (TpPropsIface *props_iface,
+ guint prop_id,
+ TpPropsChanged flag,
+ EmpathyTpChat *chat);
enum {
PROP_0,
PROP_ACCOUNT,
PROP_TP_CHAN,
+ PROP_ACKNOWLEDGE,
PROP_ANONYMOUS,
PROP_INVITE_ONLY,
@@ -162,6 +164,15 @@ empathy_tp_chat_class_init (EmpathyTpChatClass *klass)
G_PARAM_READWRITE |
G_PARAM_CONSTRUCT_ONLY));
+ /* Normal properties */
+ g_object_class_install_property (object_class,
+ PROP_ACKNOWLEDGE,
+ g_param_spec_boolean ("acknowledge",
+ "acknowledge",
+ "acknowledge",
+ FALSE,
+ G_PARAM_READWRITE));
+
/* Properties of Text Channel */
g_object_class_install_property (object_class,
PROP_ANONYMOUS,
@@ -320,17 +331,17 @@ tp_chat_finalize (GObject *object)
priv = GET_PRIV (chat);
if (priv->tp_chan) {
- empathy_debug (DEBUG_DOMAIN, "Closing channel...");
-
g_signal_handlers_disconnect_by_func (priv->tp_chan,
tp_chat_destroy_cb,
object);
-
- if (!tp_chan_close (DBUS_G_PROXY (priv->tp_chan), &error)) {
- empathy_debug (DEBUG_DOMAIN,
- "Error closing text channel: %s",
- error ? error->message : "No error given");
- g_clear_error (&error);
+ if (priv->acknowledge) {
+ empathy_debug (DEBUG_DOMAIN, "Closing channel...");
+ if (!tp_chan_close (DBUS_G_PROXY (priv->tp_chan), &error)) {
+ empathy_debug (DEBUG_DOMAIN,
+ "Error closing text channel: %s",
+ error ? error->message : "No error given");
+ g_clear_error (&error);
+ }
}
g_object_unref (priv->tp_chan);
}
@@ -453,6 +464,9 @@ tp_chat_get_property (GObject *object,
case PROP_TP_CHAN:
g_value_set_object (value, priv->tp_chan);
break;
+ case PROP_ACKNOWLEDGE:
+ g_value_set_boolean (value, priv->acknowledge);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
break;
@@ -489,6 +503,10 @@ tp_chat_set_property (GObject *object,
case PROP_TP_CHAN:
priv->tp_chan = g_object_ref (g_value_get_object (value));
break;
+ case PROP_ACKNOWLEDGE:
+ empathy_tp_chat_set_acknowledge (EMPATHY_TP_CHAT (object),
+ g_value_get_boolean (value));
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
break;
@@ -548,39 +566,79 @@ empathy_tp_chat_new_with_contact (EmpathyContact *contact)
return chat;
}
+gboolean
+empathy_tp_chat_get_acknowledge (EmpathyTpChat *chat)
+{
+ EmpathyTpChatPriv *priv;
+
+ g_return_val_if_fail (EMPATHY_IS_TP_CHAT (chat), FALSE);
+
+ priv = GET_PRIV (chat);
+
+ return priv->acknowledge;
+}
+
void
-empathy_tp_chat_request_pending (EmpathyTpChat *chat)
+empathy_tp_chat_set_acknowledge (EmpathyTpChat *chat,
+ gboolean acknowledge)
+{
+ EmpathyTpChatPriv *priv;
+
+ g_return_if_fail (EMPATHY_IS_TP_CHAT (chat));
+
+ priv = GET_PRIV (chat);
+
+ priv->acknowledge = acknowledge;
+ g_object_notify (G_OBJECT (chat), "acknowledge");
+}
+
+TpChan *
+empathy_tp_chat_get_channel (EmpathyTpChat *chat)
+{
+ EmpathyTpChatPriv *priv;
+
+ g_return_val_if_fail (EMPATHY_IS_TP_CHAT (chat), NULL);
+
+ priv = GET_PRIV (chat);
+
+ return priv->tp_chan;
+}
+
+GList *
+empathy_tp_chat_get_pendings (EmpathyTpChat *chat)
{
EmpathyTpChatPriv *priv;
GPtrArray *messages_list;
guint i;
+ GList *messages = NULL;
GError *error = NULL;
- g_return_if_fail (EMPATHY_IS_TP_CHAT (chat));
+ g_return_val_if_fail (EMPATHY_IS_TP_CHAT (chat), NULL);
priv = GET_PRIV (chat);
/* If we do this call async, don't forget to ignore Received signal
* until we get the answer */
if (!tp_chan_type_text_list_pending_messages (priv->text_iface,
- TRUE,
+ priv->acknowledge,
&messages_list,
&error)) {
empathy_debug (DEBUG_DOMAIN,
"Error retrieving pending messages: %s",
error ? error->message : "No error given");
g_clear_error (&error);
- return;
+ return NULL;
}
for (i = 0; i < messages_list->len; i++) {
- GValueArray *message_struct;
- const gchar *message_body;
- guint message_id;
- guint timestamp;
- guint from_handle;
- guint message_type;
- guint message_flags;
+ EmpathyMessage *message;
+ GValueArray *message_struct;
+ const gchar *message_body;
+ guint message_id;
+ guint timestamp;
+ guint from_handle;
+ guint message_type;
+ guint message_flags;
message_struct = g_ptr_array_index (messages_list, i);
@@ -593,16 +651,20 @@ empathy_tp_chat_request_pending (EmpathyTpChat *chat)
empathy_debug (DEBUG_DOMAIN, "Message pending: %s", message_body);
- tp_chat_emit_message (chat,
- message_type,
- timestamp,
- from_handle,
- message_body);
+ message = tp_chat_build_message (chat,
+ message_type,
+ timestamp,
+ from_handle,
+ message_body);
+
+ messages = g_list_prepend (messages, message);
g_value_array_free (message_struct);
}
g_ptr_array_free (messages_list, TRUE);
+
+ return messages;
}
void
@@ -722,23 +784,30 @@ tp_chat_received_cb (DBusGProxy *text_iface,
EmpathyTpChat *chat)
{
EmpathyTpChatPriv *priv;
- GArray *message_ids;
+ EmpathyMessage *message;
priv = GET_PRIV (chat);
empathy_debug (DEBUG_DOMAIN, "Message received: %s", message_body);
- tp_chat_emit_message (chat,
- message_type,
- timestamp,
- from_handle,
- message_body);
-
- message_ids = g_array_new (FALSE, FALSE, sizeof (guint));
- g_array_append_val (message_ids, message_id);
- tp_chan_type_text_acknowledge_pending_messages (priv->text_iface,
- message_ids, NULL);
- g_array_free (message_ids, TRUE);
+ message = tp_chat_build_message (chat,
+ message_type,
+ timestamp,
+ from_handle,
+ message_body);
+
+ g_signal_emit (chat, signals[MESSAGE_RECEIVED], 0, message);
+ g_object_unref (message);
+
+ if (priv->acknowledge) {
+ GArray *message_ids;
+
+ message_ids = g_array_new (FALSE, FALSE, sizeof (guint));
+ g_array_append_val (message_ids, message_id);
+ tp_chan_type_text_acknowledge_pending_messages (priv->text_iface,
+ message_ids, NULL);
+ g_array_free (message_ids, TRUE);
+ }
}
static void
@@ -748,13 +817,18 @@ tp_chat_sent_cb (DBusGProxy *text_iface,
gchar *message_body,
EmpathyTpChat *chat)
{
+ EmpathyMessage *message;
+
empathy_debug (DEBUG_DOMAIN, "Message sent: %s", message_body);
- tp_chat_emit_message (chat,
- message_type,
- timestamp,
- 0,
- message_body);
+ message = tp_chat_build_message (chat,
+ message_type,
+ timestamp,
+ 0,
+ message_body);
+
+ g_signal_emit (chat, signals[MESSAGE_RECEIVED], 0, message);
+ g_object_unref (message);
}
static void
@@ -776,21 +850,20 @@ tp_chat_state_changed_cb (DBusGProxy *chat_state_iface,
state);
g_signal_emit (chat, signals[CHAT_STATE_CHANGED], 0, contact, state);
-
g_object_unref (contact);
}
-static void
-tp_chat_emit_message (EmpathyTpChat *chat,
- guint type,
- guint timestamp,
- guint from_handle,
- const gchar *message_body)
+static EmpathyMessage *
+tp_chat_build_message (EmpathyTpChat *chat,
+ guint type,
+ guint timestamp,
+ guint from_handle,
+ const gchar *message_body)
{
EmpathyTpChatPriv *priv;
- EmpathyMessage *message;
- EmpathyContact *sender;
- EmpathyContact *receiver;
+ EmpathyMessage *message;
+ EmpathyContact *sender;
+ EmpathyContact *receiver;
priv = GET_PRIV (chat);
@@ -808,10 +881,9 @@ tp_chat_emit_message (EmpathyTpChat *chat,
empathy_message_set_receiver (message, receiver);
empathy_message_set_timestamp (message, (EmpathyTime) timestamp);
- g_signal_emit (chat, signals[MESSAGE_RECEIVED], 0, message);
-
- g_object_unref (message);
g_object_unref (sender);
+
+ return message;
}
static void
diff --git a/libempathy/empathy-tp-chat.h b/libempathy/empathy-tp-chat.h
index ce4e2a836..7232a69a7 100644
--- a/libempathy/empathy-tp-chat.h
+++ b/libempathy/empathy-tp-chat.h
@@ -58,10 +58,14 @@ struct _EmpathyTpChatClass {
GType empathy_tp_chat_get_type (void) G_GNUC_CONST;
EmpathyTpChat *empathy_tp_chat_new (McAccount *account,
TpChan *tp_chan);
-EmpathyTpChat *empathy_tp_chat_new_with_contact (EmpathyContact *contact);
-void empathy_tp_chat_request_pending (EmpathyTpChat *chat);
+EmpathyTpChat *empathy_tp_chat_new_with_contact (EmpathyContact *contact);
+gboolean empathy_tp_chat_get_acknowledge (EmpathyTpChat *chat);
+void empathy_tp_chat_set_acknowledge (EmpathyTpChat *chat,
+ gboolean acknowledge);
+TpChan * empathy_tp_chat_get_channel (EmpathyTpChat *chat);
+GList * empathy_tp_chat_get_pendings (EmpathyTpChat *chat);
void empathy_tp_chat_send (EmpathyTpChat *chat,
- EmpathyMessage *message);
+ EmpathyMessage *message);
void empathy_tp_chat_set_state (EmpathyTpChat *chat,
TelepathyChannelChatState state);
const gchar * empathy_tp_chat_get_id (EmpathyTpChat *chat);
diff --git a/po/ChangeLog b/po/ChangeLog
index 43faf98fe..3944a82ca 100644
--- a/po/ChangeLog
+++ b/po/ChangeLog
@@ -1,3 +1,7 @@
+2007-06-30 Jorge Gonzalez <jorgegonz@svn.gnome.org>
+
+ * pl.po: Updated Polish translation (Tomasz Dominikowski).
+
2007-06-28 Jorge Gonzalez <jorgegonz@svn.gnome.org>
* es.po: Updated Spanish translation
diff --git a/po/pl.po b/po/pl.po
index d7f39a1ba..42ade8553 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -10,8 +10,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Gossip cvs\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-10 12:04+0200\n"
-"PO-Revision-Date: 2007-06-10 14:03+0100\n"
+"POT-Creation-Date: 2007-06-29 14:14+0200\n"
+"PO-Revision-Date: 2007-06-29 14:16+0100\n"
"Last-Translator: Tomasz Dominikowski <dominikowski@gmail.com>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
@@ -19,11 +19,11 @@ msgstr ""
"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"
-#: ../data/empathy.desktop.in.h:1
+#: ../data/empathy.desktop.in.in.h:1
msgid "Empathy Instant Messenger"
msgstr "Komunikator internetowy Empathy"
-#: ../data/empathy.desktop.in.h:2
+#: ../data/empathy.desktop.in.in.h:2
msgid "Instant Messenger"
msgstr "Komunikator internetowy"
@@ -163,270 +163,102 @@ msgstr "Określa, czy używać motywów dla pokoi rozmów."
msgid "Which criterium to use when sorting the contact list. Default is to use sort by the contact's name with the value \"name\". A value of \"state\" will sort the contact list by state."
msgstr "Określa, jakie kryterium używać podczas sortowania listy kontaktów. Domyślnie jest używane sortowanie wg nazwy kontaktów, wartość \"name\". Wartość \"state\" spowoduje sortowanie wg stanu kontaktu."
-#: ../libempathy/gossip-presence.c:184
-#: ../libempathy/gossip-presence.c:283
+#: ../libempathy/empathy-presence.c:184
+#: ../libempathy/empathy-presence.c:283
msgid "Offline"
msgstr "Rozłączony"
-#: ../libempathy/gossip-presence.c:274
+#: ../libempathy/empathy-presence.c:274
msgid "Available"
msgstr "Dostępny"
-#: ../libempathy/gossip-presence.c:276
+#: ../libempathy/empathy-presence.c:276
msgid "Busy"
msgstr "Zajęty"
-#: ../libempathy/gossip-presence.c:279
+#: ../libempathy/empathy-presence.c:279
msgid "Away"
msgstr "Nieobecny"
-#: ../libempathy-gtk/empathy-contact-dialogs.c:75
-#: ../libempathy-gtk/empathy-contact-dialogs.c:218
-msgid "I would like to add you to my contact list."
-msgstr "Chciałbym Cię dodać do mojej listy kontaktów."
-
-#: ../libempathy-gtk/empathy-contact-dialogs.c:80
-msgid "Sorry, I don't want you in my contact list."
-msgstr "Przepraszam, nie chcę Ciebie na mojej liście kontaktów."
-
-#: ../libempathy-gtk/empathy-contact-dialogs.glade.h:1
-msgid "Decide _Later"
-msgstr "Z_decyduj później"
-
-#: ../libempathy-gtk/empathy-contact-dialogs.glade.h:2
-msgid "Subscription Request"
-msgstr "Prośba autoryzacji"
-
-#: ../libempathy-gtk/empathy-contact-widget.c:561
-msgid "Select"
-msgstr "Wybierz"
-
-#: ../libempathy-gtk/empathy-contact-widget.c:571
-#: ../libempathy-gtk/empathy-main-window.c:611
-msgid "Group"
-msgstr "Grupa"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:1
-msgid "<b>Client Information</b>"
-msgstr "<b>Informacje o kliencie</b>"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:2
-msgid "<b>Contact Details</b>"
-msgstr "<b>Szczegóły kontaktu</b>"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:3
-msgid "<b>Contact</b>"
-msgstr "<b>Kontakt</b>"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:4
-msgid "<b>Groups</b>"
-msgstr "<b>Grupy</b>"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:5
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:1
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:1
-msgid "Account:"
-msgstr "Konto:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:6
-msgid "Alias:"
-msgstr "Alias:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:7
-msgid "Birthday:"
-msgstr "Urodziny:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:8
-msgid "Client:"
-msgstr "Klient:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:9
-msgid "Contact information"
-msgstr "Informacje o kontakcie"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:10
-msgid "Email:"
-msgstr "E-mail:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:11
-msgid "Fullname:"
-msgstr "Pełna nazwa:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:12
-msgid "Identifier:"
-msgstr "Identyfikator:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:13
-msgid "Information requested..."
-msgstr "Żądanie informacji..."
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:14
-msgid "OS:"
-msgstr "System:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:15
-msgid "Select the groups you want this contact to appear in, you can select more than one group or no groups."
-msgstr "Wybierz grupy, w których ma się pojawić ten kontakt, można wybrać więcej niż jedną grupę lub żadną."
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:16
-msgid "Version:"
-msgstr "Wersja:"
-
-#: ../libempathy-gtk/empathy-contact-widget.glade.h:17
-msgid "Web site:"
-msgstr "Strona WWW:"
-
-#: ../libempathy-gtk/empathy-main-window.c:276
-msgid "Show and edit accounts"
-msgstr "Wyświetl i modyfikuj konta"
-
-#: ../libempathy-gtk/empathy-main-window.c:632
-msgid "Contact"
-msgstr "Kontakt"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:1
-msgid "Contact List - Empathy"
-msgstr "Lista kontaktów - Empathy"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:2
-msgid "Context"
-msgstr "Kontekst"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:3
-msgid "Join _Favorites"
-msgstr "Połącz się z _ulubionymi"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:4
-#: ../libempathy-gtk/gossip-chat.glade.h:10
-msgid "Join _New..."
-msgstr "Dołącz do _nowego..."
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:5
-msgid "Manage Favorites..."
-msgstr "Modyfikuj ulubione..."
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:6
-msgid "Show _Offline Contacts"
-msgstr "Wyświetlanie r_ozłączonych kontaktów"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:7
-msgid "_About"
-msgstr "O _programie"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:8
-msgid "_Accounts"
-msgstr "_Konta"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:9
-#: ../libempathy-gtk/gossip-chat.glade.h:15
-msgid "_Add Contact..."
-msgstr "_Dodaj kontakt..."
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:10
-#: ../libempathy-gtk/gossip-contact-list-view.c:203
-msgid "_Chat"
-msgstr "_Rozmowa"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:11
-msgid "_Contents"
-msgstr "_Zawartość"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:12
-#: ../libempathy-gtk/gossip-chat.glade.h:21
-#: ../libempathy-gtk/gossip-contact-list-view.c:215
-msgid "_Edit"
-msgstr "M_odyfikuj"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:13
-msgid "_Help"
-msgstr "Pomo_c"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:14
-#: ../libempathy-gtk/empathy-status-icon.glade.h:2
-msgid "_New Message..."
-msgstr "_Nowa wiadomość..."
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:15
-msgid "_Personal Information"
-msgstr "Informacje o _użytkowniku"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:16
-msgid "_Preferences"
-msgstr "_Preferencje"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:17
-#: ../libempathy-gtk/empathy-status-icon.glade.h:3
-msgid "_Quit"
-msgstr "_Zakończ"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:18
-#: ../libempathy-gtk/gossip-chat.glade.h:25
-msgid "_Room"
-msgstr "_Pokój"
-
-#: ../libempathy-gtk/empathy-main-window.glade.h:19
-#: ../libempathy-gtk/gossip-chat.glade.h:28
-#: ../libempathy-gtk/gossip-contact-list-view.c:231
-msgid "_View Previous Conversations"
-msgstr "_Wyświetl poprzednie rozmowy"
-
-#: ../libempathy-gtk/empathy-status-icon.c:448
-#, c-format
-msgid ""
-"Subscription requested for %s\n"
-"Message: %s"
-msgstr ""
-"Prośba subskrypcji dla %s\n"
-"Wiadomość: %s"
-
-#: ../libempathy-gtk/empathy-status-icon.glade.h:1
-msgid "Status"
-msgstr "Stan"
-
-#: ../libempathy-gtk/empathy-status-icon.glade.h:4
-msgid "_Show Contact List"
-msgstr "_Wyświetl listę kontaków"
-
-#: ../libempathy-gtk/gossip-about-dialog.c:63
+#: ../libempathy-gtk/empathy-about-dialog.c:63
msgid "Empathy 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."
msgstr "Empathy jest oprogramowaniem wolnodostępnym; możesz go rozprowadzać dalej i/lub modyfikować na warunkach Powszechnej Licencji Publicznej GNU, wydanej przez Fundację Wolnodostępnego Oprogramowania - według wersji 2 tej Licencji lub którejś z późniejszych wersji. "
-#: ../libempathy-gtk/gossip-about-dialog.c:67
+#: ../libempathy-gtk/empathy-about-dialog.c:67
msgid "Empathy 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."
msgstr "Empathy jest rozpowszechniany z nadzieją, iż będzie on użyteczny - jednak BEZ JAKIEJKOLWIEK GWARANCJI, nawet domyślnej gwarancji PRZYDATNOŚCI HANDLOWEJ albo PRZYDATNOŚCI DO OKREŚLONYCH ZASTOSOWAŃ. W celu uzyskania bliższych informacji - Powszechna Licencja Publiczna GNU. "
-#: ../libempathy-gtk/gossip-about-dialog.c:71
+#: ../libempathy-gtk/empathy-about-dialog.c:71
msgid "You should have received a copy of the GNU General Public License along with Empathy; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-130159 USA"
msgstr "Z pewnością wraz z niniejszym programem otrzymałeś też egzemplarz Powszechnej Licencji Publicznej GNU; jeśli nie - napisz do Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-130159 USA"
-#: ../libempathy-gtk/gossip-about-dialog.c:99
+#: ../libempathy-gtk/empathy-about-dialog.c:99
msgid "An Instant Messaging client for GNOME"
msgstr "Komunikator internetowy dla GNOME"
-#: ../libempathy-gtk/gossip-about-dialog.c:105
+#: ../libempathy-gtk/empathy-about-dialog.c:105
msgid "translator-credits"
msgstr ""
"GNOME PL Team <translators@gnome.pl>\n"
"Tomasz Dominikowski <dominikowski@gmail.com>"
-#: ../libempathy-gtk/gossip-account-chooser.c:391
+#: ../libempathy-gtk/empathy-account-chooser.c:391
msgid "All"
msgstr "Wszystkie"
-#: ../libempathy-gtk/gossip-accounts-dialog.c:223
+#: ../libempathy-gtk/empathy-account-widget-generic.c:144
+#: ../libempathy-gtk/empathy-account-widget-generic.c:186
+#, c-format
+msgid "%s:"
+msgstr "%s:"
+
+#: ../libempathy-gtk/empathy-account-widget-jabber.glade.h:1
+msgid "Forget password and clear the entry."
+msgstr "Zapomnij hasło i wyczyść pole."
+
+#: ../libempathy-gtk/empathy-account-widget-jabber.glade.h:2
+msgid "Login I_D:"
+msgstr "I_dentyfikator logowania:"
+
+#: ../libempathy-gtk/empathy-account-widget-jabber.glade.h:3
+msgid "Pass_word:"
+msgstr "_Hasło:"
+
+#: ../libempathy-gtk/empathy-account-widget-jabber.glade.h:4
+msgid "Reso_urce:"
+msgstr "_Zasób:"
+
+#: ../libempathy-gtk/empathy-account-widget-jabber.glade.h:5
+msgid "Use encryption (SS_L)"
+msgstr "Używanie szyfrowania (SS_L)"
+
+#: ../libempathy-gtk/empathy-account-widget-jabber.glade.h:6
+msgid "_Port:"
+msgstr "_Port:"
+
+#: ../libempathy-gtk/empathy-account-widget-jabber.glade.h:7
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:10
+msgid "_Server:"
+msgstr "_Serwer:"
+
+#: ../libempathy-gtk/empathy-account-widget-jabber.glade.h:8
+msgid "jabber account settings"
+msgstr "Ustawienia konta Jabber"
+
+#: ../libempathy-gtk/empathy-accounts-dialog.c:223
msgid "Disable"
msgstr "Wyłącz"
-#: ../libempathy-gtk/gossip-accounts-dialog.c:226
+#: ../libempathy-gtk/empathy-accounts-dialog.c:226
msgid "Enable"
msgstr "Włącz"
-#: ../libempathy-gtk/gossip-accounts-dialog.c:260
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:3
+#: ../libempathy-gtk/empathy-accounts-dialog.c:260
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:3
msgid "<b>No Account Selected</b>"
msgstr "<b>Nie zaznaczono żadnego konta</b>"
-#: ../libempathy-gtk/gossip-accounts-dialog.c:262
+#: ../libempathy-gtk/empathy-accounts-dialog.c:262
msgid ""
"To add a new account, you can click on the 'Add' button and a new entry will be created for you to start configuring.\n"
"\n"
@@ -436,20 +268,20 @@ msgstr ""
"\n"
"Jeśli nie chcesz dodać konta, kliknij na konto, które chcesz skonfigurować na liście po lewej stronie."
-#: ../libempathy-gtk/gossip-accounts-dialog.c:271
+#: ../libempathy-gtk/empathy-accounts-dialog.c:271
msgid "<b>No Accounts Configured</b>"
msgstr "<b>Brak skonfigurowanych kont</b>"
-#: ../libempathy-gtk/gossip-accounts-dialog.c:273
+#: ../libempathy-gtk/empathy-accounts-dialog.c:273
msgid "To add a new account, you can click on the 'Add' button and a new entry will be created for you to start configuring."
msgstr "Aby dodać nowe konto możesz kliknąć przycisk \"Dodaj\", a zostanie utworzony nowy wpis, który można skonfigurować."
-#: ../libempathy-gtk/gossip-accounts-dialog.c:361
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:6
+#: ../libempathy-gtk/empathy-accounts-dialog.c:361
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:6
msgid "Accounts"
msgstr "Konta"
-#: ../libempathy-gtk/gossip-accounts-dialog.c:856
+#: ../libempathy-gtk/empathy-accounts-dialog.c:856
#, c-format
msgid ""
"You are about to remove your %s account!\n"
@@ -458,7 +290,7 @@ msgstr ""
"Zamierzasz usunąć konto %s!\n"
"Czy jesteś tego pewien?"
-#: ../libempathy-gtk/gossip-accounts-dialog.c:862
+#: ../libempathy-gtk/empathy-accounts-dialog.c:862
msgid ""
"Any associated conversations and chat rooms will NOT be removed if you decide to proceed.\n"
"\n"
@@ -468,35 +300,35 @@ msgstr ""
"\n"
"Jeśli zdecydujesz się na ponowne dodanie tego konta, znowu staną się dostępne."
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:1
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:1
msgid "<b>Account</b>"
msgstr "<b>Konto</b>"
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:2
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:2
msgid "<b>New Account</b>"
msgstr "<b>Nowe konto</b>"
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:4
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:4
msgid "<b>Settings</b>"
msgstr "<b>Ustawienia</b>"
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:5
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:5
msgid "A unique name for this account to identify it personally to you."
msgstr "Unikalna nazwa dla tego konta, abyś mógł się z nią identyfikować."
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:7
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:7
msgid "Cr_eate"
msgstr "_Utwórz"
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:8
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:8
msgid "Imendio "
msgstr "Imendio"
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:9
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:9
msgid "Jabber"
msgstr "Jabber"
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:10
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:10
msgid ""
"To add a new account, you can click on the 'Add' button and a new entry will be created for you to started configuring.\n"
"\n"
@@ -506,187 +338,176 @@ msgstr ""
"\n"
"Jeśli nie chcesz dodać konta, kliknij na konto, które chcesz skonfigurować na liście po lewej stronie."
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:13
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:13
msgid "_Name:"
msgstr "_Nazwa:"
-#: ../libempathy-gtk/gossip-accounts-dialog.glade.h:14
+#: ../libempathy-gtk/empathy-accounts-dialog.glade.h:14
msgid "_Type:"
msgstr "_Typ:"
-#: ../libempathy-gtk/gossip-account-widget-generic.c:144
-#: ../libempathy-gtk/gossip-account-widget-generic.c:186
-#, c-format
-msgid "%s:"
-msgstr "%s:"
-
-#: ../libempathy-gtk/gossip-account-widget-jabber.glade.h:1
-msgid "Forget password and clear the entry."
-msgstr "Zapomnij hasło i wyczyść pole."
-
-#: ../libempathy-gtk/gossip-account-widget-jabber.glade.h:2
-msgid "Login I_D:"
-msgstr "I_dentyfikator logowania:"
-
-#: ../libempathy-gtk/gossip-account-widget-jabber.glade.h:3
-msgid "Pass_word:"
-msgstr "_Hasło:"
-
-#: ../libempathy-gtk/gossip-account-widget-jabber.glade.h:4
-msgid "Reso_urce:"
-msgstr "_Zasób:"
-
-#: ../libempathy-gtk/gossip-account-widget-jabber.glade.h:5
-msgid "Use encryption (SS_L)"
-msgstr "Używanie szyfrowania (SS_L)"
-
-#: ../libempathy-gtk/gossip-account-widget-jabber.glade.h:6
-msgid "_Port:"
-msgstr "_Port:"
-
-#: ../libempathy-gtk/gossip-account-widget-jabber.glade.h:7
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:10
-msgid "_Server:"
-msgstr "_Serwer:"
-
-#: ../libempathy-gtk/gossip-account-widget-jabber.glade.h:8
-msgid "jabber account settings"
-msgstr "Ustawienia konta Jabber"
-
-#: ../libempathy-gtk/gossip-chat.c:332
+#: ../libempathy-gtk/empathy-chat.c:331
msgid "Disconnected"
msgstr "Rozłączony"
-#: ../libempathy-gtk/gossip-chat.c:878
+#: ../libempathy-gtk/empathy-chat.c:875
msgid "Insert Smiley"
msgstr "Wstaw uśmieszek"
-#: ../libempathy-gtk/gossip-chat.c:926
+#: ../libempathy-gtk/empathy-chat.c:923
msgid "_Check Word Spelling..."
msgstr "_Sprawdź pisownię..."
-#: ../libempathy-gtk/gossip-chat.c:1343
+#: ../libempathy-gtk/empathy-chat.c:1339
msgid "Connected"
msgstr "Połączony"
-#: ../libempathy-gtk/gossip-chat.glade.h:1
+#: ../libempathy-gtk/empathy-chat.glade.h:1
msgid "C_lear"
msgstr "_Wyczyść"
-#: ../libempathy-gtk/gossip-chat.glade.h:2
+#: ../libempathy-gtk/empathy-chat.glade.h:2
msgid "Change _Topic..."
msgstr "Zmień _temat..."
-#: ../libempathy-gtk/gossip-chat.glade.h:3
+#: ../libempathy-gtk/empathy-chat.glade.h:3
msgid "Chat"
msgstr "Czat"
-#: ../libempathy-gtk/gossip-chat.glade.h:4
+#: ../libempathy-gtk/empathy-chat.glade.h:4
msgid "Contact Infor_mation"
msgstr "_Informacje o kontakcie"
-#: ../libempathy-gtk/gossip-chat.glade.h:5
+#: ../libempathy-gtk/empathy-chat.glade.h:5
msgid "Cu_t"
msgstr "Wy_tnij"
-#: ../libempathy-gtk/gossip-chat.glade.h:6
+#: ../libempathy-gtk/empathy-chat.glade.h:6
msgid "In_vite..."
msgstr "Z_aproś..."
-#: ../libempathy-gtk/gossip-chat.glade.h:7
+#: ../libempathy-gtk/empathy-chat.glade.h:7
msgid "Insert _Smiley"
msgstr "Wstaw _uśmieszek"
-#: ../libempathy-gtk/gossip-chat.glade.h:8
+#: ../libempathy-gtk/empathy-chat.glade.h:8
msgid "Invitation _message:"
msgstr "Treść _zaproszenia:"
-#: ../libempathy-gtk/gossip-chat.glade.h:9
+#: ../libempathy-gtk/empathy-chat.glade.h:9
msgid "Invite"
msgstr "Zaproś"
-#: ../libempathy-gtk/gossip-chat.glade.h:11
+#: ../libempathy-gtk/empathy-chat.glade.h:10
+#: ../libempathy-gtk/empathy-main-window.glade.h:4
+msgid "Join _New..."
+msgstr "Dołącz do _nowego..."
+
+#: ../libempathy-gtk/empathy-chat.glade.h:11
msgid "Move Tab _Left"
msgstr "Przenieś zakładkę w _lewo"
-#: ../libempathy-gtk/gossip-chat.glade.h:12
+#: ../libempathy-gtk/empathy-chat.glade.h:12
msgid "Move Tab _Right"
msgstr "Przenieś zakładkę w p_rawo"
-#: ../libempathy-gtk/gossip-chat.glade.h:13
+#: ../libempathy-gtk/empathy-chat.glade.h:13
msgid "Select who would you like to invite:"
msgstr "Wybierz kogo chcesz zaprosić:"
-#: ../libempathy-gtk/gossip-chat.glade.h:14
+#: ../libempathy-gtk/empathy-chat.glade.h:14
msgid "You have been invited to join a chat conference."
msgstr "Wysłano tobie zaproszenie do dołączenia do konferencji."
-#: ../libempathy-gtk/gossip-chat.glade.h:16
+#: ../libempathy-gtk/empathy-chat.glade.h:15
+#: ../libempathy-gtk/empathy-main-window.glade.h:9
+msgid "_Add Contact..."
+msgstr "_Dodaj kontakt..."
+
+#: ../libempathy-gtk/empathy-chat.glade.h:16
msgid "_Add To Favorites"
msgstr "Dod_aj do ulubionych"
-#: ../libempathy-gtk/gossip-chat.glade.h:17
+#: ../libempathy-gtk/empathy-chat.glade.h:17
msgid "_Close"
msgstr "_Zamknij"
-#: ../libempathy-gtk/gossip-chat.glade.h:18
+#: ../libempathy-gtk/empathy-chat.glade.h:18
msgid "_Conversation"
msgstr "_Rozmowa"
-#: ../libempathy-gtk/gossip-chat.glade.h:19
+#: ../libempathy-gtk/empathy-chat.glade.h:19
msgid "_Copy"
msgstr "_Kopiuj"
-#: ../libempathy-gtk/gossip-chat.glade.h:20
+#: ../libempathy-gtk/empathy-chat.glade.h:20
msgid "_Detach Tab"
msgstr "_Odłącz zakładkę"
-#: ../libempathy-gtk/gossip-chat.glade.h:22
+#: ../libempathy-gtk/empathy-chat.glade.h:21
+#: ../libempathy-gtk/empathy-contact-list-view.c:216
+#: ../libempathy-gtk/empathy-main-window.glade.h:12
+msgid "_Edit"
+msgstr "M_odyfikuj"
+
+#: ../libempathy-gtk/empathy-chat.glade.h:22
msgid "_Next Tab"
msgstr "_Następna zakładka"
-#: ../libempathy-gtk/gossip-chat.glade.h:23
+#: ../libempathy-gtk/empathy-chat.glade.h:23
msgid "_Paste"
msgstr "_Wklej"
-#: ../libempathy-gtk/gossip-chat.glade.h:24
+#: ../libempathy-gtk/empathy-chat.glade.h:24
msgid "_Previous Tab"
msgstr "_Poprzednia zakładka"
-#: ../libempathy-gtk/gossip-chat.glade.h:26
+#: ../libempathy-gtk/empathy-chat.glade.h:25
+#: ../libempathy-gtk/empathy-main-window.glade.h:18
+msgid "_Room"
+msgstr "_Pokój"
+
+#: ../libempathy-gtk/empathy-chat.glade.h:26
msgid "_Show Contacts"
msgstr "_Wyświetl listę kontaków"
-#: ../libempathy-gtk/gossip-chat.glade.h:27
+#: ../libempathy-gtk/empathy-chat.glade.h:27
msgid "_Tabs"
msgstr "_Zakładki"
-#: ../libempathy-gtk/gossip-chat-view.c:554
+#: ../libempathy-gtk/empathy-chat.glade.h:28
+#: ../libempathy-gtk/empathy-contact-list-view.c:232
+#: ../libempathy-gtk/empathy-main-window.glade.h:19
+msgid "_View Previous Conversations"
+msgstr "_Wyświetl poprzednie rozmowy"
+
+#: ../libempathy-gtk/empathy-chat-view.c:557
msgid "_Copy Link Address"
msgstr "S_kopiuj adres odnośnika"
-#: ../libempathy-gtk/gossip-chat-view.c:562
+#: ../libempathy-gtk/empathy-chat-view.c:565
msgid "_Open Link"
msgstr "_Otwórz odnośnik"
-#: ../libempathy-gtk/gossip-chat-view.c:899
+#: ../libempathy-gtk/empathy-chat-view.c:902
msgid "%A %d %B %Y"
msgstr "%A %d %B %Y"
-#: ../libempathy-gtk/gossip-chat-window.c:700
-#: ../libempathy-gtk/gossip-chat-window.c:730
+#: ../libempathy-gtk/empathy-chat-window.c:703
+#: ../libempathy-gtk/empathy-chat-window.c:733
msgid "New Message"
msgid_plural "New Messages"
msgstr[0] "Nowa wiadomość"
msgstr[1] "Nowe wiadomości"
msgstr[2] "Nowe wiadomości"
-#: ../libempathy-gtk/gossip-chat-window.c:706
+#: ../libempathy-gtk/empathy-chat-window.c:709
msgid "Chat Room"
msgstr "Pokój rozmów"
-#: ../libempathy-gtk/gossip-chat-window.c:711
-#: ../libempathy-gtk/gossip-chat-window.c:734
+#: ../libempathy-gtk/empathy-chat-window.c:714
+#: ../libempathy-gtk/empathy-chat-window.c:737
+#: ../libempathy-gtk/empathy-log-window.c:525
#, c-format
msgid "Conversation"
msgid_plural "Conversations (%d)"
@@ -694,380 +515,582 @@ msgstr[0] "Rozmowa"
msgstr[1] "%d rozmowy"
msgstr[2] "%d rozmów"
-#: ../libempathy-gtk/gossip-chat-window.c:1305
+#: ../libempathy-gtk/empathy-chat-window.c:1288
msgid "Typing a message."
msgstr "Wprowadzanie wiadomości."
-#: ../libempathy-gtk/gossip-chatrooms-window.c:251
+#: ../libempathy-gtk/empathy-chatrooms-window.c:251
msgid "Name"
msgstr "Nazwa"
-#: ../libempathy-gtk/gossip-chatrooms-window.c:269
+#: ../libempathy-gtk/empathy-chatrooms-window.c:269
msgid "Room"
msgstr "Pokój"
-#: ../libempathy-gtk/gossip-chatrooms-window.c:278
+#: ../libempathy-gtk/empathy-chatrooms-window.c:278
msgid "Auto Connect"
msgstr "Automatyczne łączenie"
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:2
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:1
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:5
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:1
+msgid "Account:"
+msgstr "Konto:"
+
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:2
msgid "Edit Favorite Room"
msgstr "Modyfikuj ulubiony pokój"
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:3
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:3
msgid "Join room on start_up"
msgstr "Dołącz do pokoju podczas _uruchomienia programu"
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:4
-msgid "Join this chat room when Gossip starts and you are connected"
-msgstr "Dołącz do tego pokoju podczas uruchomienia Empathy"
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:4
+msgid "Join this chat room when Empathy starts and you are connected"
+msgstr "Dołącz do tego pokoju podczas uruchomienia Empathy, gdy jesteś połączony"
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:5
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:5
msgid "Manage Favorite Rooms"
msgstr "Modyfikuj ulubione pokoje"
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:6
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:6
msgid "N_ame:"
msgstr "N_azwa:"
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:7
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:7
msgid "S_erver:"
msgstr "S_erwer:"
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:8
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:8
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:8
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:8
msgid "_Nickname:"
msgstr "_Pseudonim"
-#: ../libempathy-gtk/gossip-chatrooms-window.glade.h:9
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:9
+#: ../libempathy-gtk/empathy-chatrooms-window.glade.h:9
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:9
msgid "_Room:"
msgstr "_Pokój"
-#: ../libempathy-gtk/gossip-contact-list-view.c:195
+#: ../libempathy-gtk/empathy-contact-dialogs.c:216
+msgid "I would like to add you to my contact list."
+msgstr "Chciałbym Cię dodać do mojej listy kontaktów."
+
+#: ../libempathy-gtk/empathy-contact-dialogs.glade.h:1
+msgid "Decide _Later"
+msgstr "Z_decyduj później"
+
+#: ../libempathy-gtk/empathy-contact-dialogs.glade.h:2
+msgid "Subscription Request"
+msgstr "Prośba autoryzacji"
+
+#: ../libempathy-gtk/empathy-contact-list-view.c:196
msgid "_Contact"
msgstr "_Kontakt"
-#: ../libempathy-gtk/gossip-contact-list-view.c:199
+#: ../libempathy-gtk/empathy-contact-list-view.c:200
msgid "_Group"
msgstr "_Grupa"
-#: ../libempathy-gtk/gossip-contact-list-view.c:203
+#: ../libempathy-gtk/empathy-contact-list-view.c:204
+#: ../libempathy-gtk/empathy-main-window.glade.h:10
+msgid "_Chat"
+msgstr "_Rozmowa"
+
+#: ../libempathy-gtk/empathy-contact-list-view.c:204
msgid "Chat with contact"
msgstr "Porozmawiaj z kontaktem"
-#: ../libempathy-gtk/gossip-contact-list-view.c:207
+#: ../libempathy-gtk/empathy-contact-list-view.c:208
msgid "Infor_mation"
msgstr "Infor_macje"
-#: ../libempathy-gtk/gossip-contact-list-view.c:207
+#: ../libempathy-gtk/empathy-contact-list-view.c:208
msgid "View contact information"
msgstr "Wyświetl informacje o kontakcie"
-#: ../libempathy-gtk/gossip-contact-list-view.c:211
+#: ../libempathy-gtk/empathy-contact-list-view.c:212
msgid "Re_name"
msgstr "Zmień _nazwę"
-#: ../libempathy-gtk/gossip-contact-list-view.c:211
+#: ../libempathy-gtk/empathy-contact-list-view.c:212
msgid "Rename"
msgstr "Zmień nazwę"
-#: ../libempathy-gtk/gossip-contact-list-view.c:215
+#: ../libempathy-gtk/empathy-contact-list-view.c:216
msgid "Edit the groups and name for this contact"
msgstr "Modyfikuj grupy i nazwę dla tego kontaktu"
-#: ../libempathy-gtk/gossip-contact-list-view.c:219
+#: ../libempathy-gtk/empathy-contact-list-view.c:220
msgid "_Remove"
msgstr "_Usuń"
-#: ../libempathy-gtk/gossip-contact-list-view.c:219
+#: ../libempathy-gtk/empathy-contact-list-view.c:220
msgid "Remove contact"
msgstr "Usuń kontakt"
-#: ../libempathy-gtk/gossip-contact-list-view.c:223
+#: ../libempathy-gtk/empathy-contact-list-view.c:224
msgid "_Invite to Chat Room"
msgstr "_Zaproś do pokoju rozmów"
-#: ../libempathy-gtk/gossip-contact-list-view.c:223
+#: ../libempathy-gtk/empathy-contact-list-view.c:224
msgid "Invite to a currently open chat room"
msgstr "Zaproś do bieżącego pokoju rozmów"
-#: ../libempathy-gtk/gossip-contact-list-view.c:227
+#: ../libempathy-gtk/empathy-contact-list-view.c:228
msgid "_Send File..."
msgstr "_Wyślij plik..."
-#: ../libempathy-gtk/gossip-contact-list-view.c:227
+#: ../libempathy-gtk/empathy-contact-list-view.c:228
msgid "Send a file"
msgstr "Wyślij plik"
-#: ../libempathy-gtk/gossip-contact-list-view.c:231
+#: ../libempathy-gtk/empathy-contact-list-view.c:232
msgid "View previous conversations with this contact"
msgstr "Wyświetl poprzednie rozmowy z tym kontaktem"
-#: ../libempathy-gtk/gossip-contact-list-view.c:1480
+#: ../libempathy-gtk/empathy-contact-list-view.c:1488
msgid "Sorry, I don't want you in my contact list anymore."
msgstr "Przepraszam, ale już nie chcę Cię na mojej liście kontaktów."
-#: ../libempathy-gtk/gossip-group-chat.c:255
+#: ../libempathy-gtk/empathy-contact-widget.c:558
+msgid "Select"
+msgstr "Wybierz"
+
+#: ../libempathy-gtk/empathy-contact-widget.c:568
+#: ../libempathy-gtk/empathy-main-window.c:612
+msgid "Group"
+msgstr "Grupa"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:1
+msgid "<b>Client Information</b>"
+msgstr "<b>Informacje o kliencie</b>"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:2
+msgid "<b>Contact Details</b>"
+msgstr "<b>Szczegóły kontaktu</b>"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:3
+msgid "<b>Contact</b>"
+msgstr "<b>Kontakt</b>"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:4
+msgid "<b>Groups</b>"
+msgstr "<b>Grupy</b>"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:6
+msgid "Alias:"
+msgstr "Alias:"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:7
+msgid "Birthday:"
+msgstr "Urodziny:"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:8
+msgid "Client:"
+msgstr "Klient:"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:9
+msgid "Contact information"
+msgstr "Informacje o kontakcie"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:10
+msgid "Email:"
+msgstr "E-mail:"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:11
+msgid "Fullname:"
+msgstr "Pełna nazwa:"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:12
+msgid "Identifier:"
+msgstr "Identyfikator:"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:13
+msgid "Information requested..."
+msgstr "Żądanie informacji..."
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:14
+msgid "OS:"
+msgstr "System:"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:15
+msgid "Select the groups you want this contact to appear in, you can select more than one group or no groups."
+msgstr "Wybierz grupy, w których ma się pojawić ten kontakt, można wybrać więcej niż jedną grupę lub żadną."
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:16
+msgid "Version:"
+msgstr "Wersja:"
+
+#: ../libempathy-gtk/empathy-contact-widget.glade.h:17
+msgid "Web site:"
+msgstr "Strona WWW:"
+
+#: ../libempathy-gtk/empathy-group-chat.c:255
msgid "Enter the new topic you want to set for this room:"
msgstr "Wprowadź nowy temat dla tego pokoju:"
-#: ../libempathy-gtk/gossip-group-chat.c:363
+#: ../libempathy-gtk/empathy-group-chat.c:363
#, c-format
msgid "%s has joined the room"
msgstr "Użytkownik %s dołączył do pokoju"
-#: ../libempathy-gtk/gossip-group-chat.c:379
+#: ../libempathy-gtk/empathy-group-chat.c:379
#, c-format
msgid "%s has left the room"
msgstr "Użytkownik %s opuścił pokój"
-#: ../libempathy-gtk/gossip-group-chat.c:458
+#: ../libempathy-gtk/empathy-group-chat.c:458
#, c-format
msgid "Topic: %s"
msgstr "Temat: %s"
-#: ../libempathy-gtk/gossip-group-chat.c:575
+#: ../libempathy-gtk/empathy-group-chat.c:575
#, c-format
msgid "Topic set to: %s"
msgstr "Temat ustawiony na: %s"
-#: ../libempathy-gtk/gossip-group-chat.glade.h:1
+#: ../libempathy-gtk/empathy-group-chat.glade.h:1
msgid "<b>Topic:</b>"
msgstr "<b>Temat:</b>"
-#: ../libempathy-gtk/gossip-group-chat.glade.h:2
+#: ../libempathy-gtk/empathy-group-chat.glade.h:2
msgid "Group Chat"
msgstr "Rozmowa grupowa"
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.c:342
+#: ../libempathy-gtk/empathy-log-window.c:518
+msgid "Account"
+msgstr "Konto"
+
+#: ../libempathy-gtk/empathy-log-window.c:535
+msgid "Date"
+msgstr "Data"
+
+#: ../libempathy-gtk/empathy-log-window.glade.h:1
+msgid "Conversations"
+msgstr "Rozmowy"
+
+#: ../libempathy-gtk/empathy-log-window.glade.h:2
+msgid "Search"
+msgstr "Wyszukiwanie"
+
+#: ../libempathy-gtk/empathy-log-window.glade.h:3
+msgid "View Previous Conversations"
+msgstr "Wyświetl poprzednie konwersacje"
+
+#: ../libempathy-gtk/empathy-log-window.glade.h:4
+msgid "_For:"
+msgstr "_Dla:"
+
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.c:342
msgid "Chat Rooms"
msgstr "Pokoje rozmów"
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.c:388
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.c:388
msgid "Create"
msgstr "Utwórz"
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.c:393
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:4
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.c:393
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:4
msgid "Join"
msgstr "Dołącz"
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:2
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:2
msgid "Browse:"
msgstr "Przeglądaj:"
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:3
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:3
msgid "Enter the room name to join here or click on one or more rooms in the list."
msgstr "Wprowadź nazwę pokoju, do którego chcesz dołączyć lub kliknij jeden lub więcej pokoi na liście."
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:5
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:5
msgid "Join New"
msgstr "Dołącz do nowego"
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:6
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:6
msgid "Re_fresh"
msgstr "_Odśwież"
-#: ../libempathy-gtk/gossip-new-chatroom-dialog.glade.h:7
+#: ../libempathy-gtk/empathy-new-chatroom-dialog.glade.h:7
msgid "This list represents all chat rooms hosted on the server you have entered."
msgstr "Ta lista przedstawia wszystkie pokoje rozmów utrzymywane na tym serwerze."
-#: ../libempathy-gtk/gossip-preferences.c:250
+#: ../libempathy-gtk/empathy-main-window.c:277
+msgid "Show and edit accounts"
+msgstr "Wyświetl i modyfikuj konta"
+
+#: ../libempathy-gtk/empathy-main-window.c:633
+msgid "Contact"
+msgstr "Kontakt"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:1
+msgid "Contact List - Empathy"
+msgstr "Lista kontaktów - Empathy"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:2
+msgid "Context"
+msgstr "Kontekst"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:3
+msgid "Join _Favorites"
+msgstr "Połącz się z _ulubionymi"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:5
+msgid "Manage Favorites..."
+msgstr "Modyfikuj ulubione..."
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:6
+msgid "Show _Offline Contacts"
+msgstr "Wyświetlanie r_ozłączonych kontaktów"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:7
+msgid "_About"
+msgstr "O _programie"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:8
+msgid "_Accounts"
+msgstr "_Konta"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:11
+msgid "_Contents"
+msgstr "_Zawartość"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:13
+msgid "_Help"
+msgstr "Pomo_c"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:14
+#: ../libempathy-gtk/empathy-status-icon.glade.h:2
+msgid "_New Message..."
+msgstr "_Nowa wiadomość..."
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:15
+msgid "_Personal Information"
+msgstr "Informacje o _użytkowniku"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:16
+msgid "_Preferences"
+msgstr "_Preferencje"
+
+#: ../libempathy-gtk/empathy-main-window.glade.h:17
+#: ../libempathy-gtk/empathy-status-icon.glade.h:3
+msgid "_Quit"
+msgstr "_Zakończ"
+
+#: ../libempathy-gtk/empathy-preferences.c:250
msgid "Language"
msgstr "Język"
-#: ../libempathy-gtk/gossip-preferences.glade.h:1
+#: ../libempathy-gtk/empathy-preferences.glade.h:1
msgid "<b>Appearance</b>"
msgstr "<b>Wygląd</b>"
-#: ../libempathy-gtk/gossip-preferences.glade.h:2
+#: ../libempathy-gtk/empathy-preferences.glade.h:2
msgid "<b>Audio</b>"
msgstr "<b>Dźwięk</b>"
-#: ../libempathy-gtk/gossip-preferences.glade.h:3
+#: ../libempathy-gtk/empathy-preferences.glade.h:3
msgid "<b>Behaviour</b>"
msgstr "<b>Zachowanie</b>"
-#: ../libempathy-gtk/gossip-preferences.glade.h:4
+#: ../libempathy-gtk/empathy-preferences.glade.h:4
msgid "<b>Contact List</b>"
msgstr "<b>Lista kontaktów</b>"
-#: ../libempathy-gtk/gossip-preferences.glade.h:5
+#: ../libempathy-gtk/empathy-preferences.glade.h:5
msgid "<b>Languages</b>"
msgstr "<b>Języki</b>"
-#: ../libempathy-gtk/gossip-preferences.glade.h:6
+#: ../libempathy-gtk/empathy-preferences.glade.h:6
msgid "<b>Options</b>"
msgstr "<b>Opcje</b>"
-#: ../libempathy-gtk/gossip-preferences.glade.h:7
+#: ../libempathy-gtk/empathy-preferences.glade.h:7
msgid "<b>Visual</b>"
msgstr "<b>Obraz</b>"
-#: ../libempathy-gtk/gossip-preferences.glade.h:8
+#: ../libempathy-gtk/empathy-preferences.glade.h:8
msgid "<small>The list of languages reflects only the languages for which you have a dictionary installed.</small>"
msgstr "<small>Lista języków odzwierciedla stan faktycznie zainstalowanych słowników.</small>"
-#: ../libempathy-gtk/gossip-preferences.glade.h:9
+#: ../libempathy-gtk/empathy-preferences.glade.h:9
msgid "Avatars are user chosen images shown in the contact list"
msgstr "Awatary są obrazkami wybieranymi przez użytkownika, wyświetlanymi na liście kontaktów"
-#: ../libempathy-gtk/gossip-preferences.glade.h:10
+#: ../libempathy-gtk/empathy-preferences.glade.h:10
msgid "Chat Th_eme:"
msgstr "Motyw _rozmowy:"
-#: ../libempathy-gtk/gossip-preferences.glade.h:11
+#: ../libempathy-gtk/empathy-preferences.glade.h:11
msgid "Display notifications when contacts come _online"
msgstr "Wyświetlanie powiadomień, gdy kontakty stają się d_ostępne"
-#: ../libempathy-gtk/gossip-preferences.glade.h:12
+#: ../libempathy-gtk/empathy-preferences.glade.h:12
msgid "Enable sounds when _away"
msgstr "Włącz_enie dźwięku przy stanie nieobecności"
-#: ../libempathy-gtk/gossip-preferences.glade.h:13
+#: ../libempathy-gtk/empathy-preferences.glade.h:13
msgid "Enable sounds when _busy"
msgstr "Włączenie dźwięku przy stanie z_ajętości"
-#: ../libempathy-gtk/gossip-preferences.glade.h:14
+#: ../libempathy-gtk/empathy-preferences.glade.h:14
msgid "General"
msgstr "Ogólne"
-#: ../libempathy-gtk/gossip-preferences.glade.h:15
+#: ../libempathy-gtk/empathy-preferences.glade.h:15
msgid "Notifications"
msgstr "Powiadomienia"
-#: ../libempathy-gtk/gossip-preferences.glade.h:16
+#: ../libempathy-gtk/empathy-preferences.glade.h:16
msgid "Preferences"
msgstr "Preferencje"
-#: ../libempathy-gtk/gossip-preferences.glade.h:17
+#: ../libempathy-gtk/empathy-preferences.glade.h:17
msgid "Show _avatars"
msgstr "Wyświetlanie _awatarów"
-#: ../libempathy-gtk/gossip-preferences.glade.h:18
+#: ../libempathy-gtk/empathy-preferences.glade.h:18
msgid "Show _smileys as images"
msgstr "Konwertowanie _uśmieszków na obrazki"
-#: ../libempathy-gtk/gossip-preferences.glade.h:19
+#: ../libempathy-gtk/empathy-preferences.glade.h:19
msgid "Show co_mpact contact list"
msgstr "Wyświetlanie z_mniejszonej listy kontaktów"
-#: ../libempathy-gtk/gossip-preferences.glade.h:20
+#: ../libempathy-gtk/empathy-preferences.glade.h:20
msgid "Sort by _name"
msgstr "Sortuj wg _nazwy"
-#: ../libempathy-gtk/gossip-preferences.glade.h:21
+#: ../libempathy-gtk/empathy-preferences.glade.h:21
msgid "Sort by s_tate"
msgstr "Sortuj wg s_tanu"
-#: ../libempathy-gtk/gossip-preferences.glade.h:22
+#: ../libempathy-gtk/empathy-preferences.glade.h:22
msgid "Spell Checking"
msgstr "Sprawdzanie pisowni"
-#: ../libempathy-gtk/gossip-preferences.glade.h:23
+#: ../libempathy-gtk/empathy-preferences.glade.h:23
msgid "Themes"
msgstr "Motywy"
-#: ../libempathy-gtk/gossip-preferences.glade.h:24
+#: ../libempathy-gtk/empathy-preferences.glade.h:24
msgid "_Enable spell checking"
msgstr "_Włączenie sprawdzania pisowni"
-#: ../libempathy-gtk/gossip-preferences.glade.h:25
+#: ../libempathy-gtk/empathy-preferences.glade.h:25
msgid "_Open new chats in separate windows"
msgstr "_Otwieranie nowych rozmów w osobnych oknach"
-#: ../libempathy-gtk/gossip-preferences.glade.h:26
+#: ../libempathy-gtk/empathy-preferences.glade.h:26
msgid "_Play sound when messages arrive"
msgstr "_Odtwarzanie dźwięku po nadejściu wiadomości"
-#: ../libempathy-gtk/gossip-preferences.glade.h:27
+#: ../libempathy-gtk/empathy-preferences.glade.h:27
msgid "_Use for chat rooms"
msgstr "_Używanie dla pokojów rozmów"
-#: ../libempathy-gtk/gossip-presence-chooser.c:702
+#: ../libempathy-gtk/empathy-presence-chooser.c:664
msgid "Custom message..."
msgstr "Własny komunikat..."
#. Clear list
-#: ../libempathy-gtk/gossip-presence-chooser.c:724
+#: ../libempathy-gtk/empathy-presence-chooser.c:686
msgid "Clear List..."
msgstr "Wyczyść listę..."
-#: ../libempathy-gtk/gossip-presence-chooser.c:803
+#: ../libempathy-gtk/empathy-presence-chooser.c:765
msgid "Are you sure you want to clear the list?"
msgstr "Czy na pewno wyczyścić listę?"
-#: ../libempathy-gtk/gossip-presence-chooser.c:807
+#: ../libempathy-gtk/empathy-presence-chooser.c:769
msgid "This will remove any custom messages you have added to the list of preset status messages."
msgstr "To usunie wszystkie własne komunikaty dodane do listy własnych komunikatów o stanie."
-#: ../libempathy-gtk/gossip-presence-chooser.c:812
+#: ../libempathy-gtk/empathy-presence-chooser.c:774
msgid "Clear List"
msgstr "Wyczyść listę"
-#: ../libempathy-gtk/gossip-presence-chooser.glade.h:1
+#: ../libempathy-gtk/empathy-presence-chooser.glade.h:1
msgid "Enter status message:"
msgstr "Wprowadź komunikat stanu:"
-#: ../libempathy-gtk/gossip-presence-chooser.glade.h:2
+#: ../libempathy-gtk/empathy-presence-chooser.glade.h:2
msgid "Status Message Presets"
msgstr "Własne komunikaty stanu"
-#: ../libempathy-gtk/gossip-presence-chooser.glade.h:3
+#: ../libempathy-gtk/empathy-presence-chooser.glade.h:3
msgid "_Add to status message list"
msgstr "Dod_aj do listy komunikatów stanu"
-#: ../libempathy-gtk/gossip-private-chat.c:188
+#: ../libempathy-gtk/empathy-private-chat.c:188
#, c-format
msgid "%s went offline"
msgstr "Użytkownik %s rozłączył się"
-#: ../libempathy-gtk/gossip-private-chat.c:202
+#: ../libempathy-gtk/empathy-private-chat.c:202
#, c-format
msgid "%s has come online"
msgstr "Pojawił się użytkownik %s"
-#: ../libempathy-gtk/gossip-spell-dialog.c:85
+#: ../libempathy-gtk/empathy-spell-dialog.c:85
msgid "Word"
msgstr "Słowo"
-#: ../libempathy-gtk/gossip-spell-dialog.c:258
+#: ../libempathy-gtk/empathy-spell-dialog.c:258
msgid "Suggestions for the word"
msgstr "Sugestie dla słowa"
-#: ../libempathy-gtk/gossip-spell-dialog.glade.h:1
+#: ../libempathy-gtk/empathy-spell-dialog.glade.h:1
msgid "Spell Checker"
msgstr "Sprawdzanie pisowni"
-#: ../libempathy-gtk/gossip-spell-dialog.glade.h:2
+#: ../libempathy-gtk/empathy-spell-dialog.glade.h:2
msgid "Suggestions for the word:"
msgstr "Sugestie dla słowa"
-#: ../libempathy-gtk/gossip-theme-manager.c:87
+#: ../libempathy-gtk/empathy-status-icon.c:467
+#, c-format
+msgid ""
+"Subscription requested for %s\n"
+"Message: %s"
+msgstr ""
+"Prośba subskrypcji dla %s\n"
+"Wiadomość: %s"
+
+#: ../libempathy-gtk/empathy-status-icon.glade.h:1
+msgid "Status"
+msgstr "Stan"
+
+#: ../libempathy-gtk/empathy-status-icon.glade.h:4
+msgid "_Show Contact List"
+msgstr "_Wyświetl listę kontaków"
+
+#: ../libempathy-gtk/empathy-theme-manager.c:87
msgid "Classic"
msgstr "Klasyczny"
-#: ../libempathy-gtk/gossip-theme-manager.c:88
+#: ../libempathy-gtk/empathy-theme-manager.c:88
msgid "Simple"
msgstr "Prosty"
-#: ../libempathy-gtk/gossip-theme-manager.c:89
+#: ../libempathy-gtk/empathy-theme-manager.c:89
msgid "Clean"
msgstr "Wyczyść"
-#: ../libempathy-gtk/gossip-theme-manager.c:90
+#: ../libempathy-gtk/empathy-theme-manager.c:90
msgid "Blue"
msgstr "Niebieski"
-#: ../src/empathy-main.c:128
+#: ../src/empathy.c:160
msgid "Don't connect on startup"
msgstr "Bez łączenia przy uruchamianiu"
-#: ../src/empathy-main.c:136
+#: ../src/empathy.c:169
msgid "- Empathy Instant Messenger"
msgstr "- Komunikator internetowy Empathy"
+#~ msgid "Sorry, I don't want you in my contact list."
+#~ msgstr "Przepraszam, nie chcę Ciebie na mojej liście kontaktów."
+
#, fuzzy
#~ msgid ""
#~ "<small><b><span foreground=\"#555\">Example: user@jabber.org</span></b></"
@@ -1236,10 +1259,6 @@ msgstr "- Komunikator internetowy Empathy"
#~ msgstr "Połącz"
#, fuzzy
-#~ msgid "Account"
-#~ msgstr "Konto Jabbera"
-
-#, fuzzy
#~ msgid "Conversation With"
#~ msgstr "_Rozmowa"
#~ msgid "List the available accounts"
@@ -1391,10 +1410,6 @@ msgstr "- Komunikator internetowy Empathy"
#~ msgstr "Z_ałóż konto..."
#, fuzzy
-#~ msgid "Search"
-#~ msgstr "_Znajdź..."
-
-#, fuzzy
#~ msgid "This is the name that will be used on your roster for this contact"
#~ msgstr "Jaki pseudonim ma być używany dla tego kontaktu?"
@@ -1409,10 +1424,6 @@ msgstr "- Komunikator internetowy Empathy"
#~ msgstr "Ta nazwa będzie użyta do identyfikacji w oknach rozmowy."
#, fuzzy
-#~ msgid "View Previous Conversations"
-#~ msgstr "_Rozmowa"
-
-#, fuzzy
#~ msgid "Which account do you want to use?"
#~ msgstr "Jakiej nazwy użytkownika chcesz używać?"
@@ -1436,10 +1447,6 @@ msgstr "- Komunikator internetowy Empathy"
#~ msgstr "Wprowadź identyfikator osoby, do której chcesz wysłać wiadomość."
#, fuzzy
-#~ msgid "_For:"
-#~ msgstr "P_ort:"
-
-#, fuzzy
#~ msgid "_Group:"
#~ msgstr "Grupa"
diff --git a/src/Makefile.am b/src/Makefile.am
index b89a4218d..c7344c8c8 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -8,8 +8,9 @@ AM_CPPFLAGS = \
$(EMPATHY_CFLAGS) \
$(WARN_CFLAGS)
-LDADD = \
+LDADD = \
$(top_builddir)/libempathy-gtk/libempathy-gtk.la \
+ $(top_builddir)/libempathy/libempathy.la \
$(EMPATHY_LIBS)
bin_PROGRAMS = \
diff --git a/src/empathy.c b/src/empathy.c
index 6ca47192d..416d2134d 100644
--- a/src/empathy.c
+++ b/src/empathy.c
@@ -43,6 +43,7 @@
#include <libempathy/empathy-contact.h>
#include <libempathy/empathy-chandler.h>
#include <libempathy/empathy-tp-chat.h>
+#include <libempathy/empathy-tp-chatroom.h>
#include <libempathy/empathy-idle.h>
#include <libempathy-gtk/empathy-main-window.h>
#include <libempathy-gtk/empathy-status-icon.h>
@@ -117,7 +118,11 @@ new_channel_cb (EmpathyChandler *chandler,
EmpathyTpChat *tp_chat;
/* The chat died, give him the new text channel */
- tp_chat = empathy_tp_chat_new (account, tp_chan);
+ if (empathy_chat_is_group_chat (chat)) {
+ tp_chat = EMPATHY_TP_CHAT (empathy_tp_chatroom_new (account, tp_chan));
+ } else {
+ tp_chat = empathy_tp_chat_new (account, tp_chan);
+ }
empathy_chat_set_tp_chat (chat, tp_chat);
g_object_unref (tp_chat);
}