mail-notification

Fork of Jean-Yves Lefort's mail-notification, a tray icon to notify of new mail
git clone https://code.djc.id.au/git/mail-notification/
commit 250fff98fd565c625bdc8d7542efecc0ce3e990a
parent a77023f052f6fb77a8c930565d4ba1690595b89d
Author: Jean-Yves Lefort <jylefort@brutele.be>
Date:   Thu, 25 Nov 2004 10:44:48 +1000

mail-notification-1.0

* Some minor IMAP issues have been fixed
* Some IMAP servers did not properly support the IDLE
  extension, so it can now be disabled in the mailbox
  properties
* If the POP3 or IMAP password is left blank, it will now be
  prompted only if needed
* When MIME support was disabled, the Sylpheed backend was not
  considering unread messages as new: fixed

* Updated translations:
        * Serbian (Filip Miletic)
        * German (Hendrik Brandt)
        * Portuguese (Duarte Henriques)

* New translations:
        * Polish (Tomasz Sarota-Raczek)

Diffstat:
MAUTHORS | 12+++++++-----
MNEWS | 41++++++++++++++++++++++++++++++-----------
Mconfigure | 22+++++++++++-----------
Mconfigure.ac | 4++--
Mhelp/C/mail-notification-C.omf | 4++--
Mhelp/C/mail-notification.xml | 42++++++++++++++++++++++++++++++++++++++----
Mpo/bg.gmo | 0
Mpo/bg.po | 190+++++++++++++++++++++++++++++++++++++++++--------------------------------------
Mpo/de.gmo | 0
Mpo/de.po | 344++++++++++++++++++++++++++++++++++++-------------------------------------------
Mpo/fr.gmo | 0
Mpo/fr.po | 194+++++++++++++++++++++++++++++++++++++++++--------------------------------------
Mpo/mail-notification.pot | 190+++++++++++++++++++++++++++++++++++++++++--------------------------------------
Apo/pl.gmo | 0
Apo/pl.po | 1764+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mpo/pt.gmo | 0
Mpo/pt.po | 310+++++++++++++++++++++++++++++++++++++------------------------------------------
Mpo/ru.gmo | 0
Mpo/ru.po | 190+++++++++++++++++++++++++++++++++++++++++--------------------------------------
Mpo/sr.gmo | 0
Mpo/sr.po | 268++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mpo/sr@Latn.gmo | 0
Mpo/sr@Latn.po | 268++++++++++++++++++++++++++++++++++++++++----------------------------------------
Msrc/Makefile.am | 72++++++++++++++++++++++++++++++++++++------------------------------------
Msrc/Makefile.in | 72++++++++++++++++++++++++++++++++++++------------------------------------
Msrc/mn-about-dialog.c | 2+-
Msrc/mn-auth-combo-box.c | 2+-
Msrc/mn-authenticated-mailbox-private.h | 10+++++++---
Msrc/mn-authenticated-mailbox.c | 222+++++++++++++++++++++++++++++++++++++------------------------------------------
Msrc/mn-authenticated-mailbox.gob | 112++++++++++++++++++++++++++++---------------------------------------------------
Msrc/mn-authenticated-mailbox.h | 14++------------
Msrc/mn-autodetect-mailbox-properties.c | 2+-
Msrc/mn-automation.c | 2+-
Msrc/mn-blinking-image.c | 2+-
Msrc/mn-client-session.c | 36+++++++++++++++++-------------------
Msrc/mn-client-session.h | 9+++++++--
Msrc/mn-gmail-mailbox-private.h | 4++--
Msrc/mn-gmail-mailbox-properties.c | 2+-
Msrc/mn-gmail-mailbox.c | 428+++++++++++++++++++++++++++++++++++++++++++------------------------------------
Msrc/mn-gmail-mailbox.gob | 61+++++++++++++++++++++++++++++++++++++++++++++++++------------
Msrc/mn-gmime-stream-vfs.c | 2+-
Msrc/mn-imap-mailbox-private.h | 6+++---
Msrc/mn-imap-mailbox-properties-private.h | 4+++-
Msrc/mn-imap-mailbox-properties.c | 77+++++++++++++++++++++++++++++++++++++++++++----------------------------------
Msrc/mn-imap-mailbox-properties.gob | 12+++++++++++-
Msrc/mn-imap-mailbox.c | 894+++++++++++++++++++++++++++++++++++++++++++------------------------------------
Msrc/mn-imap-mailbox.gob | 222++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------
Msrc/mn-mail-icon.c | 2+-
Msrc/mn-mailbox-view.c | 2+-
Msrc/mn-mailbox.c | 2+-
Msrc/mn-mailboxes.c | 2+-
Msrc/mn-maildir-mailbox.c | 2+-
Msrc/mn-mbox-mailbox.c | 2+-
Msrc/mn-message-box.c | 2+-
Msrc/mn-message.c | 2+-
Msrc/mn-mh-mailbox.c | 2+-
Msrc/mn-pending-mailbox.c | 2+-
Msrc/mn-pi-mailbox-properties.c | 2+-
Msrc/mn-pop3-mailbox-private.h | 4++--
Msrc/mn-pop3-mailbox-properties.c | 2+-
Msrc/mn-pop3-mailbox.c | 706++++++++++++++++++++++++++++++++++++++++++++-----------------------------------
Msrc/mn-pop3-mailbox.gob | 140+++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------
Msrc/mn-shell.c | 2+-
Msrc/mn-sylpheed-mailbox.c | 84+++++++++++++++++++++++++++++++------------------------------------------------
Msrc/mn-sylpheed-mailbox.gob | 66++++++++++++++++++++++++------------------------------------------
Msrc/mn-system-mailbox-properties.c | 2+-
Msrc/mn-tooltips.c | 2+-
Msrc/mn-unsupported-mailbox.c | 2+-
Msrc/mn-uri.c | 57++++++++++++++++++++++++++++++++++++++-------------------
Msrc/mn-uri.gob | 26+++++++++++++++++++++++---
Msrc/mn-uri.h | 3++-
Msrc/mn-util.c | 2+-
Mtests/test-uri.c | 2+-
73 files changed, 4671 insertions(+), 2563 deletions(-)
diff --git a/AUTHORS b/AUTHORS
@@ -5,13 +5,15 @@
 Developed by Jean-Yves Lefort <jylefort@brutele.be>.
 
 Contributors:
-	* Hendrik Brandt <eru@gmx.li> (german translations)
+	* Hendrik Brandt <eru@gmx.li> (German translations)
 	* Duarte Henriques <duarte_henriques@myrealbox.com>
-	  (portuguese translations)
-	* Dan Korostelev <dan@ats.energo.ru> (russian translations)
-	* Filip Miletic <filmil@gmail.com> (serbian translations)
-	* Vladimir Petkov <vpetkov@i-space.org> (bulgarian
+	  (Portuguese translations)
+	* Dan Korostelev <dan@ats.energo.ru> (Russian translations)
+	* Filip Miletic <filmil@gmail.com> (Serbian translations)
+	* Vladimir Petkov <vpetkov@i-space.org> (Bulgarian
 	  translations)
+	* Tomasz Sarota-Raczek <tomasz.sarota.raczek@gmail.com>
+	  (Polish translations)
 
 External art sources:
 	* Google (gmail.png)
diff --git a/NEWS b/NEWS
@@ -1,3 +1,22 @@
+1.0					November 25, 2004
+
+	* Some minor IMAP issues have been fixed
+	* Some IMAP servers did not properly support the IDLE
+	  extension, so it can now be disabled in the mailbox
+	  properties
+	* If the POP3 or IMAP password is left blank, it will now be
+	  prompted only if needed
+	* When MIME support was disabled, the Sylpheed backend was not
+	  considering unread messages as new: fixed
+
+	* Updated translations:
+		* Serbian (Filip Miletic)
+		* German (Hendrik Brandt)
+		* Portuguese (Duarte Henriques)
+
+	* New translations:
+		* Polish (Tomasz Sarota-Raczek)
+
 0.99					November 15, 2004
 
 	* The IMAP capabilities sent in a PREAUTH, AUTHENTICATE or
@@ -25,7 +44,7 @@
 	  file: fixed
 
 	* Updated translations:
-		* serbian (Filip Miletic)
+		* Serbian (Filip Miletic)
 
 0.8.0					October 31, 2004
 
@@ -61,9 +80,9 @@
 	* Minor fixes and cleanups
 
 	* Updated translations:
-		* serbian (Filip Miletic)
-		* german (Hendrik Brandt)
-		* portuguese (Duarte Henriques)
+		* Serbian (Filip Miletic)
+		* German (Hendrik Brandt)
+		* Portuguese (Duarte Henriques)
 
 0.7.0					October 6, 2004
 
@@ -91,9 +110,9 @@
 	  ignored: fixed (Julio M. Merino Vidal)
 	* A few minor issues have been fixed
 	* Some cleanups have been performed
-	* The german translations have been updated (Hendrik Brandt)
-	* Added serbian translations (Filip Miletic)
-	* Added bulgarian translations (Vladimir Petkov)
+	* The German translations have been updated (Hendrik Brandt)
+	* Added Serbian translations (Filip Miletic)
+	* Added Bulgarian translations (Vladimir Petkov)
 
 0.6.2					September 9, 2004
 
@@ -114,8 +133,8 @@
 	* Fixed a typo in the MD5 code which prevented builds on some
 	  platforms (reported by Andy Shaw)
 	* Automatic mailboxes were also polled: fixed
-	* Added german translations (Hendrik Brandt)
-	* Added portuguese translations (Duarte Henriques)
+	* Added German translations (Hendrik Brandt)
+	* Added Portuguese translations (Duarte Henriques)
 	* A few minor issues have been fixed
 	* Some cleanups have been performed
 	* Now requires GNOME version 2.6 or superior
@@ -163,7 +182,7 @@
 	  address rather than as a hostname
 	* Now uses intltool
 	* The manual has been improved
-	* Added russian translations for the .desktop file (submitted
+	* Added Russian translations for the .desktop file (submitted
 	  by Dan Korostelev)
 	* The output of ./configure has been cleaned up
 	* ChangeLog files were not being accurately maintained and are
@@ -231,7 +250,7 @@
 	* Is now a GNOME application
 	* Added a graphical user interface (preferences dialog and
 	  popup menu)
-	* Internationalization has been performed, and a french
+	* Internationalization has been performed, and a French
 	  translation is already available
 	* Switched to Autoconf 2.57 and Automake 1.7.5
 
diff --git a/configure b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for mail-notification 0.99.
+# Generated by GNU Autoconf 2.59 for mail-notification 1.0.
 #
 # Report bugs to <jylefort@brutele.be>.
 #
@@ -269,8 +269,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
 # Identity of this package.
 PACKAGE_NAME='mail-notification'
 PACKAGE_TARNAME='mail-notification'
-PACKAGE_VERSION='0.99'
-PACKAGE_STRING='mail-notification 0.99'
+PACKAGE_VERSION='1.0'
+PACKAGE_STRING='mail-notification 1.0'
 PACKAGE_BUGREPORT='jylefort@brutele.be'
 
 ac_unique_file="src/mn-main.c"
@@ -780,7 +780,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures mail-notification 0.99 to adapt to many kinds of systems.
+\`configure' configures mail-notification 1.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -842,7 +842,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of mail-notification 0.99:";;
+     short | recursive ) echo "Configuration of mail-notification 1.0:";;
    esac
   cat <<\_ACEOF
 
@@ -986,7 +986,7 @@ fi
 test -n "$ac_init_help" && exit 0
 if $ac_init_version; then
   cat <<\_ACEOF
-mail-notification configure 0.99
+mail-notification configure 1.0
 generated by GNU Autoconf 2.59
 
 Copyright (C) 2003 Free Software Foundation, Inc.
@@ -1000,7 +1000,7 @@ cat >&5 <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by mail-notification $as_me 0.99, which was
+It was created by mail-notification $as_me 1.0, which was
 generated by GNU Autoconf 2.59.  Invocation command line was
 
   $ $0 $@
@@ -1819,7 +1819,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='mail-notification'
- VERSION='0.99'
+ VERSION='1.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -1986,7 +1986,7 @@ _ACEOF
 
 
 
-ALL_LINGUAS="bg de fr pt ru sr sr@Latn"
+ALL_LINGUAS="bg de fr pl pt ru sr sr@Latn"
 DEPDIR="${am__leading_dot}deps"
 
           ac_config_commands="$ac_config_commands depfiles"
@@ -8504,7 +8504,7 @@ _ASBOX
 } >&5
 cat >&5 <<_CSEOF
 
-This file was extended by mail-notification $as_me 0.99, which was
+This file was extended by mail-notification $as_me 1.0, which was
 generated by GNU Autoconf 2.59.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -8567,7 +8567,7 @@ _ACEOF
 
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-mail-notification config.status 0.99
+mail-notification config.status 1.0
 configured by $0, generated by GNU Autoconf 2.59,
   with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
 
diff --git a/configure.ac b/configure.ac
@@ -1,4 +1,4 @@
-AC_INIT(mail-notification, 0.99, jylefort@brutele.be)
+AC_INIT(mail-notification, 1.0, jylefort@brutele.be)
 AC_CONFIG_SRCDIR(src/mn-main.c)
 
 AC_PREREQ(2.59)
@@ -32,7 +32,7 @@ GETTEXT_PACKAGE=AC_PACKAGE_NAME
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Define to the gettext package name])
 AC_SUBST(GETTEXT_PACKAGE)
 
-ALL_LINGUAS="bg de fr pt ru sr sr@Latn"
+ALL_LINGUAS="bg de fr pl pt ru sr sr@Latn"
 AM_GLIB_GNU_GETTEXT
 
 AC_PROG_INTLTOOL
diff --git a/help/C/mail-notification-C.omf b/help/C/mail-notification-C.omf
@@ -12,9 +12,9 @@
       Mail Notification Manual
     </title>
     <date>
-      2004-11-15
+      2004-11-25
     </date>
-    <version identifier="2.9" date="2004-11-15" description="Tenth release"/>
+    <version identifier="2.10" date="2004-11-25" description="Eleventh release"/>
     <subject category="GNOME|Internet"/>
     <description>
       Mail Notification Manual
diff --git a/help/C/mail-notification.xml b/help/C/mail-notification.xml
@@ -2,9 +2,9 @@
 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" 
 "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
   <!ENTITY app "<application>Mail Notification</application>">
-  <!ENTITY appversion "0.99">
-  <!ENTITY manrevision "2.9">
-  <!ENTITY date "Monday, November 15, 2004">
+  <!ENTITY appversion "1.0">
+  <!ENTITY manrevision "2.10">
+  <!ENTITY date "Thursday, November 25, 2004">
 
   <!ENTITY project "The Mail Notification Project">
 
@@ -26,7 +26,7 @@
   <!ENTITY gnomevfs "<link linkend=&#34;gnomevfs&#34;>GnomeVFS</link>">
 ]>
 
-<!-- $Id: mail-notification.xml,v 1.79 2004/11/15 15:03:17 jylefort Exp $ -->
+<!-- $Id: mail-notification.xml,v 1.82 2004/11/25 00:35:55 jylefort Exp $ -->
 <!-- Mail Notification Manual -->
 
 <!-- Copyright (c) 2004 Jean-Yves Lefort -->
@@ -134,6 +134,17 @@
 	</revdescription>
       </revision>
       <revision>
+	<revnumber>Mail Notification Manual V2.9</revnumber>
+	<date>Monday, November 15, 2004</date>
+	<revdescription>
+	  <para role="author">
+	    Jean-Yves Lefort
+	    <email>jylefort@brutele.be</email>
+	  </para>
+	  <para role="publisher">&project;</para>
+	</revdescription>
+      </revision>
+      <revision>
 	<revnumber>Mail Notification Manual V2.8</revnumber>
 	<date>Thursday, November 4, 2004</date>
 	<revdescription>
@@ -893,6 +904,28 @@
 		</para>
 	      </listitem>
 	    </varlistentry>
+	    <varlistentry>
+	      <term><guilabel>Use idle mode if possible</guilabel></term>
+	      <listitem>
+		<para>
+		  If this option is enabled and the &imap; server supports
+		  the IDLE extension (as defined by <ulink url="http://www.ietf.org/rfc/rfc2177.txt" type="http">RFC 2177</ulink>),
+		  &app; will stay connected to the server and provide <link linkend="immediate-notification">immediate notification</link> of changes.
+		</para>
+		<note>
+		  <para>
+		    Some &imap; server programs (most notably, Pine
+		    imapd) are known to have a broken implementation
+		    of the IDLE extension.
+		  </para>
+		  <para>
+		    If &app; does not detect changes to an &imap;
+		    mailbox, disabling this option might fix the
+		    problem.
+		  </para>
+		</note>
+	      </listitem>
+	    </varlistentry>
 	  </variablelist>
 	</listitem>
       </varlistentry>
@@ -1298,6 +1331,7 @@ widget "*" style "mn-icons"</programlisting>
 	<listitem><para>Filip Miletic</para></listitem>
 	<listitem><para>Phil Nelson</para></listitem>
 	<listitem><para>Vladimir Petkov</para></listitem>
+	<listitem><para>Tomasz Sarota-Raczek</para></listitem>
 	<listitem><para>Edwin Shin</para></listitem>
       </itemizedlist>
     </sect2>
diff --git a/po/bg.gmo b/po/bg.gmo
Binary files differ.
diff --git a/po/bg.po b/po/bg.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: gnome in bulgarian 0.6.2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-11-15 16:03+0100\n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
 "PO-Revision-Date: 2004-10-05 16:13+0200\n"
 "Last-Translator: Vladimir \"Kaladan\" Petkov <vpetkov@i-space.org>\n"
 "Language-Team: Bulgarian <bg@li.org>\n"
@@ -366,14 +366,7 @@ msgstr "Vladimir Petkov <vpetkov@i-space.org>"
 msgid "<span style=\"italic\">autodetect</span>"
 msgstr "<span style=\"italic\">автоматично засичане</span>"
 
-#. translator: example output: Enter your password for POP3 mailbox jylefort@localhost.
-#: src/mn-authenticated-mailbox.gob:77
-#, c-format
-msgid "Enter your password for %s mailbox %s."
-msgstr ""
-
-#. translator: example output: ... into POP3 mailbox jylefort@localhost ...
-#: src/mn-authenticated-mailbox.gob:98
+#: src/mn-authenticated-mailbox.gob:80
 #, c-format
 msgid ""
 "Mail Notification was unable to log into %s mailbox %s, possibly because the "
@@ -382,7 +375,12 @@ msgid ""
 "Please re-enter your password."
 msgstr ""
 
-#: src/mn-authenticated-mailbox.gob:164
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr ""
+
+#: src/mn-authenticated-mailbox.gob:132
 #, c-format
 msgid ""
 "<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
@@ -411,85 +409,85 @@ msgstr "Избор на файл или папка"
 msgid "Whether the image is blinking or not"
 msgstr "Дали изображението да мига или не"
 
-#: src/mn-client-session.c:229
+#: src/mn-client-session.c:220
 #, c-format
 msgid "resolving %s"
 msgstr "търсене на %s"
 
-#: src/mn-client-session.c:239
+#: src/mn-client-session.c:230
 #, c-format
 msgid "unable to resolve %s: %s"
 msgstr "неуспех при намирането на %s: %s"
 
-#: src/mn-client-session.c:276
+#: src/mn-client-session.c:267
 #, c-format
 msgid "%s: unsupported address family"
 msgstr ""
 
-#: src/mn-client-session.c:283
+#: src/mn-client-session.c:274
 #, c-format
 msgid "%s: unable to create socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:287
+#: src/mn-client-session.c:278
 #, c-format
 msgid "connecting to %s (%s) port %i"
 msgstr "свързване с %s (%s) порт %i"
 
-#: src/mn-client-session.c:290
+#: src/mn-client-session.c:281
 #, c-format
 msgid "unable to connect: %s"
 msgstr "неуспех при свързването: %s"
 
-#: src/mn-client-session.c:295
+#: src/mn-client-session.c:286
 msgid "connected successfully"
 msgstr "успешно свързване"
 
 #. if reached, we couldn't find a working address
-#: src/mn-client-session.c:301
+#: src/mn-client-session.c:292
 #, c-format
 msgid "unable to connect to %s"
 msgstr "неуспех при свързването с %s"
 
-#: src/mn-client-session.c:317
+#: src/mn-client-session.c:308
 #, c-format
 msgid "unable to initialize the OpenSSL library: %s"
 msgstr ""
 
-#: src/mn-client-session.c:325
+#: src/mn-client-session.c:316
 #, c-format
 msgid "unable to create a SSL/TLS object: %s"
 msgstr ""
 
-#: src/mn-client-session.c:331
+#: src/mn-client-session.c:322
 #, c-format
 msgid "unable to set the SSL/TLS file descriptor: %s"
 msgstr ""
 
-#: src/mn-client-session.c:337
+#: src/mn-client-session.c:328
 #, c-format
 msgid "unable to perform the SSL/TLS handshake: %s"
 msgstr ""
 
-#: src/mn-client-session.c:343
+#: src/mn-client-session.c:334
 msgid "untrusted server"
 msgstr "непроверен сървър"
 
-#: src/mn-client-session.c:347
+#: src/mn-client-session.c:338
 #, c-format
 msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
 msgstr ""
 
-#: src/mn-client-session.c:394
+#: src/mn-client-session.c:385
 #, c-format
 msgid "%s, fingerprint: %s"
 msgstr "%s, пръстов отпечатък: %s"
 
-#: src/mn-client-session.c:423
+#: src/mn-client-session.c:414
 msgid "missing certificate"
 msgstr "липсващ сертификат"
 
-#: src/mn-client-session.c:449
+#: src/mn-client-session.c:440
 #, c-format
 msgid ""
 "Mail Notification was unable to trust \"%s\" (%s). It is possible that "
@@ -501,131 +499,131 @@ msgid ""
 "shown again."
 msgstr ""
 
-#: src/mn-client-session.c:466
+#: src/mn-client-session.c:457
 msgid "Connect to untrusted server?"
 msgstr "Свързване с непроверен сървър?"
 
-#: src/mn-client-session.c:471
+#: src/mn-client-session.c:462
 msgid "Co_nnect"
 msgstr "Свъ_рзване"
 
-#: src/mn-client-session.c:527
+#: src/mn-client-session.c:518
 #, c-format
 msgid "response \"%s\" is not valid in current context"
 msgstr ""
 
-#: src/mn-client-session.c:553
+#: src/mn-client-session.c:544
 #, c-format
 msgid "unable to parse response \"%s\""
 msgstr "неуспех при преглед на отговор \"%s\""
 
-#: src/mn-client-session.c:601 src/mn-client-session.c:608
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
 #, c-format
 msgid "unable to read from server: %s"
 msgstr "неуспех при четенето от сървър: %s"
 
-#: src/mn-client-session.c:606
+#: src/mn-client-session.c:597
 msgid "unable to read from server: EOF"
 msgstr "неуспех при четенето от сървър: EOF"
 
-#: src/mn-client-session.c:618
+#: src/mn-client-session.c:609
 #, c-format
 msgid "unable to decode data using SASL: %s"
 msgstr ""
 
-#: src/mn-client-session.c:755
+#: src/mn-client-session.c:746
 #, c-format
 msgid "unable to encode data using SASL: %s"
 msgstr ""
 
-#: src/mn-client-session.c:786 src/mn-client-session.c:793
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
 #, c-format
 msgid "unable to write to server: %s"
 msgstr "неуспех при записването на сървър: %s"
 
-#: src/mn-client-session.c:791
+#: src/mn-client-session.c:782
 msgid "unable to write to server: EOF"
 msgstr "неуспех при записването на сървър: EOF"
 
-#: src/mn-client-session.c:823
+#: src/mn-client-session.c:814
 #, c-format
 msgid "unable to encode Base64: %s"
 msgstr ""
 
-#: src/mn-client-session.c:927
+#: src/mn-client-session.c:925
 #, c-format
 msgid "unable to initialize the SASL library: %s"
 msgstr ""
 
-#: src/mn-client-session.c:936
+#: src/mn-client-session.c:934
 #, c-format
 msgid "unable to retrieve local address of socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:942
+#: src/mn-client-session.c:940
 #, c-format
 msgid "unable to retrieve remote address of socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:976
+#: src/mn-client-session.c:974
 #, c-format
 msgid "warning: unable to set SASL security properties: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1015
+#: src/mn-client-session.c:998
 msgid ""
 "unable to start SASL authentication: SASL asked for something we did not know"
 msgstr ""
 
-#: src/mn-client-session.c:1019
+#: src/mn-client-session.c:1017
 #, c-format
 msgid "unable to start SASL authentication: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1023
+#: src/mn-client-session.c:1021
 #, c-format
 msgid "unable to create a SASL connection: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1073
+#: src/mn-client-session.c:1058
 msgid "SASL asked for something we did not know, aborting SASL authentication"
 msgstr ""
 
-#: src/mn-client-session.c:1077
+#: src/mn-client-session.c:1075
 #, c-format
 msgid "%s, aborting SASL authentication"
 msgstr ""
 
 #. compliance error
-#: src/mn-client-session.c:1082
+#: src/mn-client-session.c:1080
 #, c-format
 msgid "unable to decode Base64 input from server: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1085
+#: src/mn-client-session.c:1083
 msgid ""
 "the server sent a SASL challenge, but there was a pending initial SASL "
 "client response"
 msgstr ""
 
-#: src/mn-client-session.c:1099
+#: src/mn-client-session.c:1097
 msgid ""
 "the server did not send a SASL challenge, but there was no pending initial "
 "SASL client response"
 msgstr ""
 
-#: src/mn-client-session.c:1124
+#: src/mn-client-session.c:1122
 #, c-format
 msgid "a SASL security layer of strength factor %i is now active"
 msgstr ""
 
 #. a security layer is active but we can't retrieve maxoutbuf -> fatal
-#: src/mn-client-session.c:1129
+#: src/mn-client-session.c:1127
 #, c-format
 msgid "unable to get SASL_MAXOUTBUF property: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1135
+#: src/mn-client-session.c:1133
 #, c-format
 msgid "warning: unable to get SASL_SSF property: %s"
 msgstr ""
@@ -653,33 +651,33 @@ msgid ""
 "when needed)"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:81
+#: src/mn-gmail-mailbox.gob:82
 msgid "libsoup has not been compiled with SSL/TLS support"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:123
+#: src/mn-gmail-mailbox.gob:160
 #, fuzzy, c-format
 msgid "unable to parse URI \"%s\""
 msgstr "неуспех при преглед на отговор \"%s\""
 
-#: src/mn-gmail-mailbox.gob:177
+#: src/mn-gmail-mailbox.gob:214
 #, c-format
 msgid "unable to transfer data: %s"
 msgstr "неуспех при пренасянето на данни: %s"
 
-#: src/mn-gmail-mailbox.gob:298
+#: src/mn-gmail-mailbox.gob:335
 msgid "logging in"
 msgstr "влизане"
 
-#: src/mn-gmail-mailbox.gob:376
+#: src/mn-gmail-mailbox.gob:413
 msgid "login failed"
 msgstr "влизането е неуспешно"
 
-#: src/mn-gmail-mailbox.gob:451
+#: src/mn-gmail-mailbox.gob:488
 msgid "searching for unread mail"
 msgstr "търсене за непрочетена поща"
 
-#: src/mn-gmail-mailbox.gob:490
+#: src/mn-gmail-mailbox.gob:527
 msgid "unable to parse Gmail data"
 msgstr "неуспех при прегледа на данни от Gmail"
 
@@ -708,103 +706,111 @@ msgstr "неуспех при следенето %s: %s"
 msgid "unable to close %s: %s"
 msgstr "неуспех при затварянето на папката: %s"
 
-#: src/mn-imap-mailbox-properties.gob:93
+#: src/mn-imap-mailbox-properties.gob:94
 msgid "Mailbox:"
 msgstr "Пощенска кутия:"
 
-#: src/mn-imap-mailbox-properties.gob:97
+#: src/mn-imap-mailbox-properties.gob:98
 msgid "in_box"
 msgstr "ку_тия"
 
-#: src/mn-imap-mailbox-properties.gob:108
+#: src/mn-imap-mailbox-properties.gob:109
 msgid "oth_er:"
 msgstr "др_уги"
 
-#: src/mn-imap-mailbox-properties.gob:123
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr ""
+
+#: src/mn-imap-mailbox-properties.gob:129
 msgid "The hostname or IP address of the IMAP server"
 msgstr "Хостът или IP адресът на IMAP сървъра"
 
-#: src/mn-imap-mailbox-properties.gob:124
+#: src/mn-imap-mailbox-properties.gob:130
 msgid "Your username on the IMAP server"
 msgstr "Потребителското ви име за IMAP сървъра"
 
-#: src/mn-imap-mailbox-properties.gob:125
+#: src/mn-imap-mailbox-properties.gob:131
 msgid ""
 "Your password on the IMAP server (if left blank, you will be prompted for "
 "the password when needed)"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:126
-#: src/mn-imap-mailbox-properties.gob:127
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
 msgid "The port number of the IMAP server"
 msgstr "Номера на порта на IMAP сървъра"
 
-#: src/mn-imap-mailbox-properties.gob:128
+#: src/mn-imap-mailbox-properties.gob:134
 msgid "The mailbox name"
 msgstr "Име на пощенската кутия"
 
-#: src/mn-imap-mailbox.gob:165 src/mn-pop3-mailbox.gob:142
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr ""
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
 msgid "SSL/TLS support has not been compiled in"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:244
+#: src/mn-imap-mailbox.gob:246
 msgid "server did not send capabilities"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:390
+#: src/mn-imap-mailbox.gob:418
 msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:391
+#: src/mn-imap-mailbox.gob:419
 msgid "unable to login"
 msgstr "неуспех при влизането"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:538
+#: src/mn-imap-mailbox.gob:571
 #, fuzzy
 msgid "server did not send search results"
 msgstr "сървърът не изпраща състоянието"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:618
+#: src/mn-imap-mailbox.gob:651
 #, fuzzy
 msgid "server did not send all the messages we requested"
 msgstr "сървърът не изпраща състоянието"
 
-#: src/mn-imap-mailbox.gob:667
+#: src/mn-imap-mailbox.gob:700
 #, fuzzy
 msgid "unable to fetch message"
 msgstr "неуспех при свързването: %s"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:785
+#: src/mn-imap-mailbox.gob:818
 msgid "server did not send status"
 msgstr "сървърът не изпраща състоянието"
 
-#: src/mn-imap-mailbox.gob:1057 src/mn-pop3-mailbox.gob:922
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
 msgid "unknown server error"
 msgstr "неизвестна грешка в сървъра"
 
-#: src/mn-imap-mailbox.gob:1147 src/mn-pop3-mailbox.gob:226
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
 msgid "server does not support in-band SSL/TLS"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1168 src/mn-pop3-mailbox.gob:841
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
 msgid ""
 "a SASL authentication mechanism was selected but SASL support has not been "
 "compiled in"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1176 src/mn-pop3-mailbox.gob:853
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
 #, c-format
 msgid "unknown authentication mechanism \"%s\""
 msgstr "неизвестен механизъм за идентификация \"%s\""
 
-#: src/mn-imap-mailbox.gob:1194
+#: src/mn-imap-mailbox.gob:1246
 msgid "falling back to IMAP LOGIN authentication"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1199 src/mn-pop3-mailbox.gob:888
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
 msgid "authentication failed"
 msgstr "неуспешна идентификация"
 
@@ -1224,31 +1230,31 @@ msgstr ""
 msgid "The port number of the POP3 server"
 msgstr "Номера на порта на POP3 сървъра"
 
-#: src/mn-pop3-mailbox.gob:272
+#: src/mn-pop3-mailbox.gob:273
 msgid "invalid arguments for the LOGIN-DELAY capability"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:556
+#: src/mn-pop3-mailbox.gob:590
 #, fuzzy
 msgid "unknown error"
 msgstr "неизвестна грешка в сървъра"
 
-#: src/mn-pop3-mailbox.gob:690
+#: src/mn-pop3-mailbox.gob:729
 #, c-format
 msgid "honouring LOGIN-DELAY, sleeping for %i second"
 msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/mn-pop3-mailbox.gob:849
+#: src/mn-pop3-mailbox.gob:893
 msgid "server does not support APOP authentication"
 msgstr "Сървърът не поддържа идентификация тип APOP"
 
-#: src/mn-pop3-mailbox.gob:877
+#: src/mn-pop3-mailbox.gob:922
 msgid "falling back to APOP authentication"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:882
+#: src/mn-pop3-mailbox.gob:927
 msgid "falling back to USER/PASS authentication"
 msgstr ""
 
@@ -1318,17 +1324,17 @@ msgstr "Избор на _всички"
 msgid "_Mail Summary"
 msgstr ""
 
-#: src/mn-sylpheed-mailbox.gob:122
+#: src/mn-sylpheed-mailbox.gob:119
 #, c-format
 msgid "unable to open folder: %s"
 msgstr "неуспех при отварянето на папката: %s"
 
-#: src/mn-sylpheed-mailbox.gob:180
+#: src/mn-sylpheed-mailbox.gob:165
 #, c-format
 msgid "unable to close folder: %s"
 msgstr "неуспех при затварянето на папката: %s"
 
-#: src/mn-sylpheed-mailbox.gob:183
+#: src/mn-sylpheed-mailbox.gob:168
 #, c-format
 msgid "error while reading folder: %s"
 msgstr "грешка при четенето на папката: %s"
diff --git a/po/de.gmo b/po/de.gmo
Binary files differ.
diff --git a/po/de.po b/po/de.po
@@ -5,13 +5,13 @@
 # mail-notification package.
 #
 # Hendrik Brandt <eru@gmx.li>, 2004.
-#
+# 
 msgid ""
 msgstr ""
-"Project-Id-Version: mail-notification 0.7.1\n"
+"Project-Id-Version: mail-notification 1.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-11-15 16:03+0100\n"
-"PO-Revision-Date: 2004-10-24 10:59+0200\n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
+"PO-Revision-Date: 2004-11-21 17:14+0100\n"
 "Last-Translator: Hendrik Brandt <eru@gmx.li>\n"
 "Language-Team: German <gnome-de@gnome.org>\n"
 "MIME-Version: 1.0\n"
@@ -59,9 +59,8 @@ msgid "Delay between mail checks (seconds part)."
 msgstr "Abstand zwischen Eingangsüberprüfung (Sekundenteil)."
 
 #: data/mail-notification.schemas.in.h:5
-#, fuzzy
 msgid "Display mail summary in tooltip"
-msgstr "Die Nachrichtenübersicht anzeigen"
+msgstr "Nachrichtenübersicht als Minihilfe anzeigen"
 
 #: data/mail-notification.schemas.in.h:6
 msgid "Do not show the immediate notification error dialog"
@@ -69,7 +68,7 @@ msgstr "Den Fehlerdialog der Sofortbenachrichtigung  nicht sofort anzeigen"
 
 #: data/mail-notification.schemas.in.h:7
 msgid "Double-click action"
-msgstr ""
+msgstr "Aktion bei Doppelklick"
 
 #: data/mail-notification.schemas.in.h:8
 msgid "Enable mail summary popup"
@@ -96,14 +95,12 @@ msgid "Mail read command"
 msgstr "Befehl zum Lesen einer Nachricht"
 
 #: data/mail-notification.schemas.in.h:14
-#, fuzzy
 msgid "Mail reader command"
-msgstr "Befehl zum Lesen einer Nachricht"
+msgstr "Befehl zum Starten des E-Mail-Programms"
 
 #: data/mail-notification.schemas.in.h:15
-#, fuzzy
 msgid "Mail summary popup contents font"
-msgstr "Position der Nachrichtenübersicht"
+msgstr "Schrift für den Inhalt der Nachrichtenübersicht"
 
 #: data/mail-notification.schemas.in.h:16
 msgid "Mail summary popup horizontal offset"
@@ -114,9 +111,8 @@ msgid "Mail summary popup position"
 msgstr "Position der Nachrichtenübersicht"
 
 #: data/mail-notification.schemas.in.h:18
-#, fuzzy
 msgid "Mail summary popup title font"
-msgstr "Position der Nachrichtenübersicht"
+msgstr "Schrift für den Titel der Nachrichtenübersicht"
 
 #: data/mail-notification.schemas.in.h:19
 msgid "Mail summary popup vertical offset"
@@ -139,9 +135,8 @@ msgid "New mail command"
 msgstr "Befehl bei neuer Nachricht"
 
 #: data/mail-notification.schemas.in.h:24
-#, fuzzy
 msgid "Only display recent mail in mail summary popup"
-msgstr "Die Nachrichtenübersicht schließen"
+msgstr "Nur aktuelle Nachrichten in der Nachrichtenübersicht anzeigen"
 
 #: data/mail-notification.schemas.in.h:25
 msgid "Run a command when all mail is read"
@@ -160,15 +155,16 @@ msgid "Seconds to wait before closing the mail summary popup"
 msgstr "Wartezeit in Sekunden bis zum Schließen der Nachrichtenübersicht"
 
 #: data/mail-notification.schemas.in.h:29
-#, fuzzy
 msgid "Set a mail reader"
-msgstr "Wählen Sie eine Datei oder ein Verzeichnis"
+msgstr "Ein E-Mail-Programm festlegen"
 
 #: data/mail-notification.schemas.in.h:30
 msgid ""
 "The action to perform when the icon is double-clicked. Must be \"display-"
 "mail-summary\" or \"launch-mail-reader\"."
 msgstr ""
+"Die auszuführende Aktion wenn das Symbol doppelt angeklickt wird. Hat "
+"entweder den Wert »display-mail-summary« oder »launch-mail-reader«."
 
 #: data/mail-notification.schemas.in.h:31
 msgid ""
@@ -185,9 +181,8 @@ msgstr ""
 "Die Zeitspanne bis zum Schließen der Nachrichtenübersicht (Sekundenteil)."
 
 #: data/mail-notification.schemas.in.h:33
-#, fuzzy
 msgid "The command to run to launch the mail reader."
-msgstr "Der Befehl der ausgeführt wird, wenn alle Nachrichten gelesen wurden"
+msgstr "Der Befehl um das E-Mail-Programm zu starten"
 
 #: data/mail-notification.schemas.in.h:34
 msgid "The command to run when all mail is read."
@@ -198,14 +193,13 @@ msgid "The command to run when new mail arrives."
 msgstr "Der Befehl der ausgeführt wird, wenn eine neue Nachricht eintrifft."
 
 #: data/mail-notification.schemas.in.h:36
-#, fuzzy
 msgid "The custom font to use for the contents of the mail summary popup."
-msgstr "Die Wartedauer ehe die Nachrichtenübersicht geschlossen wurde"
+msgstr ""
+"Die benutzerdefinierte Schrift für den Inhalt der Nachrichtenübersicht."
 
 #: data/mail-notification.schemas.in.h:37
-#, fuzzy
 msgid "The custom font to use for the title of the mail summary popup."
-msgstr "Die Wartedauer ehe die Nachrichtenübersicht geschlossen wurde"
+msgstr "Die benutzerdefinierte Schrift für den Titel der Nachrichtenübersicht."
 
 #: data/mail-notification.schemas.in.h:38
 msgid "The height of the mail summary dialog in pixels."
@@ -271,14 +265,16 @@ msgid "Trusted servers list"
 msgstr "Liste vertrauensvoller Server"
 
 #: data/mail-notification.schemas.in.h:49
-#, fuzzy
 msgid "Use a custom font for the contents of the mail summary popup"
-msgstr "Wartezeit in Sekunden bis zum Schließen der Nachrichtenübersicht"
+msgstr ""
+"Eine benutzerdefinierte Schrift für den Inhalt der Nachrichtenübersicht "
+"verwenden"
 
 #: data/mail-notification.schemas.in.h:50
-#, fuzzy
 msgid "Use a custom font for the title of the mail summary popup"
-msgstr "Die Wartedauer ehe die Nachrichtenübersicht geschlossen wurde"
+msgstr ""
+"Eine benutzerdefinierte Schrift für den Titel der Nachrichtenübersicht "
+"verwenden"
 
 #: data/mail-notification.schemas.in.h:51
 msgid "Whether Mail Notification has already been run or not."
@@ -296,11 +292,10 @@ msgstr ""
 "Legt fest, ob ein Befehl ausgeführt wird, wenn eine neue Nachricht eintrifft."
 
 #: data/mail-notification.schemas.in.h:54
-#, fuzzy
 msgid "Whether to display the mail summary in the status icon tooltip or not."
 msgstr ""
-"Legt fest, ob die Nachrichtenübersicht angezeigt wird, wenn eine neue "
-"Nachricht eintrifft."
+"Legt fest, ob die Nachrichtenübersicht in der Minihilfe des Statussymbols "
+"angezeigt wird."
 
 #: data/mail-notification.schemas.in.h:55
 msgid "Whether to display the mail summary popup when new mail arrives or not."
@@ -309,11 +304,11 @@ msgstr ""
 "Nachricht eintrifft."
 
 #: data/mail-notification.schemas.in.h:56
-#, fuzzy
 msgid ""
 "Whether to hide previously displayed mail in the mail summary popup or not."
 msgstr ""
-"Legt fest, ob ein Befehl ausgeführt wird, wenn eine neue Nachricht eintrifft."
+"Legt fest, ob zuvor angezeigte Nachrichten in der Nachrichtenübersicht "
+"erneut angezeigt werden."
 
 #: data/mail-notification.schemas.in.h:57
 msgid ""
@@ -334,26 +329,23 @@ msgstr ""
 "Legt fest, ob ein Befehl ausgeführt wird, wenn eine neue Nachricht eintrifft."
 
 #: data/mail-notification.schemas.in.h:60
-#, fuzzy
 msgid "Whether to set a mail reader or not."
-msgstr ""
-"Legt fest, ob ein Befehl ausgeführt wird, wenn alle Nachrichten gelesen "
-"wurden."
+msgstr "Legt fest, ob ein E-Mail-Programm ausgewählt ist."
 
 #: data/mail-notification.schemas.in.h:61
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the contents of the mail summary popup or "
 "not."
 msgstr ""
-"Legt fest, ob ein Befehl ausgeführt wird, wenn eine neue Nachricht eintrifft."
+"Legt fest, ob für den Inhalt der Nachrichtenübersicht eine eigene Schrift "
+"verwendet werden soll."
 
 #: data/mail-notification.schemas.in.h:62
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the title of the mail summary popup or not."
 msgstr ""
-"Legt fest, ob ein Befehl ausgeführt wird, wenn eine neue Nachricht eintrifft."
+"Legt fest, ob für den Titel der Nachrichtenübersicht eine eigene Schrift "
+"verwendet werden soll."
 
 #: data/mail-notification.schemas.in.h:63
 msgid "Width of mail summary dialog"
@@ -390,14 +382,7 @@ msgstr "Hendrik Brandt <eru@gmx.li>"
 msgid "<span style=\"italic\">autodetect</span>"
 msgstr "<span style=\"italic\">automatisch erkennen</span>"
 
-#. translator: example output: Enter your password for POP3 mailbox jylefort@localhost.
-#: src/mn-authenticated-mailbox.gob:77
-#, c-format
-msgid "Enter your password for %s mailbox %s."
-msgstr "Bitte geben Sie das Passwort für %s-Postfach »%s«."
-
-#. translator: example output: ... into POP3 mailbox jylefort@localhost ...
-#: src/mn-authenticated-mailbox.gob:98
+#: src/mn-authenticated-mailbox.gob:80
 #, c-format
 msgid ""
 "Mail Notification was unable to log into %s mailbox %s, possibly because the "
@@ -411,7 +396,12 @@ msgstr ""
 "\n"
 "Bitte geben Sie das Passwort für dieses Postfach ein."
 
-#: src/mn-authenticated-mailbox.gob:164
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr "Bitte geben Sie das Passwort für %s-Postfach »%s«."
+
+#: src/mn-authenticated-mailbox.gob:132
 #, c-format
 msgid ""
 "<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
@@ -444,85 +434,85 @@ msgstr "Wählen Sie eine Datei oder ein Verzeichnis"
 msgid "Whether the image is blinking or not"
 msgstr "Legt fest, ob das Bild blinkt oder nicht"
 
-#: src/mn-client-session.c:229
+#: src/mn-client-session.c:220
 #, c-format
 msgid "resolving %s"
 msgstr "%s wird kontaktiert"
 
-#: src/mn-client-session.c:239
+#: src/mn-client-session.c:230
 #, c-format
 msgid "unable to resolve %s: %s"
 msgstr "%s konnte nicht kontaktiert werden: %s"
 
-#: src/mn-client-session.c:276
+#: src/mn-client-session.c:267
 #, c-format
 msgid "%s: unsupported address family"
 msgstr "%s: Adressfamilie wird nicht unterstützt"
 
-#: src/mn-client-session.c:283
+#: src/mn-client-session.c:274
 #, c-format
 msgid "%s: unable to create socket: %s"
 msgstr "%s: Socket konnte nciht erstellt werden: %s"
 
-#: src/mn-client-session.c:287
+#: src/mn-client-session.c:278
 #, c-format
 msgid "connecting to %s (%s) port %i"
 msgstr "Verbindung mit %s (%s) über Port %i wird hergestellt"
 
-#: src/mn-client-session.c:290
+#: src/mn-client-session.c:281
 #, c-format
 msgid "unable to connect: %s"
 msgstr "Es konnte nicht verbunden werden: %s"
 
-#: src/mn-client-session.c:295
+#: src/mn-client-session.c:286
 msgid "connected successfully"
 msgstr "Verbindung hergestellt"
 
 #. if reached, we couldn't find a working address
-#: src/mn-client-session.c:301
+#: src/mn-client-session.c:292
 #, c-format
 msgid "unable to connect to %s"
 msgstr "Es konnte keine Verbindung mit %s hergestellt werden"
 
-#: src/mn-client-session.c:317
+#: src/mn-client-session.c:308
 #, c-format
 msgid "unable to initialize the OpenSSL library: %s"
 msgstr "Die OpenSSL-Bibliothek konnte nicht initializiert werden: %s"
 
-#: src/mn-client-session.c:325
+#: src/mn-client-session.c:316
 #, c-format
 msgid "unable to create a SSL/TLS object: %s"
 msgstr "Es konnte kein SSL/TLS-Objekt erzeugt werden: %s"
 
-#: src/mn-client-session.c:331
+#: src/mn-client-session.c:322
 #, c-format
 msgid "unable to set the SSL/TLS file descriptor: %s"
 msgstr "Es konnte kein SSL/TLS-Dateideskriptor gesetzt werden: %s"
 
-#: src/mn-client-session.c:337
+#: src/mn-client-session.c:328
 #, c-format
 msgid "unable to perform the SSL/TLS handshake: %s"
 msgstr "Es konnte kein SSL/TLS-Handshake durchgeführt werden: %s"
 
-#: src/mn-client-session.c:343
+#: src/mn-client-session.c:334
 msgid "untrusted server"
 msgstr "nicht vertrauensvolle Server"
 
-#: src/mn-client-session.c:347
+#: src/mn-client-session.c:338
 #, c-format
 msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
 msgstr "Eine SSL/TLS-Zwischenschicht ist jetzt aktiv (%s, %s %i-Bit)"
 
-#: src/mn-client-session.c:394
+#: src/mn-client-session.c:385
 #, c-format
 msgid "%s, fingerprint: %s"
 msgstr "%s, Fingerabdruck %s"
 
-#: src/mn-client-session.c:423
+#: src/mn-client-session.c:414
 msgid "missing certificate"
 msgstr "kein Zertifikat"
 
-#: src/mn-client-session.c:449
+#: src/mn-client-session.c:440
 #, c-format
 msgid ""
 "Mail Notification was unable to trust \"%s\" (%s). It is possible that "
@@ -541,114 +531,114 @@ msgstr ""
 "sie auch tatsächlich mit »%s« verbunden sind. Falls Sie sich dennoch mit dem "
 "Server verbinden lassen, wird dieser Dialog in Zukunft nicht mehr angeziegt."
 
-#: src/mn-client-session.c:466
+#: src/mn-client-session.c:457
 msgid "Connect to untrusted server?"
 msgstr "Möchten Sie sich mit einem nicht vertrauenswürdigen Server verbinden?"
 
-#: src/mn-client-session.c:471
+#: src/mn-client-session.c:462
 msgid "Co_nnect"
 msgstr "_Verbinden"
 
-#: src/mn-client-session.c:527
+#: src/mn-client-session.c:518
 #, c-format
 msgid "response \"%s\" is not valid in current context"
 msgstr "Die Antwort »%s« ist in diesem Kontext nicht zugelassen"
 
-#: src/mn-client-session.c:553
+#: src/mn-client-session.c:544
 #, c-format
 msgid "unable to parse response \"%s\""
 msgstr "Die Antwort »%s« konnte nicht analysiert werden"
 
-#: src/mn-client-session.c:601 src/mn-client-session.c:608
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
 #, c-format
 msgid "unable to read from server: %s"
 msgstr "Es konnte nicht vom Server gelesen werden: %s"
 
-#: src/mn-client-session.c:606
+#: src/mn-client-session.c:597
 msgid "unable to read from server: EOF"
 msgstr "Es konnte nicht vom Server gelesen werden: EOF"
 
-#: src/mn-client-session.c:618
+#: src/mn-client-session.c:609
 #, c-format
 msgid "unable to decode data using SASL: %s"
 msgstr "Die Daten konnten nicht per SASL dekodiert werden: %s"
 
-#: src/mn-client-session.c:755
+#: src/mn-client-session.c:746
 #, c-format
 msgid "unable to encode data using SASL: %s"
 msgstr "Die Daten konnten nicht per SASL kodiert werden: %s"
 
-#: src/mn-client-session.c:786 src/mn-client-session.c:793
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
 #, c-format
 msgid "unable to write to server: %s"
 msgstr "Es konnte nicht auf den Server geschrieben werden: %s"
 
-#: src/mn-client-session.c:791
+#: src/mn-client-session.c:782
 msgid "unable to write to server: EOF"
 msgstr "Es konnte nicht auf den Server geschrieben werden: EOF"
 
-#: src/mn-client-session.c:823
+#: src/mn-client-session.c:814
 #, c-format
 msgid "unable to encode Base64: %s"
 msgstr "Es konnte nicht mit Base64 kodiert werden: %s"
 
-#: src/mn-client-session.c:927
+#: src/mn-client-session.c:925
 #, c-format
 msgid "unable to initialize the SASL library: %s"
 msgstr "Die SASL-Bibliothek konnte nicht initializiert werden: %s"
 
-#: src/mn-client-session.c:936
+#: src/mn-client-session.c:934
 #, c-format
 msgid "unable to retrieve local address of socket: %s"
 msgstr "Die lokale Adresse des Socket konnte nicht herausgefunden werden: %s"
 
-#: src/mn-client-session.c:942
+#: src/mn-client-session.c:940
 #, c-format
 msgid "unable to retrieve remote address of socket: %s"
 msgstr ""
 "Die entfernte Adresse des Socket konnte nicht herausgefunden werden: %s"
 
-#: src/mn-client-session.c:976
+#: src/mn-client-session.c:974
 #, c-format
 msgid "warning: unable to set SASL security properties: %s"
 msgstr ""
 "Warnung: Die SASL-Sicherheitseigenschaften konnten nicht gesetzt werden: %s"
 
-#: src/mn-client-session.c:1015
+#: src/mn-client-session.c:998
 msgid ""
 "unable to start SASL authentication: SASL asked for something we did not know"
 msgstr ""
 "Die SASL-Authentifizierung konnte nicht gestartet werden: es wurde eine "
 "unbekannte Anfrage von SASL gestellt"
 
-#: src/mn-client-session.c:1019
+#: src/mn-client-session.c:1017
 #, c-format
 msgid "unable to start SASL authentication: %s"
 msgstr "Die SASL-Authentifizierung konnte nicht gestartet werden: %s"
 
-#: src/mn-client-session.c:1023
+#: src/mn-client-session.c:1021
 #, c-format
 msgid "unable to create a SASL connection: %s"
 msgstr "Es konnte keine Verbindung mit SASL erzeugt werden: %s"
 
-#: src/mn-client-session.c:1073
+#: src/mn-client-session.c:1058
 msgid "SASL asked for something we did not know, aborting SASL authentication"
 msgstr ""
 "Es wurde eine unbekannte Anfrage von SASL gestellt, SASL-Authentifizierung "
 "wird abgebrochen"
 
-#: src/mn-client-session.c:1077
+#: src/mn-client-session.c:1075
 #, c-format
 msgid "%s, aborting SASL authentication"
 msgstr "%s, SASL-Authentifizierung wird abgebrochen"
 
 #. compliance error
-#: src/mn-client-session.c:1082
+#: src/mn-client-session.c:1080
 #, c-format
 msgid "unable to decode Base64 input from server: %s"
 msgstr "Die Server-seitige Base64-Eingabe konnte nicht dekodiert werden: %s"
 
-#: src/mn-client-session.c:1085
+#: src/mn-client-session.c:1083
 msgid ""
 "the server sent a SASL challenge, but there was a pending initial SASL "
 "client response"
@@ -656,7 +646,7 @@ msgstr ""
 "Der Server hat während einer beginnenden SASL-Client-Antwort einen Fehler "
 "gesendet"
 
-#: src/mn-client-session.c:1099
+#: src/mn-client-session.c:1097
 msgid ""
 "the server did not send a SASL challenge, but there was no pending initial "
 "SASL client response"
@@ -664,18 +654,18 @@ msgstr ""
 "Der Server hat kein SASL-Problem gesendet, während noch eine Client-seitige "
 "SASL-Reaktion begonnen wurde"
 
-#: src/mn-client-session.c:1124
+#: src/mn-client-session.c:1122
 #, c-format
 msgid "a SASL security layer of strength factor %i is now active"
 msgstr "Die SASL-Sicherheitsebene der Stärke %i ist jetzt aktiv"
 
 #. a security layer is active but we can't retrieve maxoutbuf -> fatal
-#: src/mn-client-session.c:1129
+#: src/mn-client-session.c:1127
 #, c-format
 msgid "unable to get SASL_MAXOUTBUF property: %s"
 msgstr "Der Wert SASL_MAXOUTBUF wurde nicht gefunden: %s"
 
-#: src/mn-client-session.c:1135
+#: src/mn-client-session.c:1133
 #, c-format
 msgid "warning: unable to get SASL_SSF property: %s"
 msgstr "Warnung: Der Wert SASL_SSF wurde nicht gefunden: %s"
@@ -705,33 +695,33 @@ msgstr ""
 "Ihr Gmail-Passwort (falls Sie nichts eingeben, werden Sie jedesmal wenn es "
 "notwendig ist nach dem Passwort gefragt)"
 
-#: src/mn-gmail-mailbox.gob:81
+#: src/mn-gmail-mailbox.gob:82
 msgid "libsoup has not been compiled with SSL/TLS support"
 msgstr "»libsoup« wurde nicht mit SSL/TLS-Unterstützung erstellt"
 
-#: src/mn-gmail-mailbox.gob:123
+#: src/mn-gmail-mailbox.gob:160
 #, c-format
 msgid "unable to parse URI \"%s\""
 msgstr "Die Adresse »%s« konnte nicht analysiert werden"
 
-#: src/mn-gmail-mailbox.gob:177
+#: src/mn-gmail-mailbox.gob:214
 #, c-format
 msgid "unable to transfer data: %s"
 msgstr "Daten konnten nicht übertragen werden: %s"
 
-#: src/mn-gmail-mailbox.gob:298
+#: src/mn-gmail-mailbox.gob:335
 msgid "logging in"
 msgstr "Anmelden bei"
 
-#: src/mn-gmail-mailbox.gob:376
+#: src/mn-gmail-mailbox.gob:413
 msgid "login failed"
 msgstr "Anmeldung fehlgeschlagen"
 
-#: src/mn-gmail-mailbox.gob:451
+#: src/mn-gmail-mailbox.gob:488
 msgid "searching for unread mail"
 msgstr "Es wird nach ungelesenen Nachrichten gesucht"
 
-#: src/mn-gmail-mailbox.gob:490
+#: src/mn-gmail-mailbox.gob:527
 msgid "unable to parse Gmail data"
 msgstr "Die Gmail-Daten konnte nicht analysiert werden"
 
@@ -760,27 +750,31 @@ msgstr "Die Position von %s konnte nicht ermittelt werden: %s"
 msgid "unable to close %s: %s"
 msgstr "%s konnte nicht geschlossen werden: %s"
 
-#: src/mn-imap-mailbox-properties.gob:93
+#: src/mn-imap-mailbox-properties.gob:94
 msgid "Mailbox:"
 msgstr "Postfach:"
 
-#: src/mn-imap-mailbox-properties.gob:97
+#: src/mn-imap-mailbox-properties.gob:98
 msgid "in_box"
 msgstr "In_box"
 
-#: src/mn-imap-mailbox-properties.gob:108
+#: src/mn-imap-mailbox-properties.gob:109
 msgid "oth_er:"
 msgstr "_Anderer:"
 
-#: src/mn-imap-mailbox-properties.gob:123
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr "Wenn möglich Leerlauf_modus verwenden"
+
+#: src/mn-imap-mailbox-properties.gob:129
 msgid "The hostname or IP address of the IMAP server"
 msgstr "Der Name oder die IP-Adresse des IMAP-Servers"
 
-#: src/mn-imap-mailbox-properties.gob:124
+#: src/mn-imap-mailbox-properties.gob:130
 msgid "Your username on the IMAP server"
 msgstr "Ihr Benutzername auf dem IMAP-Server"
 
-#: src/mn-imap-mailbox-properties.gob:125
+#: src/mn-imap-mailbox-properties.gob:131
 msgid ""
 "Your password on the IMAP server (if left blank, you will be prompted for "
 "the password when needed)"
@@ -788,63 +782,67 @@ msgstr ""
 "Ihr Passwort für diesen IMAP-Server (falls Sie nichts eingeben, werden Sie "
 "jedesmal wenn es notwendig ist nach dem Passwort gefragt)"
 
-#: src/mn-imap-mailbox-properties.gob:126
-#: src/mn-imap-mailbox-properties.gob:127
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
 msgid "The port number of the IMAP server"
 msgstr "Die Port-Nummer auf dem IMAP-Server"
 
-#: src/mn-imap-mailbox-properties.gob:128
+#: src/mn-imap-mailbox-properties.gob:134
 msgid "The mailbox name"
 msgstr "Der Postfachname"
 
-#: src/mn-imap-mailbox.gob:165 src/mn-pop3-mailbox.gob:142
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr "Wenn möglich wird der Leerlauf_modus verwenden"
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
 msgid "SSL/TLS support has not been compiled in"
 msgstr ""
 "Die Unterstützung für SSL/TLS wurde beim Erstellen des Programms nicht "
 "eingebaut"
 
-#: src/mn-imap-mailbox.gob:244
+#: src/mn-imap-mailbox.gob:246
 msgid "server did not send capabilities"
 msgstr "Der Server hat seine Fähigkeiten nicht bekannt gegeben"
 
-#: src/mn-imap-mailbox.gob:390
+#: src/mn-imap-mailbox.gob:418
 msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
 msgstr ""
 "Der Server gibt LOGINDISABLED zurück, LOGIN-Authentifizierung wird nicht "
 "verwendet"
 
-#: src/mn-imap-mailbox.gob:391
+#: src/mn-imap-mailbox.gob:419
 msgid "unable to login"
 msgstr "Anmeldung fehlgeschlagen"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:538
+#: src/mn-imap-mailbox.gob:571
 msgid "server did not send search results"
 msgstr "Der Server hat keine Suchergebnisse gesendet"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:618
+#: src/mn-imap-mailbox.gob:651
 msgid "server did not send all the messages we requested"
 msgstr "Der Server hat nicht alle angeforderten Nachrichten gesendet"
 
-#: src/mn-imap-mailbox.gob:667
+#: src/mn-imap-mailbox.gob:700
 msgid "unable to fetch message"
 msgstr "Nachrichten konnten nicht abgerufen werden"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:785
+#: src/mn-imap-mailbox.gob:818
 msgid "server did not send status"
 msgstr "Der Server hat seinen Status nicht bekannt gegeben"
 
-#: src/mn-imap-mailbox.gob:1057 src/mn-pop3-mailbox.gob:922
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
 msgid "unknown server error"
 msgstr "Unbekannter Server-Fehler"
 
-#: src/mn-imap-mailbox.gob:1147 src/mn-pop3-mailbox.gob:226
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
 msgid "server does not support in-band SSL/TLS"
 msgstr "Der Server unterstütz kein band-internes SSL/TLS"
 
-#: src/mn-imap-mailbox.gob:1168 src/mn-pop3-mailbox.gob:841
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
 msgid ""
 "a SASL authentication mechanism was selected but SASL support has not been "
 "compiled in"
@@ -852,22 +850,22 @@ msgstr ""
 "Sie haben eine Authentifizierung mit SASL ausgewählt, jedoch wurde die "
 "Unterstützung für SASL beim Erstellen des Programms nicht eingebaut"
 
-#: src/mn-imap-mailbox.gob:1176 src/mn-pop3-mailbox.gob:853
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
 #, c-format
 msgid "unknown authentication mechanism \"%s\""
 msgstr "Unbekannte Authentifizierungsmethode »%s«"
 
-#: src/mn-imap-mailbox.gob:1194
+#: src/mn-imap-mailbox.gob:1246
 msgid "falling back to IMAP LOGIN authentication"
 msgstr "Es wird auf die Authentifizierung per IMAP LOGIN zurückgegriffen"
 
-#: src/mn-imap-mailbox.gob:1199 src/mn-pop3-mailbox.gob:888
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
 msgid "authentication failed"
 msgstr "Authentifizierung fehlgeschlagen"
 
 #: src/mn-mail-icon.gob:92 ui/summary-dialog.glade.h:2
 msgid "_Launch Mail Reader"
-msgstr ""
+msgstr "_E-Mail-Programm starten"
 
 #: src/mn-mail-icon.gob:93 ui/summary-dialog.glade.h:3
 msgid "_Update"
@@ -912,15 +910,15 @@ msgstr "Bezeichnung"
 
 #: src/mn-mailbox-properties.c:64
 msgid "The marked up text to show in the type combo box"
-msgstr ""
+msgstr "Der ausgezeichnete Text in einem Kombinationsfeld"
 
 #: src/mn-mailbox-properties.c:69
 msgid "Size group"
-msgstr ""
+msgstr "Size group"
 
 #: src/mn-mailbox-properties.c:70
 msgid "A GtkSizeGroup for aligning control labels"
-msgstr ""
+msgstr "Eine GtkSizeGroup um Kontrollstrukturen auszurichten"
 
 #: src/mn-mailbox-properties.c:75
 msgid "Complete"
@@ -956,9 +954,8 @@ msgid "The mailbox human-readable name"
 msgstr "Der lesbare Postfachname"
 
 #: src/mn-mailbox.gob:145
-#, fuzzy
 msgid "Whether the mailbox has to be polled or not"
-msgstr "Legt fest, ob das Postfach manuell überprüft werden soll"
+msgstr "Legt fest, ob das Postfach abgefragt werden muss"
 
 #: src/mn-mailbox.gob:151
 msgid "Whether the mailbox has new mail or not"
@@ -1304,15 +1301,15 @@ msgstr ""
 msgid "The port number of the POP3 server"
 msgstr "Die Port-Nummer des POP3-Servers"
 
-#: src/mn-pop3-mailbox.gob:272
+#: src/mn-pop3-mailbox.gob:273
 msgid "invalid arguments for the LOGIN-DELAY capability"
 msgstr "Ungültige Argumente für die Anmeldeverzögerung"
 
-#: src/mn-pop3-mailbox.gob:556
+#: src/mn-pop3-mailbox.gob:590
 msgid "unknown error"
 msgstr "Unbekannter Fehler"
 
-#: src/mn-pop3-mailbox.gob:690
+#: src/mn-pop3-mailbox.gob:729
 #, c-format
 msgid "honouring LOGIN-DELAY, sleeping for %i second"
 msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
@@ -1321,15 +1318,15 @@ msgstr[0] ""
 "gewartetAnmeldeverzögerung wird berücksichtigt, es wird für %i Sekunden "
 "gewartet"
 
-#: src/mn-pop3-mailbox.gob:849
+#: src/mn-pop3-mailbox.gob:893
 msgid "server does not support APOP authentication"
 msgstr "Der Server unterstütz eine Authentifizierung per APOP nicht."
 
-#: src/mn-pop3-mailbox.gob:877
+#: src/mn-pop3-mailbox.gob:922
 msgid "falling back to APOP authentication"
 msgstr "Es wird auf Authentifizierung mit APOP zurück gegriffen."
 
-#: src/mn-pop3-mailbox.gob:882
+#: src/mn-pop3-mailbox.gob:927
 msgid "falling back to USER/PASS authentication"
 msgstr ""
 "Es wird auf Authentifizierung per Nutzername und Passwort zurück gegriffen."
@@ -1367,16 +1364,15 @@ msgstr "Sie haben neue Nachrichten."
 
 #: src/mn-shell.gob:360
 msgid "Mailboxes Having New Mail"
-msgstr ""
+msgstr "Folgende Postfächer haben neuen Nachrichten"
 
 #: src/mn-shell.gob:362
 msgid "Errors"
-msgstr ""
+msgstr "Fehler"
 
 #: src/mn-shell.gob:364
-#, fuzzy
 msgid "Unsupported Mailboxes"
-msgstr "Systempostfach"
+msgstr "Nichtunterstützte Postfächer"
 
 #: src/mn-shell.gob:381 ui/summary-dialog.glade.h:1
 msgid "Mail Summary"
@@ -1399,17 +1395,17 @@ msgstr "_Alles auswählen"
 msgid "_Mail Summary"
 msgstr "_Nachrichtenübersicht"
 
-#: src/mn-sylpheed-mailbox.gob:122
+#: src/mn-sylpheed-mailbox.gob:119
 #, c-format
 msgid "unable to open folder: %s"
 msgstr "Ordner konnte nicht geöffnet werden: %s"
 
-#: src/mn-sylpheed-mailbox.gob:180
+#: src/mn-sylpheed-mailbox.gob:165
 #, c-format
 msgid "unable to close folder: %s"
 msgstr "Ordner konnte nicht geschlossen werden: %s"
 
-#: src/mn-sylpheed-mailbox.gob:183
+#: src/mn-sylpheed-mailbox.gob:168
 #, c-format
 msgid "error while reading folder: %s"
 msgstr "Fehler beim Lesen von Ordner: %s"
@@ -1519,14 +1515,12 @@ msgid "<span weight=\"bold\">Commands</span>"
 msgstr "<span weight=\"bold\">Befehle</span>"
 
 #: ui/properties.glade.h:3
-#, fuzzy
 msgid "<span weight=\"bold\">Double-click Action</span>"
-msgstr "<span weight=\"bold\">Position</span>"
+msgstr "<span weight=\"bold\">Aktion bei Doppelklick</span>"
 
 #: ui/properties.glade.h:4
-#, fuzzy
 msgid "<span weight=\"bold\">Fonts</span>"
-msgstr "<span weight=\"bold\">Befehle</span>"
+msgstr "<span weight=\"bold\">Schriften</span>"
 
 #: ui/properties.glade.h:5
 msgid "<span weight=\"bold\">General</span>"
@@ -1541,9 +1535,8 @@ msgid "<span weight=\"bold\">Position</span>"
 msgstr "<span weight=\"bold\">Position</span>"
 
 #: ui/properties.glade.h:8
-#, fuzzy
 msgid "Dis_play mail summary in tooltip"
-msgstr "Die Nachrichtenübersicht anzeigen"
+msgstr "_Nachrichtenübersicht anzeigen"
 
 #: ui/properties.glade.h:9
 msgid "General"
@@ -1567,7 +1560,7 @@ msgstr "Postfächer"
 
 #: ui/properties.glade.h:14
 msgid "Only display _recent mail"
-msgstr ""
+msgstr "Nur a_ktuelle Nachrichten anzeigen"
 
 #: ui/properties.glade.h:15
 msgid "P_osition:"
@@ -1582,9 +1575,8 @@ msgid "The amount of time to wait between mail checks"
 msgstr "Die Zeit die zwischen zwei Überprüfungen auf neue Nachrichten vergeht"
 
 #: ui/properties.glade.h:18
-#, fuzzy
 msgid "The command to run to launch the mail reader"
-msgstr "Der auszuführende Befehl wenn alle Nachrichten gelesen wurden"
+msgstr "Der Befehl um das E-Mail-Programm zustarten"
 
 #: ui/properties.glade.h:19
 msgid "The command to run when all mail is read"
@@ -1631,11 +1623,10 @@ msgid "Whether to automatically close the mail summary popup or not"
 msgstr "Legt fest, ob die Nachrichtenübersicht automatisch geschlossen wird"
 
 #: ui/properties.glade.h:27
-#, fuzzy
 msgid "Whether to display the mail summary in the status icon tooltip or not"
 msgstr ""
-"Legt fest, ob die Nachrichtenübersicht aufklappt wenn eine neue Nachricht "
-"eintrifft"
+"Legt fest, ob die Nachrichtenübersicht in der Minihilfe des Statussymbols "
+"angezeigt wird"
 
 #: ui/properties.glade.h:28
 msgid "Whether to display the mail summary popup when new mail arrives or not"
@@ -1644,9 +1635,8 @@ msgstr ""
 "eintrifft"
 
 #: ui/properties.glade.h:29
-#, fuzzy
 msgid "Whether to hide previously displayed mail or not"
-msgstr "Legt fest, ob das Postfach neue Nachrichten enthält"
+msgstr "Legt fest, ob zuvor angezeigte Nachrichten erneut angezeigt werden"
 
 #: ui/properties.glade.h:30
 msgid "Whether to run a command when all mail is read or not"
@@ -1660,10 +1650,8 @@ msgstr ""
 "ausgeführt wird, sobald eine neue Nachricht eintrifft."
 
 #: ui/properties.glade.h:32
-#, fuzzy
 msgid "Whether to set a mail reader or not"
-msgstr ""
-"Legt fest, ob ein Befehl ausgeführt wird wenn alle Nachrichten gelesen wurden"
+msgstr "Legt das E-Mail-Programm fest"
 
 #: ui/properties.glade.h:33
 msgid ""
@@ -1674,17 +1662,19 @@ msgstr ""
 "Starten von GNOME ebenfalls gestartet."
 
 #: ui/properties.glade.h:34
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the contents of the mail summary popup or "
 "not"
-msgstr "Legt fest, ob die Nachrichtenübersicht automatisch geschlossen wird"
+msgstr ""
+"Legt fest, ob für den Inhalt der Nachrichtenübersicht eine eigene Schrift "
+"verwendet wird"
 
 #: ui/properties.glade.h:35
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the title of the mail summary popup or not"
-msgstr "Legt fest, ob die Nachrichtenübersicht automatisch geschlossen wird"
+msgstr ""
+"Legt fest, ob für den Titel der Nachrichtenübersicht eine eigene Schrift "
+"verwendet wird"
 
 #: ui/properties.glade.h:36
 msgid "_Automatically close after:"
@@ -1696,16 +1686,15 @@ msgstr "_Bei Fehler blinken"
 
 #: ui/properties.glade.h:38
 msgid "_Contents font:"
-msgstr ""
+msgstr "Schrift für den _Inhalt:"
 
 #: ui/properties.glade.h:39
 msgid "_Delay between mail checks:"
 msgstr "_Nach neuen Nachrichten sehen alle:"
 
 #: ui/properties.glade.h:40
-#, fuzzy
 msgid "_Display the mail summary dialog"
-msgstr "Die Nachrichtenübersicht anzeigen"
+msgstr "_Nachrichtenübersicht anzeigen"
 
 #: ui/properties.glade.h:41
 msgid "_Enable mail summary popup"
@@ -1713,12 +1702,11 @@ msgstr "_Aufklappende Nachrichtenübersicht aktivieren"
 
 #: ui/properties.glade.h:42
 msgid "_Launch the mail reader"
-msgstr ""
+msgstr "E-Mail-Programm _starten"
 
 #: ui/properties.glade.h:43
-#, fuzzy
 msgid "_Mail reader:"
-msgstr "_Nachrichtenübersicht"
+msgstr "_E-Mail-Programm:"
 
 #: ui/properties.glade.h:44
 msgid "_Start Mail Notification on GNOME login"
@@ -1726,7 +1714,7 @@ msgstr "_Laden beim Starten von  GNOME"
 
 #: ui/properties.glade.h:45
 msgid "_Title font:"
-msgstr ""
+msgstr "Schrift für den _Titel:"
 
 #: ui/properties.glade.h:46
 msgid "_Vertical offset:"
@@ -1796,21 +1784,3 @@ msgstr "Konfiguration über_springen"
 #~ "über den Einstellungsdialog angepasst werden).Als Rücksicherung werden "
 #~ "diese alle %i Minuten überprüft (Dieser Wert kann über den "
 #~ "Einstellungsdialog angepasst werden)."
-
-#~ msgid "The following mailbox has new mail:\n"
-#~ msgid_plural "The following mailboxes have new mail:\n"
-#~ msgstr[0] "Dieses Postfach hat neue Nachrichten:\n"
-#~ msgstr[1] "Diese Postfächer haben neue Nachrichten:\n"
-
-#~ msgid "You have no new mail."
-#~ msgstr "Sie haben keine neuen Nachrichten."
-
-#~ msgid "The following mailbox reported an error:\n"
-#~ msgid_plural "The following mailboxes reported an error:\n"
-#~ msgstr[0] "Das folgende Postfach hat einen Fehler ausgegeben:\n"
-#~ msgstr[1] "Die folgenden Postfächer haben einen Fehler ausgegeben:\n"
-
-#~ msgid "The following mailbox is unsupported:\n"
-#~ msgid_plural "The following mailboxes are unsupported:\n"
-#~ msgstr[0] "Das folgende Postfach wird nicht unterstützt:\n"
-#~ msgstr[1] "Die folgenden Postfächer werden nicht unterstützt:\n"
diff --git a/po/fr.gmo b/po/fr.gmo
Binary files differ.
diff --git a/po/fr.po b/po/fr.po
@@ -8,10 +8,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: mail-notification 0.99\n"
+"Project-Id-Version: mail-notification 1.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-11-15 16:03+0100\n"
-"PO-Revision-Date: 2004-11-15 16:11+0100\n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
+"PO-Revision-Date: 2004-11-25 01:40+0100\n"
 "Last-Translator: Jean-Yves Lefort <jylefort@brutele.be>\n"
 "Language-Team: Jean-Yves Lefort <jylefort@brutele.be>\n"
 "MIME-Version: 1.0\n"
@@ -388,14 +388,7 @@ msgstr "Jean-Yves Lefort <jylefort@brutele.be>"
 msgid "<span style=\"italic\">autodetect</span>"
 msgstr "<span style=\"italic\">autodétecter</span>"
 
-#. translator: example output: Enter your password for POP3 mailbox jylefort@localhost.
-#: src/mn-authenticated-mailbox.gob:77
-#, c-format
-msgid "Enter your password for %s mailbox %s."
-msgstr "Entrez votre mot de passe pour la boîte aux lettres %s %s."
-
-#. translator: example output: ... into POP3 mailbox jylefort@localhost ...
-#: src/mn-authenticated-mailbox.gob:98
+#: src/mn-authenticated-mailbox.gob:80
 #, c-format
 msgid ""
 "Mail Notification was unable to log into %s mailbox %s, possibly because the "
@@ -409,7 +402,12 @@ msgstr ""
 "\n"
 "Veuillez à nouveau saisir votre mot de passe."
 
-#: src/mn-authenticated-mailbox.gob:164
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr "Entrez votre mot de passe pour la boîte aux lettres %s %s."
+
+#: src/mn-authenticated-mailbox.gob:132
 #, c-format
 msgid ""
 "<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
@@ -442,85 +440,85 @@ msgstr "Sélectionnez un Fichier ou Dossier"
 msgid "Whether the image is blinking or not"
 msgstr "Si l'image clignote ou pas"
 
-#: src/mn-client-session.c:229
+#: src/mn-client-session.c:220
 #, c-format
 msgid "resolving %s"
 msgstr "résolution de %s en cours"
 
-#: src/mn-client-session.c:239
+#: src/mn-client-session.c:230
 #, c-format
 msgid "unable to resolve %s: %s"
 msgstr "impossible de résoudre %s: %s"
 
-#: src/mn-client-session.c:276
+#: src/mn-client-session.c:267
 #, c-format
 msgid "%s: unsupported address family"
 msgstr "%s: famille d'adresse non prise en charge"
 
-#: src/mn-client-session.c:283
+#: src/mn-client-session.c:274
 #, c-format
 msgid "%s: unable to create socket: %s"
 msgstr "%s: impossible de créer un socket: %s"
 
-#: src/mn-client-session.c:287
+#: src/mn-client-session.c:278
 #, c-format
 msgid "connecting to %s (%s) port %i"
 msgstr "connection à %s (%s) port %i en cours"
 
-#: src/mn-client-session.c:290
+#: src/mn-client-session.c:281
 #, c-format
 msgid "unable to connect: %s"
 msgstr "impossible de se connecter: %s"
 
-#: src/mn-client-session.c:295
+#: src/mn-client-session.c:286
 msgid "connected successfully"
 msgstr "connecté avec succès"
 
 #. if reached, we couldn't find a working address
-#: src/mn-client-session.c:301
+#: src/mn-client-session.c:292
 #, c-format
 msgid "unable to connect to %s"
 msgstr "impossible de se connecter à %s"
 
-#: src/mn-client-session.c:317
+#: src/mn-client-session.c:308
 #, c-format
 msgid "unable to initialize the OpenSSL library: %s"
 msgstr "impossible d'initialiser la bibliothèque OpenSSL: %s"
 
-#: src/mn-client-session.c:325
+#: src/mn-client-session.c:316
 #, c-format
 msgid "unable to create a SSL/TLS object: %s"
 msgstr "impossible de créer un objet SSL/TLS: %s"
 
-#: src/mn-client-session.c:331
+#: src/mn-client-session.c:322
 #, c-format
 msgid "unable to set the SSL/TLS file descriptor: %s"
 msgstr "impossible de spécifier le descripteur de fichier SSL/TLS: %s"
 
-#: src/mn-client-session.c:337
+#: src/mn-client-session.c:328
 #, c-format
 msgid "unable to perform the SSL/TLS handshake: %s"
 msgstr "impossible d'accomplir la négociation SSL/TLS: %s"
 
-#: src/mn-client-session.c:343
+#: src/mn-client-session.c:334
 msgid "untrusted server"
 msgstr "serveur non fiable"
 
-#: src/mn-client-session.c:347
+#: src/mn-client-session.c:338
 #, c-format
 msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
 msgstr "une couche SSL/TLS est maintenant active (%s, %s %i-bit)"
 
-#: src/mn-client-session.c:394
+#: src/mn-client-session.c:385
 #, c-format
 msgid "%s, fingerprint: %s"
 msgstr "%s, empreinte digitale: %s"
 
-#: src/mn-client-session.c:423
+#: src/mn-client-session.c:414
 msgid "missing certificate"
 msgstr "certificat manquant"
 
-#: src/mn-client-session.c:449
+#: src/mn-client-session.c:440
 #, c-format
 msgid ""
 "Mail Notification was unable to trust \"%s\" (%s). It is possible that "
@@ -539,113 +537,113 @@ msgstr ""
 "vous êtes connecté à \"%s\". Si vous choisissez de vous connecter au "
 "serveur, ce message ne sera plus affiché."
 
-#: src/mn-client-session.c:466
+#: src/mn-client-session.c:457
 msgid "Connect to untrusted server?"
 msgstr "Se connecter au serveur non fiable?"
 
-#: src/mn-client-session.c:471
+#: src/mn-client-session.c:462
 msgid "Co_nnect"
 msgstr "Se co_nnecter"
 
-#: src/mn-client-session.c:527
+#: src/mn-client-session.c:518
 #, c-format
 msgid "response \"%s\" is not valid in current context"
 msgstr "la réponse \"%s\" n'est pas valable dans le contexte actuel"
 
-#: src/mn-client-session.c:553
+#: src/mn-client-session.c:544
 #, c-format
 msgid "unable to parse response \"%s\""
 msgstr "impossible d'interpréter la réponse \"%s\""
 
-#: src/mn-client-session.c:601 src/mn-client-session.c:608
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
 #, c-format
 msgid "unable to read from server: %s"
 msgstr "impossible de lire depuis le serveur: %s"
 
-#: src/mn-client-session.c:606
+#: src/mn-client-session.c:597
 msgid "unable to read from server: EOF"
 msgstr "impossible de lire depuis le serveur: EOF"
 
-#: src/mn-client-session.c:618
+#: src/mn-client-session.c:609
 #, c-format
 msgid "unable to decode data using SASL: %s"
 msgstr "impossible de décoder les données en utilisant SASL: %s"
 
-#: src/mn-client-session.c:755
+#: src/mn-client-session.c:746
 #, c-format
 msgid "unable to encode data using SASL: %s"
 msgstr "impossible d'encoder les données en utilisant SASL: %s"
 
-#: src/mn-client-session.c:786 src/mn-client-session.c:793
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
 #, c-format
 msgid "unable to write to server: %s"
 msgstr "impossible d'écrire vers le serveur: %s"
 
-#: src/mn-client-session.c:791
+#: src/mn-client-session.c:782
 msgid "unable to write to server: EOF"
 msgstr "impossible d'écrire vers le serveur: EOF"
 
-#: src/mn-client-session.c:823
+#: src/mn-client-session.c:814
 #, c-format
 msgid "unable to encode Base64: %s"
 msgstr "impossible d'encoder en Base64: %s"
 
-#: src/mn-client-session.c:927
+#: src/mn-client-session.c:925
 #, c-format
 msgid "unable to initialize the SASL library: %s"
 msgstr "impossible d'initialiser la bibliothèque SASL: %s"
 
-#: src/mn-client-session.c:936
+#: src/mn-client-session.c:934
 #, c-format
 msgid "unable to retrieve local address of socket: %s"
 msgstr "impossible d'obtenir l'adresse locale du socket: %s"
 
-#: src/mn-client-session.c:942
+#: src/mn-client-session.c:940
 #, c-format
 msgid "unable to retrieve remote address of socket: %s"
 msgstr "impossible d'obtenir l'adresse distante du socket: %s"
 
-#: src/mn-client-session.c:976
+#: src/mn-client-session.c:974
 #, c-format
 msgid "warning: unable to set SASL security properties: %s"
 msgstr ""
 "avertissement: impossible de spécifier les propriétés de sécurité SASL: %s"
 
-#: src/mn-client-session.c:1015
+#: src/mn-client-session.c:998
 msgid ""
 "unable to start SASL authentication: SASL asked for something we did not know"
 msgstr ""
 "impossible de démarrer l'authentification SASL: SASL a demandé quelque chose "
 "que nous ne connaissions pas"
 
-#: src/mn-client-session.c:1019
+#: src/mn-client-session.c:1017
 #, c-format
 msgid "unable to start SASL authentication: %s"
 msgstr "impossible de démarrer l'authentification SASL: %s"
 
-#: src/mn-client-session.c:1023
+#: src/mn-client-session.c:1021
 #, c-format
 msgid "unable to create a SASL connection: %s"
 msgstr "impossible de créer une connection SASL: %s"
 
-#: src/mn-client-session.c:1073
+#: src/mn-client-session.c:1058
 msgid "SASL asked for something we did not know, aborting SASL authentication"
 msgstr ""
 "SASL a demandé quelque chose que nous ne connaissions pas, annulation de "
 "l'authentification SASL"
 
-#: src/mn-client-session.c:1077
+#: src/mn-client-session.c:1075
 #, c-format
 msgid "%s, aborting SASL authentication"
 msgstr "%s, annulation de l'authentification SASL"
 
 #. compliance error
-#: src/mn-client-session.c:1082
+#: src/mn-client-session.c:1080
 #, c-format
 msgid "unable to decode Base64 input from server: %s"
 msgstr "impossible de décoder l'entrée Base64 du serveur: %s"
 
-#: src/mn-client-session.c:1085
+#: src/mn-client-session.c:1083
 msgid ""
 "the server sent a SASL challenge, but there was a pending initial SASL "
 "client response"
@@ -653,7 +651,7 @@ msgstr ""
 "le serveur a envoyé un défi SASL, mais il y avait une réponse client SASL "
 "initiale en attente"
 
-#: src/mn-client-session.c:1099
+#: src/mn-client-session.c:1097
 msgid ""
 "the server did not send a SASL challenge, but there was no pending initial "
 "SASL client response"
@@ -661,19 +659,19 @@ msgstr ""
 "le serveur n'a pas envoyé de défi SASL, mais il n'y avait pas de réponse "
 "client SASL initiale en attente"
 
-#: src/mn-client-session.c:1124
+#: src/mn-client-session.c:1122
 #, c-format
 msgid "a SASL security layer of strength factor %i is now active"
 msgstr ""
 "une couche de sécurité SASL de facteur de force %i est maintenant active"
 
 #. a security layer is active but we can't retrieve maxoutbuf -> fatal
-#: src/mn-client-session.c:1129
+#: src/mn-client-session.c:1127
 #, c-format
 msgid "unable to get SASL_MAXOUTBUF property: %s"
 msgstr "impossible d'obtenir la propriété SASL_MAXOUTBUF: %s"
 
-#: src/mn-client-session.c:1135
+#: src/mn-client-session.c:1133
 #, c-format
 msgid "warning: unable to get SASL_SSF property: %s"
 msgstr "avertissement: impossible d'obtenir la propriété SASL_SSF: %s"
@@ -703,33 +701,33 @@ msgstr ""
 "Votre mot de passe Gmail (si laissé vide, le mot de passe vous sera demandé "
 "en temps utile)"
 
-#: src/mn-gmail-mailbox.gob:81
+#: src/mn-gmail-mailbox.gob:82
 msgid "libsoup has not been compiled with SSL/TLS support"
 msgstr "libsoup n'a pas été compilé avec le support SSL/TLS"
 
-#: src/mn-gmail-mailbox.gob:123
+#: src/mn-gmail-mailbox.gob:160
 #, c-format
 msgid "unable to parse URI \"%s\""
 msgstr "impossible d'interpréter l'URI \"%s\""
 
-#: src/mn-gmail-mailbox.gob:177
+#: src/mn-gmail-mailbox.gob:214
 #, c-format
 msgid "unable to transfer data: %s"
 msgstr "impossible de transférer des données: %s"
 
-#: src/mn-gmail-mailbox.gob:298
+#: src/mn-gmail-mailbox.gob:335
 msgid "logging in"
 msgstr "ouverture de session en cours"
 
-#: src/mn-gmail-mailbox.gob:376
+#: src/mn-gmail-mailbox.gob:413
 msgid "login failed"
 msgstr "l'ouverture de session a échoué"
 
-#: src/mn-gmail-mailbox.gob:451
+#: src/mn-gmail-mailbox.gob:488
 msgid "searching for unread mail"
 msgstr "recherche du courrier non lu"
 
-#: src/mn-gmail-mailbox.gob:490
+#: src/mn-gmail-mailbox.gob:527
 msgid "unable to parse Gmail data"
 msgstr "impossible d'interpréter les données Gmail"
 
@@ -758,27 +756,31 @@ msgstr "impossible de dire la position de %s: %s"
 msgid "unable to close %s: %s"
 msgstr "impossible de fermer %s: %s"
 
-#: src/mn-imap-mailbox-properties.gob:93
+#: src/mn-imap-mailbox-properties.gob:94
 msgid "Mailbox:"
 msgstr "Boîte aux lettres:"
 
-#: src/mn-imap-mailbox-properties.gob:97
+#: src/mn-imap-mailbox-properties.gob:98
 msgid "in_box"
 msgstr "_boîte de réception"
 
-#: src/mn-imap-mailbox-properties.gob:108
+#: src/mn-imap-mailbox-properties.gob:109
 msgid "oth_er:"
 msgstr "autr_e:"
 
-#: src/mn-imap-mailbox-properties.gob:123
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr "Utili_ser le mode idle si possible"
+
+#: src/mn-imap-mailbox-properties.gob:129
 msgid "The hostname or IP address of the IMAP server"
 msgstr "Le nom d'hôte ou adresse IP du serveur IMAP"
 
-#: src/mn-imap-mailbox-properties.gob:124
+#: src/mn-imap-mailbox-properties.gob:130
 msgid "Your username on the IMAP server"
 msgstr "Votre nom d'utilisateur sur le serveur IMAP"
 
-#: src/mn-imap-mailbox-properties.gob:125
+#: src/mn-imap-mailbox-properties.gob:131
 msgid ""
 "Your password on the IMAP server (if left blank, you will be prompted for "
 "the password when needed)"
@@ -786,61 +788,65 @@ msgstr ""
 "Votre mot de passe sur le serveur IMAP (si laissé vide, le mot de passe vous "
 "sera demandé en temps utile)"
 
-#: src/mn-imap-mailbox-properties.gob:126
-#: src/mn-imap-mailbox-properties.gob:127
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
 msgid "The port number of the IMAP server"
 msgstr "Le numéro de port du serveur IMAP"
 
-#: src/mn-imap-mailbox-properties.gob:128
+#: src/mn-imap-mailbox-properties.gob:134
 msgid "The mailbox name"
 msgstr "Le nom de la boîte aux lettres"
 
-#: src/mn-imap-mailbox.gob:165 src/mn-pop3-mailbox.gob:142
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr "Si possible, si le mode idle doit être utilisé ou pas"
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
 msgid "SSL/TLS support has not been compiled in"
 msgstr "le support SSL/TLS n'a pas été inclus lors de la compilation"
 
-#: src/mn-imap-mailbox.gob:244
+#: src/mn-imap-mailbox.gob:246
 msgid "server did not send capabilities"
 msgstr "le serveur n'a pas envoyé ses possibilités"
 
-#: src/mn-imap-mailbox.gob:390
+#: src/mn-imap-mailbox.gob:418
 msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
 msgstr ""
 "le serveur a annoncé LOGINDISABLED, pas d'utilisation de l'authentification "
 "LOGIN"
 
-#: src/mn-imap-mailbox.gob:391
+#: src/mn-imap-mailbox.gob:419
 msgid "unable to login"
 msgstr "impossible d'ouvrir la session"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:538
+#: src/mn-imap-mailbox.gob:571
 msgid "server did not send search results"
 msgstr "le serveur n'a pas envoyé les résultats de la recherche"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:618
+#: src/mn-imap-mailbox.gob:651
 msgid "server did not send all the messages we requested"
 msgstr "le serveur n'a pas envoyé tous les messages que nous avons demandé"
 
-#: src/mn-imap-mailbox.gob:667
+#: src/mn-imap-mailbox.gob:700
 msgid "unable to fetch message"
 msgstr "impossible d'obtenir le message"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:785
+#: src/mn-imap-mailbox.gob:818
 msgid "server did not send status"
 msgstr "le serveur n'a pas envoyé de statut"
 
-#: src/mn-imap-mailbox.gob:1057 src/mn-pop3-mailbox.gob:922
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
 msgid "unknown server error"
 msgstr "erreur serveur inconnue"
 
-#: src/mn-imap-mailbox.gob:1147 src/mn-pop3-mailbox.gob:226
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
 msgid "server does not support in-band SSL/TLS"
 msgstr "le serveur ne supporte pas le mode SSL/TLS interne"
 
-#: src/mn-imap-mailbox.gob:1168 src/mn-pop3-mailbox.gob:841
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
 msgid ""
 "a SASL authentication mechanism was selected but SASL support has not been "
 "compiled in"
@@ -848,16 +854,16 @@ msgstr ""
 "un mécanisme d'authentification SASL a été sélectionné mais le support SASL "
 "n'a pas été inclus lors de la compilation"
 
-#: src/mn-imap-mailbox.gob:1176 src/mn-pop3-mailbox.gob:853
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
 #, c-format
 msgid "unknown authentication mechanism \"%s\""
 msgstr "mécanisme d'authentification inconnu \"%s\""
 
-#: src/mn-imap-mailbox.gob:1194
+#: src/mn-imap-mailbox.gob:1246
 msgid "falling back to IMAP LOGIN authentication"
 msgstr "rétrogradation vers l'authentification IMAP LOGIN"
 
-#: src/mn-imap-mailbox.gob:1199 src/mn-pop3-mailbox.gob:888
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
 msgid "authentication failed"
 msgstr "l'authentification a échoué"
 
@@ -1291,30 +1297,30 @@ msgstr ""
 msgid "The port number of the POP3 server"
 msgstr "Le numéro de port du serveur POP3"
 
-#: src/mn-pop3-mailbox.gob:272
+#: src/mn-pop3-mailbox.gob:273
 msgid "invalid arguments for the LOGIN-DELAY capability"
 msgstr "arguments invalides pour la possibilité LOGIN-DELAY"
 
-#: src/mn-pop3-mailbox.gob:556
+#: src/mn-pop3-mailbox.gob:590
 msgid "unknown error"
 msgstr "erreur inconnue"
 
-#: src/mn-pop3-mailbox.gob:690
+#: src/mn-pop3-mailbox.gob:729
 #, c-format
 msgid "honouring LOGIN-DELAY, sleeping for %i second"
 msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
 msgstr[0] "attente de %i seconde afin d'obéir à LOGIN-DELAY"
 msgstr[1] "attente de %i secondes afin d'obéir à LOGIN-DELAY"
 
-#: src/mn-pop3-mailbox.gob:849
+#: src/mn-pop3-mailbox.gob:893
 msgid "server does not support APOP authentication"
 msgstr "le serveur ne supporte pas l'authentification APOP"
 
-#: src/mn-pop3-mailbox.gob:877
+#: src/mn-pop3-mailbox.gob:922
 msgid "falling back to APOP authentication"
 msgstr "rétrogradation vers l'authentification APOP"
 
-#: src/mn-pop3-mailbox.gob:882
+#: src/mn-pop3-mailbox.gob:927
 msgid "falling back to USER/PASS authentication"
 msgstr "rétrogradation vers l'authentification USER/PASS"
 
@@ -1382,17 +1388,17 @@ msgstr "Sélectionner _Tout"
 msgid "_Mail Summary"
 msgstr "_Aperçu du Courrier"
 
-#: src/mn-sylpheed-mailbox.gob:122
+#: src/mn-sylpheed-mailbox.gob:119
 #, c-format
 msgid "unable to open folder: %s"
 msgstr "impossible d'ouvrir le dossier: %s"
 
-#: src/mn-sylpheed-mailbox.gob:180
+#: src/mn-sylpheed-mailbox.gob:165
 #, c-format
 msgid "unable to close folder: %s"
 msgstr "impossible de fermer le dossier: %s"
 
-#: src/mn-sylpheed-mailbox.gob:183
+#: src/mn-sylpheed-mailbox.gob:168
 #, c-format
 msgid "error while reading folder: %s"
 msgstr "erreur lors de la lecture du dossier: %s"
diff --git a/po/mail-notification.pot b/po/mail-notification.pot
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-11-15 16:03+0100\n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -342,14 +342,7 @@ msgstr ""
 msgid "<span style=\"italic\">autodetect</span>"
 msgstr ""
 
-#. translator: example output: Enter your password for POP3 mailbox jylefort@localhost.
-#: src/mn-authenticated-mailbox.gob:77
-#, c-format
-msgid "Enter your password for %s mailbox %s."
-msgstr ""
-
-#. translator: example output: ... into POP3 mailbox jylefort@localhost ...
-#: src/mn-authenticated-mailbox.gob:98
+#: src/mn-authenticated-mailbox.gob:80
 #, c-format
 msgid ""
 "Mail Notification was unable to log into %s mailbox %s, possibly because the "
@@ -358,7 +351,12 @@ msgid ""
 "Please re-enter your password."
 msgstr ""
 
-#: src/mn-authenticated-mailbox.gob:164
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr ""
+
+#: src/mn-authenticated-mailbox.gob:132
 #, c-format
 msgid ""
 "<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
@@ -387,85 +385,85 @@ msgstr ""
 msgid "Whether the image is blinking or not"
 msgstr ""
 
-#: src/mn-client-session.c:229
+#: src/mn-client-session.c:220
 #, c-format
 msgid "resolving %s"
 msgstr ""
 
-#: src/mn-client-session.c:239
+#: src/mn-client-session.c:230
 #, c-format
 msgid "unable to resolve %s: %s"
 msgstr ""
 
-#: src/mn-client-session.c:276
+#: src/mn-client-session.c:267
 #, c-format
 msgid "%s: unsupported address family"
 msgstr ""
 
-#: src/mn-client-session.c:283
+#: src/mn-client-session.c:274
 #, c-format
 msgid "%s: unable to create socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:287
+#: src/mn-client-session.c:278
 #, c-format
 msgid "connecting to %s (%s) port %i"
 msgstr ""
 
-#: src/mn-client-session.c:290
+#: src/mn-client-session.c:281
 #, c-format
 msgid "unable to connect: %s"
 msgstr ""
 
-#: src/mn-client-session.c:295
+#: src/mn-client-session.c:286
 msgid "connected successfully"
 msgstr ""
 
 #. if reached, we couldn't find a working address
-#: src/mn-client-session.c:301
+#: src/mn-client-session.c:292
 #, c-format
 msgid "unable to connect to %s"
 msgstr ""
 
-#: src/mn-client-session.c:317
+#: src/mn-client-session.c:308
 #, c-format
 msgid "unable to initialize the OpenSSL library: %s"
 msgstr ""
 
-#: src/mn-client-session.c:325
+#: src/mn-client-session.c:316
 #, c-format
 msgid "unable to create a SSL/TLS object: %s"
 msgstr ""
 
-#: src/mn-client-session.c:331
+#: src/mn-client-session.c:322
 #, c-format
 msgid "unable to set the SSL/TLS file descriptor: %s"
 msgstr ""
 
-#: src/mn-client-session.c:337
+#: src/mn-client-session.c:328
 #, c-format
 msgid "unable to perform the SSL/TLS handshake: %s"
 msgstr ""
 
-#: src/mn-client-session.c:343
+#: src/mn-client-session.c:334
 msgid "untrusted server"
 msgstr ""
 
-#: src/mn-client-session.c:347
+#: src/mn-client-session.c:338
 #, c-format
 msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
 msgstr ""
 
-#: src/mn-client-session.c:394
+#: src/mn-client-session.c:385
 #, c-format
 msgid "%s, fingerprint: %s"
 msgstr ""
 
-#: src/mn-client-session.c:423
+#: src/mn-client-session.c:414
 msgid "missing certificate"
 msgstr ""
 
-#: src/mn-client-session.c:449
+#: src/mn-client-session.c:440
 #, c-format
 msgid ""
 "Mail Notification was unable to trust \"%s\" (%s). It is possible that "
@@ -477,131 +475,131 @@ msgid ""
 "shown again."
 msgstr ""
 
-#: src/mn-client-session.c:466
+#: src/mn-client-session.c:457
 msgid "Connect to untrusted server?"
 msgstr ""
 
-#: src/mn-client-session.c:471
+#: src/mn-client-session.c:462
 msgid "Co_nnect"
 msgstr ""
 
-#: src/mn-client-session.c:527
+#: src/mn-client-session.c:518
 #, c-format
 msgid "response \"%s\" is not valid in current context"
 msgstr ""
 
-#: src/mn-client-session.c:553
+#: src/mn-client-session.c:544
 #, c-format
 msgid "unable to parse response \"%s\""
 msgstr ""
 
-#: src/mn-client-session.c:601 src/mn-client-session.c:608
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
 #, c-format
 msgid "unable to read from server: %s"
 msgstr ""
 
-#: src/mn-client-session.c:606
+#: src/mn-client-session.c:597
 msgid "unable to read from server: EOF"
 msgstr ""
 
-#: src/mn-client-session.c:618
+#: src/mn-client-session.c:609
 #, c-format
 msgid "unable to decode data using SASL: %s"
 msgstr ""
 
-#: src/mn-client-session.c:755
+#: src/mn-client-session.c:746
 #, c-format
 msgid "unable to encode data using SASL: %s"
 msgstr ""
 
-#: src/mn-client-session.c:786 src/mn-client-session.c:793
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
 #, c-format
 msgid "unable to write to server: %s"
 msgstr ""
 
-#: src/mn-client-session.c:791
+#: src/mn-client-session.c:782
 msgid "unable to write to server: EOF"
 msgstr ""
 
-#: src/mn-client-session.c:823
+#: src/mn-client-session.c:814
 #, c-format
 msgid "unable to encode Base64: %s"
 msgstr ""
 
-#: src/mn-client-session.c:927
+#: src/mn-client-session.c:925
 #, c-format
 msgid "unable to initialize the SASL library: %s"
 msgstr ""
 
-#: src/mn-client-session.c:936
+#: src/mn-client-session.c:934
 #, c-format
 msgid "unable to retrieve local address of socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:942
+#: src/mn-client-session.c:940
 #, c-format
 msgid "unable to retrieve remote address of socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:976
+#: src/mn-client-session.c:974
 #, c-format
 msgid "warning: unable to set SASL security properties: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1015
+#: src/mn-client-session.c:998
 msgid ""
 "unable to start SASL authentication: SASL asked for something we did not know"
 msgstr ""
 
-#: src/mn-client-session.c:1019
+#: src/mn-client-session.c:1017
 #, c-format
 msgid "unable to start SASL authentication: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1023
+#: src/mn-client-session.c:1021
 #, c-format
 msgid "unable to create a SASL connection: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1073
+#: src/mn-client-session.c:1058
 msgid "SASL asked for something we did not know, aborting SASL authentication"
 msgstr ""
 
-#: src/mn-client-session.c:1077
+#: src/mn-client-session.c:1075
 #, c-format
 msgid "%s, aborting SASL authentication"
 msgstr ""
 
 #. compliance error
-#: src/mn-client-session.c:1082
+#: src/mn-client-session.c:1080
 #, c-format
 msgid "unable to decode Base64 input from server: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1085
+#: src/mn-client-session.c:1083
 msgid ""
 "the server sent a SASL challenge, but there was a pending initial SASL "
 "client response"
 msgstr ""
 
-#: src/mn-client-session.c:1099
+#: src/mn-client-session.c:1097
 msgid ""
 "the server did not send a SASL challenge, but there was no pending initial "
 "SASL client response"
 msgstr ""
 
-#: src/mn-client-session.c:1124
+#: src/mn-client-session.c:1122
 #, c-format
 msgid "a SASL security layer of strength factor %i is now active"
 msgstr ""
 
 #. a security layer is active but we can't retrieve maxoutbuf -> fatal
-#: src/mn-client-session.c:1129
+#: src/mn-client-session.c:1127
 #, c-format
 msgid "unable to get SASL_MAXOUTBUF property: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1135
+#: src/mn-client-session.c:1133
 #, c-format
 msgid "warning: unable to get SASL_SSF property: %s"
 msgstr ""
@@ -629,33 +627,33 @@ msgid ""
 "when needed)"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:81
+#: src/mn-gmail-mailbox.gob:82
 msgid "libsoup has not been compiled with SSL/TLS support"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:123
+#: src/mn-gmail-mailbox.gob:160
 #, c-format
 msgid "unable to parse URI \"%s\""
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:177
+#: src/mn-gmail-mailbox.gob:214
 #, c-format
 msgid "unable to transfer data: %s"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:298
+#: src/mn-gmail-mailbox.gob:335
 msgid "logging in"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:376
+#: src/mn-gmail-mailbox.gob:413
 msgid "login failed"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:451
+#: src/mn-gmail-mailbox.gob:488
 msgid "searching for unread mail"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:490
+#: src/mn-gmail-mailbox.gob:527
 msgid "unable to parse Gmail data"
 msgstr ""
 
@@ -684,100 +682,108 @@ msgstr ""
 msgid "unable to close %s: %s"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:93
+#: src/mn-imap-mailbox-properties.gob:94
 msgid "Mailbox:"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:97
+#: src/mn-imap-mailbox-properties.gob:98
 msgid "in_box"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:108
+#: src/mn-imap-mailbox-properties.gob:109
 msgid "oth_er:"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:123
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr ""
+
+#: src/mn-imap-mailbox-properties.gob:129
 msgid "The hostname or IP address of the IMAP server"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:124
+#: src/mn-imap-mailbox-properties.gob:130
 msgid "Your username on the IMAP server"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:125
+#: src/mn-imap-mailbox-properties.gob:131
 msgid ""
 "Your password on the IMAP server (if left blank, you will be prompted for "
 "the password when needed)"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:126
-#: src/mn-imap-mailbox-properties.gob:127
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
 msgid "The port number of the IMAP server"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:128
+#: src/mn-imap-mailbox-properties.gob:134
 msgid "The mailbox name"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:165 src/mn-pop3-mailbox.gob:142
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr ""
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
 msgid "SSL/TLS support has not been compiled in"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:244
+#: src/mn-imap-mailbox.gob:246
 msgid "server did not send capabilities"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:390
+#: src/mn-imap-mailbox.gob:418
 msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:391
+#: src/mn-imap-mailbox.gob:419
 msgid "unable to login"
 msgstr ""
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:538
+#: src/mn-imap-mailbox.gob:571
 msgid "server did not send search results"
 msgstr ""
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:618
+#: src/mn-imap-mailbox.gob:651
 msgid "server did not send all the messages we requested"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:667
+#: src/mn-imap-mailbox.gob:700
 msgid "unable to fetch message"
 msgstr ""
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:785
+#: src/mn-imap-mailbox.gob:818
 msgid "server did not send status"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1057 src/mn-pop3-mailbox.gob:922
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
 msgid "unknown server error"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1147 src/mn-pop3-mailbox.gob:226
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
 msgid "server does not support in-band SSL/TLS"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1168 src/mn-pop3-mailbox.gob:841
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
 msgid ""
 "a SASL authentication mechanism was selected but SASL support has not been "
 "compiled in"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1176 src/mn-pop3-mailbox.gob:853
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
 #, c-format
 msgid "unknown authentication mechanism \"%s\""
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1194
+#: src/mn-imap-mailbox.gob:1246
 msgid "falling back to IMAP LOGIN authentication"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1199 src/mn-pop3-mailbox.gob:888
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
 msgid "authentication failed"
 msgstr ""
 
@@ -1188,30 +1194,30 @@ msgstr ""
 msgid "The port number of the POP3 server"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:272
+#: src/mn-pop3-mailbox.gob:273
 msgid "invalid arguments for the LOGIN-DELAY capability"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:556
+#: src/mn-pop3-mailbox.gob:590
 msgid "unknown error"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:690
+#: src/mn-pop3-mailbox.gob:729
 #, c-format
 msgid "honouring LOGIN-DELAY, sleeping for %i second"
 msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/mn-pop3-mailbox.gob:849
+#: src/mn-pop3-mailbox.gob:893
 msgid "server does not support APOP authentication"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:877
+#: src/mn-pop3-mailbox.gob:922
 msgid "falling back to APOP authentication"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:882
+#: src/mn-pop3-mailbox.gob:927
 msgid "falling back to USER/PASS authentication"
 msgstr ""
 
@@ -1279,17 +1285,17 @@ msgstr ""
 msgid "_Mail Summary"
 msgstr ""
 
-#: src/mn-sylpheed-mailbox.gob:122
+#: src/mn-sylpheed-mailbox.gob:119
 #, c-format
 msgid "unable to open folder: %s"
 msgstr ""
 
-#: src/mn-sylpheed-mailbox.gob:180
+#: src/mn-sylpheed-mailbox.gob:165
 #, c-format
 msgid "unable to close folder: %s"
 msgstr ""
 
-#: src/mn-sylpheed-mailbox.gob:183
+#: src/mn-sylpheed-mailbox.gob:168
 #, c-format
 msgid "error while reading folder: %s"
 msgstr ""
diff --git a/po/pl.gmo b/po/pl.gmo
Binary files differ.
diff --git a/po/pl.po b/po/pl.po
@@ -0,0 +1,1764 @@
+# Polish translations for mail-notification.
+# Copyright (c) 2003, 2004 Jean-Yves Lefort.
+#
+# This file is distributed under the same license as the
+# mail-notification package.
+#
+# Tomasz Sarota-Raczek <tomasz.sarota.raczek@gmail.com>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: mail-notification 1.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
+"PO-Revision-Date: 2004-11-23 18:06+0100\n"
+"Last-Translator: Tomasz Sarota-Raczek <tomasz.sarota.raczek@gmail.com>\n"
+"Language-Team: Tomasz Sarota-Raczek <tomasz.sarota.raczek@gmail.com>\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"
+
+#: data/GNOME_MailNotification_Automation.server.in.in.h:1
+msgid "Mail Notification automation"
+msgstr "Automatyzacja Zawiadomienia Pocztowego"
+
+#: data/GNOME_MailNotification_Automation.server.in.in.h:2
+msgid "Mail Notification automation factory"
+msgstr "Fabryka automatyzacji Zawiadomienia Pocztowego"
+
+#: data/mail-notification-properties.desktop.in.h:1
+msgid "Configure Mail Notification"
+msgstr "Konfiguracja Zawiadomienia Pocztowego"
+
+#: data/mail-notification-properties.desktop.in.h:2
+#: data/mail-notification.desktop.in.h:2
+#: data/mail-notification.soundlist.in.h:1 src/mn-about-dialog.gob:40
+#: src/mn-mail-icon.gob:194 src/mn-main.c:281
+msgid "Mail Notification"
+msgstr "Zawiadomienie Pocztowe"
+
+#: data/mail-notification.desktop.in.h:1
+msgid "Get notified when new mail arrives"
+msgstr "Otrzymaj zawiadomienie po przyjściu nowej poczty"
+
+#: data/mail-notification.schemas.in.h:1
+msgid "Automatically close the mail summary popup"
+msgstr "Automatycznie zamknij wyskakujące okienko streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:2
+msgid "Blink on errors"
+msgstr "Migaj na błędach"
+
+#: data/mail-notification.schemas.in.h:3
+msgid "Delay between mail checks (minutes part)."
+msgstr "Zwłoka pomiędzy sprawdzaniem poczty (minuty)."
+
+#: data/mail-notification.schemas.in.h:4
+msgid "Delay between mail checks (seconds part)."
+msgstr "Zwłoka pomiędzy sprawdzaniem poczty (sekundy)."
+
+#: data/mail-notification.schemas.in.h:5
+msgid "Display mail summary in tooltip"
+msgstr "Wyświetlij streszczenie poczty w etykietce narzędzi"
+
+#: data/mail-notification.schemas.in.h:6
+msgid "Do not show the immediate notification error dialog"
+msgstr "Nie pokazuj dialogu błędowego natychmiastowego zawiadomienia"
+
+#: data/mail-notification.schemas.in.h:7
+msgid "Double-click action"
+msgstr "Wykonanie podwójnego kliknięcia"
+
+#: data/mail-notification.schemas.in.h:8
+msgid "Enable mail summary popup"
+msgstr "Umożliwij wyskakujące okienko streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:9
+msgid "Fingerprints of trusted X509 certificates"
+msgstr "Odciski palców zaufanych certyfikatów X509"
+
+#: data/mail-notification.schemas.in.h:10
+msgid "Has already been run"
+msgstr "Polecenie już było wykonane"
+
+#: data/mail-notification.schemas.in.h:11
+msgid "Height of mail summary dialog"
+msgstr "Wysokość dialogu streszenia poczty"
+
+#: data/mail-notification.schemas.in.h:12
+msgid "Height of properties dialog"
+msgstr "Wysokość dialogu wlaściwości"
+
+#: data/mail-notification.schemas.in.h:13
+msgid "Mail read command"
+msgstr "Rozkaz do przeczytania poczty"
+
+#: data/mail-notification.schemas.in.h:14
+msgid "Mail reader command"
+msgstr "Rozkaz do uruchomienia czytnika poczty"
+
+#: data/mail-notification.schemas.in.h:15
+msgid "Mail summary popup contents font"
+msgstr "Czcionka zawartości wyskakującego okienka streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:16
+msgid "Mail summary popup horizontal offset"
+msgstr "Poziomę przesunięcie wyskakującego okienka streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:17
+msgid "Mail summary popup position"
+msgstr "Pozycja wyskakującego okienka streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:18
+msgid "Mail summary popup title font"
+msgstr "Czcionka tytułu wyskakującego okienka streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:19
+msgid "Mail summary popup vertical offset"
+msgstr "Pionowę przesunięcie wyskakującego okienka streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:20
+msgid "Mailbox list"
+msgstr "Lista skrzynek pocztowych"
+
+#: data/mail-notification.schemas.in.h:21
+msgid "Minutes between mail checks"
+msgstr "Ilość minut pomiędzy sprawdzaniem poczty"
+
+#: data/mail-notification.schemas.in.h:22
+msgid "Minutes to wait before closing the mail summary popup"
+msgstr ""
+"Ile minut czekać przed zamknięciem wyskakującego okienka streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:23
+msgid "New mail command"
+msgstr "Rozkaz do rozpoczęcia nowej poczty"
+
+#: data/mail-notification.schemas.in.h:24
+msgid "Only display recent mail in mail summary popup"
+msgstr ""
+"Tylko wyświetlaj niedawną pocztę w wyskakującym okienku streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:25
+msgid "Run a command when all mail is read"
+msgstr "Wykonaj rozkaz kiedy cała poczta jest przeczytana"
+
+#: data/mail-notification.schemas.in.h:26
+msgid "Run a command when new mail arrives"
+msgstr "Wykonaj rozkaz po przyjściu nowej poczty"
+
+#: data/mail-notification.schemas.in.h:27
+msgid "Seconds between mail checks"
+msgstr "Sekundy pomiędzy sprawdzaniem poczty"
+
+#: data/mail-notification.schemas.in.h:28
+msgid "Seconds to wait before closing the mail summary popup"
+msgstr ""
+"Ilość sekund do poczekania przed zamknięciem wyskakującego okienka "
+"streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:29
+msgid "Set a mail reader"
+msgstr "Ustaw czytnika poczty"
+
+#: data/mail-notification.schemas.in.h:30
+msgid ""
+"The action to perform when the icon is double-clicked. Must be \"display-"
+"mail-summary\" or \"launch-mail-reader\"."
+msgstr ""
+"Akcja do wykonania kiedy ikon jest podwójnię kliknięty. Musi być \"display-"
+"mail-summary\" lub \"launch-mail-reader\"."
+
+#: data/mail-notification.schemas.in.h:31
+msgid ""
+"The amount of time to wait before closing the mail summary popup (minutes "
+"part)."
+msgstr ""
+"Ilość czasu do czekania przed zamknięciem wyskakującego okienka streszczenia "
+"poczty (minuty)."
+
+#: data/mail-notification.schemas.in.h:32
+msgid ""
+"The amount of time to wait before closing the mail summary popup (seconds "
+"part)."
+msgstr ""
+"Ilość czasu do czekania przed zamknięciem wyskakującego okienka streszczenia "
+"poczty (sekundy)."
+
+#: data/mail-notification.schemas.in.h:33
+msgid "The command to run to launch the mail reader."
+msgstr "Rozkaz do wykonania żeby uruchomić czytnika poczty."
+
+#: data/mail-notification.schemas.in.h:34
+msgid "The command to run when all mail is read."
+msgstr "Rozkaz do wykonania kiedy cała poczta jest przeczytana."
+
+#: data/mail-notification.schemas.in.h:35
+msgid "The command to run when new mail arrives."
+msgstr "Rozkaz do wykonania po przyjściu nowej poczty."
+
+#: data/mail-notification.schemas.in.h:36
+msgid "The custom font to use for the contents of the mail summary popup."
+msgstr ""
+"Niestandardowa czcionka użyta dla zawartości wyskakującego okienka "
+"streszczenia poczty."
+
+#: data/mail-notification.schemas.in.h:37
+msgid "The custom font to use for the title of the mail summary popup."
+msgstr ""
+"Niestandardowa czcionka użyta dla tytułu wyskakującego okienka streszczenia "
+"poczty."
+
+#: data/mail-notification.schemas.in.h:38
+msgid "The height of the mail summary dialog in pixels."
+msgstr "Wysokość dialogu streszczenia poczty w pikselach."
+
+#: data/mail-notification.schemas.in.h:39
+msgid "The height of the properties dialog in pixels."
+msgstr "Wysokość dialogu właściwości w pikselach."
+
+#: data/mail-notification.schemas.in.h:40
+msgid "The list of mailboxes to monitor."
+msgstr "Lista monitorowanych skrzynek pocztowych."
+
+#: data/mail-notification.schemas.in.h:41
+msgid ""
+"The list of trusted SSL/TLS servers (hostname:port) lacking a X509 "
+"certificate."
+msgstr "Lista zaufanych serwerów SSL/TSL (hostname:port) bez certyfikatu X509."
+
+#: data/mail-notification.schemas.in.h:42
+msgid ""
+"The list of trusted X509 certificates, represented by their MD5 fingerprint."
+msgstr ""
+"Lista zaufanych certyfikatów X509, przedstawionych przez ich MD5 odciski "
+"palców."
+
+#: data/mail-notification.schemas.in.h:43
+msgid ""
+"The number of pixels to leave between the left or right side of the screen "
+"and the mail summary popup."
+msgstr ""
+"Ilość pikselów do pozostawienia pomiędzy lewą lub prawą stroną ekranu i "
+"wyskakującym okienkiem streszczenia poczty."
+
+#: data/mail-notification.schemas.in.h:44
+msgid ""
+"The number of pixels to leave between the top or bottom side of the screen "
+"and the mail summary popup."
+msgstr ""
+"Ilość pikselów do pozostawienia pomiędzy górną lub dolną stroną ekranu i "
+"wyskakującym okienkiem streszczenia poczty."
+
+#: data/mail-notification.schemas.in.h:45
+msgid ""
+"The position of the mail summary popup. Must be \"top-left\", \"top-right\", "
+"\"bottom-left\" or \"bottom-right\"."
+msgstr ""
+"Pozycja wyskakującego okienka streszczenia poczty. Musi być \"top-left\", "
+"\"top-right\", \"bottom-left\" lub \"bottom-right\"."
+
+#: data/mail-notification.schemas.in.h:46
+msgid "The width of the mail summary dialog in pixels."
+msgstr "Szerokość dialogu streszczenia poczty w pikselach."
+
+#: data/mail-notification.schemas.in.h:47
+msgid "The width of the properties dialog in pixels."
+msgstr "Szerokość dialogu właściwości w pikselach."
+
+#: data/mail-notification.schemas.in.h:48
+msgid "Trusted servers list"
+msgstr "Lista zaufanych serwerów"
+
+#: data/mail-notification.schemas.in.h:49
+msgid "Use a custom font for the contents of the mail summary popup"
+msgstr ""
+"Użyj niestandardową czcionkę dla zawartości wyskakującego okienka "
+"streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:50
+msgid "Use a custom font for the title of the mail summary popup"
+msgstr ""
+"Użyj niestandardową czcionkę dla tytułu wyskakującego okienka streszczenia "
+"poczty"
+
+#: data/mail-notification.schemas.in.h:51
+msgid "Whether Mail Notification has already been run or not."
+msgstr "Czy Zawiadomienie Pocztowe było już uruchomione czy nie."
+
+#: data/mail-notification.schemas.in.h:52
+msgid "Whether the status icon should blink on errors or not."
+msgstr "Czy ikon stanu ma migać na błędach czy nie."
+
+#: data/mail-notification.schemas.in.h:53
+msgid "Whether to automatically close the mail summary popup or not."
+msgstr ""
+"Czy automatycznie zamknąć wyskakujące okienko streszczenia poczty czy nie."
+
+#: data/mail-notification.schemas.in.h:54
+msgid "Whether to display the mail summary in the status icon tooltip or not."
+msgstr ""
+"Czy wyświetlać streszczenie poczty w ikonie stanu etykiety narzędzi czy nie."
+
+#: data/mail-notification.schemas.in.h:55
+msgid "Whether to display the mail summary popup when new mail arrives or not."
+msgstr ""
+"Czy wyświetlać wyskakujące okienko streszczenia poczty po przyjściu nowej "
+"poczty czy nie."
+
+#: data/mail-notification.schemas.in.h:56
+msgid ""
+"Whether to hide previously displayed mail in the mail summary popup or not."
+msgstr ""
+"Czy schować poprzednio wyświetloną pocztę w wyskakującym okienku "
+"streszczenia poczty czy nie."
+
+#: data/mail-notification.schemas.in.h:57
+msgid ""
+"Whether to prevent the immediate notification error dialog from being "
+"displayed or not."
+msgstr ""
+"Czy zapobiegać wyświetleniu dialogu błędowego natychmiastowego "
+"zawiadomieniaczy nie."
+
+#: data/mail-notification.schemas.in.h:58
+msgid "Whether to run a command when all mail is read or not."
+msgstr "Czy wykonać rozkaz kiedy cała poczta jest przeczytanacza czy nie."
+
+#: data/mail-notification.schemas.in.h:59
+msgid "Whether to run a command when new mail arrives or not."
+msgstr "Czy wykonać rozkaz kiedy przyjdzie nowa poczta czy nie."
+
+#: data/mail-notification.schemas.in.h:60
+msgid "Whether to set a mail reader or not."
+msgstr "Czy ustawić czytnika poczty."
+
+#: data/mail-notification.schemas.in.h:61
+msgid ""
+"Whether to use a custom font for the contents of the mail summary popup or "
+"not."
+msgstr ""
+"Czy użyć niestandardową czcionkę dla zawartości wyskakującego okienka "
+"streszczenia poczty czy nie."
+
+#: data/mail-notification.schemas.in.h:62
+msgid ""
+"Whether to use a custom font for the title of the mail summary popup or not."
+msgstr ""
+"Czy użyć niestandardową czcionkę dla tytułu wyskakującego okienka "
+"streszczenia poczty czy nie."
+
+#: data/mail-notification.schemas.in.h:63
+msgid "Width of mail summary dialog"
+msgstr "Szerokość dialogu streszczenia poczty"
+
+#: data/mail-notification.schemas.in.h:64
+msgid "Width of properties dialog"
+msgstr "Szerokość dialogu właściwości"
+
+#: data/mail-notification.soundlist.in.h:2
+msgid "New Mail"
+msgstr "Nowa Poczta"
+
+#: src/eggtrayicon.c:109
+msgid "Orientation"
+msgstr "Orientacja"
+
+#: src/eggtrayicon.c:110
+msgid "The orientation of the tray."
+msgstr "Orientacja tacy."
+
+#: src/mn-about-dialog.gob:43
+msgid "A Mail Notification Icon"
+msgstr "Ikon Zawiadomienia Pocztowego"
+
+#. translator: replace with your name and email
+#: src/mn-about-dialog.gob:47
+msgid "Jean-Yves Lefort <jylefort@brutele.be>"
+msgstr "Tomasz Sarota-Raczek <tomasz.sarota.raczek@gmail.com>"
+
+#: src/mn-auth-combo-box.gob:101 src/mn-autodetect-mailbox-properties.gob:37
+msgid "<span style=\"italic\">autodetect</span>"
+msgstr "<span style=\"italic\">autoodkrycie</span>"
+
+#: src/mn-authenticated-mailbox.gob:80
+#, c-format
+msgid ""
+"Mail Notification was unable to log into %s mailbox %s, possibly because the "
+"password you have entered is invalid.\n"
+"\n"
+"Please re-enter your password."
+msgstr ""
+"Zawiadomienie Pocztowe nie mogło się wlogować w skrzynkę %s %s ponieważ było "
+"wpisanę niepoprawnę hasło.\n"
+"\n"
+"Proszę jeszcze raz wpisać hasło."
+
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr "Wpisz twoje hasło dla skrzynki %s %s."
+
+#: src/mn-authenticated-mailbox.gob:132
+#, c-format
+msgid ""
+"<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
+"span>\n"
+"\n"
+"%s"
+msgstr ""
+"<span weight=\"bold\" size=\"larger\">Zawiadomienie Pocztowe wymaga hasła</"
+"span>\n"
+"\n"
+"%s"
+
+#: src/mn-autodetect-mailbox-properties.gob:68
+msgid "_Location:"
+msgstr "_Lokacja:"
+
+#: src/mn-autodetect-mailbox-properties.gob:74
+msgid "_Browse..."
+msgstr "_Przeglądaj..."
+
+#: src/mn-autodetect-mailbox-properties.gob:81
+msgid "The URI of the mailbox"
+msgstr "URI skrzynki pocztowej"
+
+#: src/mn-autodetect-mailbox-properties.gob:118
+msgid "Select a File or Folder"
+msgstr "Wybierz Plik lub Teczkę"
+
+#: src/mn-blinking-image.gob:32
+msgid "Whether the image is blinking or not"
+msgstr "Czy obraz miga czy nie"
+
+#: src/mn-client-session.c:220
+#, c-format
+msgid "resolving %s"
+msgstr "rozwiązuję %s"
+
+#: src/mn-client-session.c:230
+#, c-format
+msgid "unable to resolve %s: %s"
+msgstr "niezdolny rozwiązać %s: %s"
+
+#: src/mn-client-session.c:267
+#, c-format
+msgid "%s: unsupported address family"
+msgstr "%s: brak poparcia rodziny adresowej"
+
+#: src/mn-client-session.c:274
+#, c-format
+msgid "%s: unable to create socket: %s"
+msgstr "%s: niezdolny stworzyć gniazdo: %s"
+
+#: src/mn-client-session.c:278
+#, c-format
+msgid "connecting to %s (%s) port %i"
+msgstr "połączenie do %s (%s) port %i"
+
+#: src/mn-client-session.c:281
+#, c-format
+msgid "unable to connect: %s"
+msgstr "niezdolny do połączenie się: %s"
+
+#: src/mn-client-session.c:286
+msgid "connected successfully"
+msgstr "pomyślnę połączenie"
+
+#. if reached, we couldn't find a working address
+#: src/mn-client-session.c:292
+#, c-format
+msgid "unable to connect to %s"
+msgstr "niezdolny do połączenie się z %s"
+
+#: src/mn-client-session.c:308
+#, c-format
+msgid "unable to initialize the OpenSSL library: %s"
+msgstr "niezdolny do inicjalizacji biblioteki OpenSSL: %s"
+
+#: src/mn-client-session.c:316
+#, c-format
+msgid "unable to create a SSL/TLS object: %s"
+msgstr "niezdolny do stworzenia obiektu SSL/TLS: %s"
+
+#: src/mn-client-session.c:322
+#, c-format
+msgid "unable to set the SSL/TLS file descriptor: %s"
+msgstr "niezdolny do ustawienia plikowego deskryptora SSL/TLS: %s"
+
+#: src/mn-client-session.c:328
+#, c-format
+msgid "unable to perform the SSL/TLS handshake: %s"
+msgstr "niezdoly do spełnienia pertraktacji SSL/TLS: %s"
+
+#: src/mn-client-session.c:334
+msgid "untrusted server"
+msgstr "niezaufany serwer"
+
+#: src/mn-client-session.c:338
+#, c-format
+msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
+msgstr "warstwa SSL/TLS jest teraz aktywna (%s, %s %i-bit)"
+
+#: src/mn-client-session.c:385
+#, c-format
+msgid "%s, fingerprint: %s"
+msgstr "%s, odcisk palca: %s"
+
+#: src/mn-client-session.c:414
+msgid "missing certificate"
+msgstr "brak certyfikatu"
+
+#: src/mn-client-session.c:440
+#, c-format
+msgid ""
+"Mail Notification was unable to trust \"%s\" (%s). It is possible that "
+"someone is intercepting your communication to obtain your confidential "
+"information.\n"
+"\n"
+"You should only connect to the server if you are certain you are connected "
+"to \"%s\". If you choose to connect to the server, this message will not be "
+"shown again."
+msgstr ""
+"Zawiadomienie Pocztowe nie mogło zaufać \"%s\" (%s). Jest możliwe że ktoś "
+"przechwyta twoje komunikacje żeby uzyskać twoją konfidencjalną informację.\n"
+"\n"
+"Powinieneś się tylko łączyć z serwerem jeśli jesteś pewny że jesteś "
+"połączony z \"%s\". Jeśli się połączysz z tym serwerem, ta wiadomość nie "
+"będzie pokazana powtórnie."
+
+#: src/mn-client-session.c:457
+msgid "Connect to untrusted server?"
+msgstr "Połączyć się z niezaufanym serwerem?"
+
+#: src/mn-client-session.c:462
+msgid "Co_nnect"
+msgstr "Po_łącz się."
+
+#: src/mn-client-session.c:518
+#, c-format
+msgid "response \"%s\" is not valid in current context"
+msgstr "odpowiedź \"%s\" nie jest ważna w aktualnym kontekstcie"
+
+#: src/mn-client-session.c:544
+#, c-format
+msgid "unable to parse response \"%s\""
+msgstr "niezdolny zrobić rozbiór odpowiedzi \"%s\""
+
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
+#, c-format
+msgid "unable to read from server: %s"
+msgstr "niezdolny do przeczytania z serwera: %s"
+
+#: src/mn-client-session.c:597
+msgid "unable to read from server: EOF"
+msgstr "niezdolny do przeczytania z serwera: EOF"
+
+#: src/mn-client-session.c:609
+#, c-format
+msgid "unable to decode data using SASL: %s"
+msgstr "niezdolny do rozszyfrowania danych używając SASL: %s"
+
+#: src/mn-client-session.c:746
+#, c-format
+msgid "unable to encode data using SASL: %s"
+msgstr "niezdolny do rozszyfrowania danych używając SASL: %s"
+
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
+#, c-format
+msgid "unable to write to server: %s"
+msgstr "niezdolny do pisania do serwera: %s"
+
+#: src/mn-client-session.c:782
+msgid "unable to write to server: EOF"
+msgstr "niezdolny do pisania do serwera: EOF"
+
+#: src/mn-client-session.c:814
+#, c-format
+msgid "unable to encode Base64: %s"
+msgstr "niezdolny do zakodowania Base64: %s"
+
+#: src/mn-client-session.c:925
+#, c-format
+msgid "unable to initialize the SASL library: %s"
+msgstr "niezdolny do inicjalizacji biblioteki SASL: %s"
+
+#: src/mn-client-session.c:934
+#, c-format
+msgid "unable to retrieve local address of socket: %s"
+msgstr "niezdolny odzyskać lokalnego adresu gniazda: %s"
+
+#: src/mn-client-session.c:940
+#, c-format
+msgid "unable to retrieve remote address of socket: %s"
+msgstr "niezdolny odzyskać odległego adresu gniazda: %s"
+
+#: src/mn-client-session.c:974
+#, c-format
+msgid "warning: unable to set SASL security properties: %s"
+msgstr "ostrzeżenie: niezdolny ustawić właściwości ochronnę SASL: %s"
+
+#: src/mn-client-session.c:998
+msgid ""
+"unable to start SASL authentication: SASL asked for something we did not know"
+msgstr ""
+"niezdolny rozpocząć potwierdzenie tożsamości SASL: SASL zapytało się o coś "
+"czego nie wiemy"
+
+#: src/mn-client-session.c:1017
+#, c-format
+msgid "unable to start SASL authentication: %s"
+msgstr "niezdolny rozpocząć potwierdzenie tożsamości SASL: %s"
+
+#: src/mn-client-session.c:1021
+#, c-format
+msgid "unable to create a SASL connection: %s"
+msgstr "niezdolny do stworzenia połączenia SASL: %s"
+
+#: src/mn-client-session.c:1058
+msgid "SASL asked for something we did not know, aborting SASL authentication"
+msgstr ""
+"SASL zapytał się o coś czego nie wiemy, przerywam potwierdzenie tożsamości "
+"SASL"
+
+#: src/mn-client-session.c:1075
+#, c-format
+msgid "%s, aborting SASL authentication"
+msgstr "%s, przerywam potwierdzenie tożsamości SASL"
+
+#. compliance error
+#: src/mn-client-session.c:1080
+#, c-format
+msgid "unable to decode Base64 input from server: %s"
+msgstr "niezdolny rozszyfrować wprowadzenie Base64 od serweru : %s"
+
+#: src/mn-client-session.c:1083
+msgid ""
+"the server sent a SASL challenge, but there was a pending initial SASL "
+"client response"
+msgstr ""
+"serwer wysłał wyzwanie SASL, ale już była początkowa odpowiedź SASL od "
+"klienta."
+
+#: src/mn-client-session.c:1097
+msgid ""
+"the server did not send a SASL challenge, but there was no pending initial "
+"SASL client response"
+msgstr ""
+"serwer nie wysłał wyzwania SASL, ale nie było początkowej odpowiedź SASL od "
+"klienta."
+
+#: src/mn-client-session.c:1122
+#, c-format
+msgid "a SASL security layer of strength factor %i is now active"
+msgstr "warstwa ochronna SASL czynnika mocy %i jest teraz aktywna"
+
+#. a security layer is active but we can't retrieve maxoutbuf -> fatal
+#: src/mn-client-session.c:1127
+#, c-format
+msgid "unable to get SASL_MAXOUTBUF property: %s"
+msgstr "niezdolny otrzymać właściwość SASL_MAXOUTBUF: %s"
+
+#: src/mn-client-session.c:1133
+#, c-format
+msgid "warning: unable to get SASL_SSF property: %s"
+msgstr "ostrzeżenie: niezdolny otrzymać właściwość SASL_SSF: %s"
+
+#: src/mn-conf.c:145
+#, c-format
+msgid "recursively unsetting %s"
+msgstr "rekursywnie usuwam %s"
+
+#: src/mn-conf.c:149
+msgid "syncing the GConf database"
+msgstr "synchronizacja bazy danych GConf"
+
+#: src/mn-conf.c:152
+msgid "completed"
+msgstr "skończonę"
+
+#: src/mn-gmail-mailbox-properties.gob:77
+msgid "Your Gmail username"
+msgstr "Twoję Gmail imię użytkownika"
+
+#: src/mn-gmail-mailbox-properties.gob:78
+msgid ""
+"Your Gmail password (if left blank, you will be prompted for the password "
+"when needed)"
+msgstr ""
+"Twoję Gmail hasło (jeśli pozostawione pustę, to będziesz zapytany o hasło "
+"wtedy kiedy będzie potrzebnę)"
+
+#: src/mn-gmail-mailbox.gob:82
+msgid "libsoup has not been compiled with SSL/TLS support"
+msgstr "libsoup nie było kompilowanę z poparciem SSL/TLS"
+
+#: src/mn-gmail-mailbox.gob:160
+#, c-format
+msgid "unable to parse URI \"%s\""
+msgstr "niezdolny wykonać rozbiór URI \"%s\""
+
+#: src/mn-gmail-mailbox.gob:214
+#, c-format
+msgid "unable to transfer data: %s"
+msgstr "niezdolny do przesłania danych: %s"
+
+#: src/mn-gmail-mailbox.gob:335
+msgid "logging in"
+msgstr "logowanie"
+
+#: src/mn-gmail-mailbox.gob:413
+msgid "login failed"
+msgstr "nieudanę logowanie"
+
+#: src/mn-gmail-mailbox.gob:488
+msgid "searching for unread mail"
+msgstr "szukam nieprzeczytanej poczty"
+
+#: src/mn-gmail-mailbox.gob:527
+msgid "unable to parse Gmail data"
+msgstr "niezdolny wykonać rozbioru danych Gmail"
+
+#: src/mn-gmime-stream-vfs.gob:49
+#, c-format
+msgid "unable to read %s: %s"
+msgstr "niezdolny przeczytać %s: %s"
+
+#: src/mn-gmime-stream-vfs.gob:51
+#, c-format
+msgid "unable to write to %s: %s"
+msgstr "niezdolny wpisać %s: %s"
+
+#: src/mn-gmime-stream-vfs.gob:53
+#, c-format
+msgid "unable to seek in %s: %s"
+msgstr "niezdolny odszukać %s: %s"
+
+#: src/mn-gmime-stream-vfs.gob:55
+#, c-format
+msgid "unable to tell position of %s: %s"
+msgstr "niezdolny opisać pozycję %s: %s"
+
+#: src/mn-gmime-stream-vfs.gob:57
+#, c-format
+msgid "unable to close %s: %s"
+msgstr "niezdolny zamknąć %s: %s"
+
+#: src/mn-imap-mailbox-properties.gob:94
+msgid "Mailbox:"
+msgstr "Skrzynka pocztowa:"
+
+#: src/mn-imap-mailbox-properties.gob:98
+msgid "in_box"
+msgstr "_skrzynka odbiorcza"
+
+#: src/mn-imap-mailbox-properties.gob:109
+msgid "oth_er:"
+msgstr "innę:"
+
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr "Użyj bezczynny tryb jeśli to jest możliwę"
+
+#: src/mn-imap-mailbox-properties.gob:129
+msgid "The hostname or IP address of the IMAP server"
+msgstr "Nazwa lub adres IP serweru IMAP"
+
+#: src/mn-imap-mailbox-properties.gob:130
+msgid "Your username on the IMAP server"
+msgstr "Twoje imię użytkownika na serwerze IMAP"
+
+#: src/mn-imap-mailbox-properties.gob:131
+msgid ""
+"Your password on the IMAP server (if left blank, you will be prompted for "
+"the password when needed)"
+msgstr ""
+"Twoję hasło na serwerze IMAP (jeśli pozostawione pustę, to będziesz zapytany "
+"o hasło wtedy kiedy będzie potrzebnę)"
+
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
+msgid "The port number of the IMAP server"
+msgstr "Numer portu na serwerze IMAP"
+
+#: src/mn-imap-mailbox-properties.gob:134
+msgid "The mailbox name"
+msgstr "Imię skrzynki pocztowej"
+
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr "Jeśli możliwę, czy użyć bezczynny tryb czy nie"
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
+msgid "SSL/TLS support has not been compiled in"
+msgstr "Poparcię SSL/TSL nie zostało wkompilowanę"
+
+#: src/mn-imap-mailbox.gob:246
+msgid "server did not send capabilities"
+msgstr "serwer nie wysłał możliwości"
+
+#: src/mn-imap-mailbox.gob:418
+msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
+msgstr ""
+"serwer reklamował LOGINDISABLED, bez używania potwierdzenia tożsamości LOGIN"
+
+#: src/mn-imap-mailbox.gob:419
+msgid "unable to login"
+msgstr "niezdolny do logowania"
+
+#. compliance error
+#: src/mn-imap-mailbox.gob:571
+msgid "server did not send search results"
+msgstr "serwer nie wysłał wyników poszukiwania"
+
+#. compliance error
+#: src/mn-imap-mailbox.gob:651
+msgid "server did not send all the messages we requested"
+msgstr "serwer nie wysłał wszystkich wiadomości o które prosiliśmy"
+
+#: src/mn-imap-mailbox.gob:700
+msgid "unable to fetch message"
+msgstr "niezdolny do sprowadzenia wiadomości"
+
+#. compliance error
+#: src/mn-imap-mailbox.gob:818
+msgid "server did not send status"
+msgstr "serwer nie wysłał stanu"
+
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
+msgid "unknown server error"
+msgstr "nieznany błąd serweru"
+
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
+msgid "server does not support in-band SSL/TLS"
+msgstr "serwer nie popiera wewnątrzpasmowego SSL/TSL"
+
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
+msgid ""
+"a SASL authentication mechanism was selected but SASL support has not been "
+"compiled in"
+msgstr ""
+"mechanizm potwierdzenia tożsamości SASL był wybrany ale poparcię SSL/TSL nie "
+"zostało wkompilowanę"
+
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
+#, c-format
+msgid "unknown authentication mechanism \"%s\""
+msgstr "nieznany mechanizm potwierdzenia tożsamości \"%s\""
+
+#: src/mn-imap-mailbox.gob:1246
+msgid "falling back to IMAP LOGIN authentication"
+msgstr "wycofanię do potwierdzenia tożsamości IMAP LOGIN"
+
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
+msgid "authentication failed"
+msgstr "potwierdzenie tożsamości doznało niepowodzenia"
+
+#: src/mn-mail-icon.gob:92 ui/summary-dialog.glade.h:2
+msgid "_Launch Mail Reader"
+msgstr "_Uruchom Czytnik Poczty"
+
+#: src/mn-mail-icon.gob:93 ui/summary-dialog.glade.h:3
+msgid "_Update"
+msgstr "_Udoskonalenie"
+
+#: src/mn-mail-icon.gob:99
+msgid "R_emove From Notification Area"
+msgstr "U_suń z Przestrzeni Zawiadomienia"
+
+#: src/mn-mailbox-properties-dialog.c:109
+msgid "Add a Mailbox"
+msgstr "Dodaj Skrzynkę Pocztową"
+
+#: src/mn-mailbox-properties-dialog.c:328
+#, c-format
+msgid "%s Properties"
+msgstr "Właściwości %s"
+
+#: src/mn-mailbox-properties-util.c:77 ui/authentication.glade.h:4
+msgid "_Username:"
+msgstr "_Imię użytkownika:"
+
+#: src/mn-mailbox-properties-util.c:87 ui/authentication.glade.h:3
+msgid "_Password:"
+msgstr "_Hasło:"
+
+#: src/mn-mailbox-properties-util.c:154
+msgid "Connection type:"
+msgstr "Rodzaj połączenia:"
+
+#: src/mn-mailbox-properties-util.c:161
+msgid "Port:"
+msgstr "Port:"
+
+#: src/mn-mailbox-properties-util.c:189
+msgid "_Authentication mechanism:"
+msgstr "Mechanizm potwierdzenia tożsamości:"
+
+#: src/mn-mailbox-properties.c:63
+msgid "Label"
+msgstr "Opis"
+
+#: src/mn-mailbox-properties.c:64
+msgid "The marked up text to show in the type combo box"
+msgstr "Tekst oznaczony do pokazania się w okienku typu combo"
+
+#: src/mn-mailbox-properties.c:69
+msgid "Size group"
+msgstr "Grupa rozmiaru"
+
+#: src/mn-mailbox-properties.c:70
+msgid "A GtkSizeGroup for aligning control labels"
+msgstr "GtkSizeGroup dla wyrównania etykiet kontroli"
+
+#: src/mn-mailbox-properties.c:75
+msgid "Complete"
+msgstr "Skończonę"
+
+#: src/mn-mailbox-properties.c:76
+msgid "Whether the properties are completely filled or not"
+msgstr "Czy właściwości są całkowicię wypełnione czy nie"
+
+#: src/mn-mailbox-view.gob:263 src/mn-message-box.gob:61
+msgid "Mailbox"
+msgstr "Skrzynka pocztowa"
+
+#. format column
+#: src/mn-mailbox-view.gob:279
+msgid "Format"
+msgstr "Format"
+
+#: src/mn-mailbox-view.gob:569
+msgid "Unable to add mailbox"
+msgstr "Niezdolny dodać skrzynkę pocztową"
+
+#: src/mn-mailbox-view.gob:569
+msgid "The mailbox is already in the list."
+msgstr "Skrzynka pocztowa już jest w spisie."
+
+#: src/mn-mailbox.gob:130
+msgid "The mailbox URI"
+msgstr "URI skrzynki pocztowej"
+
+#: src/mn-mailbox.gob:141
+msgid "The mailbox human-readable name"
+msgstr "Ludzko-czytelne imię skrzynki pocztowej"
+
+#: src/mn-mailbox.gob:145
+msgid "Whether the mailbox has to be polled or not"
+msgstr "Czy skrzynka pocztowa była sprawdzona czy nie"
+
+#: src/mn-mailbox.gob:151
+msgid "Whether the mailbox has new mail or not"
+msgstr "Czy skrzynka pocztowa ma nową pocztę czy nie"
+
+#: src/mn-mailbox.gob:156
+msgid "The list of new and unread MNMessage objects"
+msgstr "Spis przeczytanych i nie przeczytanych obiektów MNMessage"
+
+#: src/mn-mailbox.gob:210
+msgid "The mailbox error, if any"
+msgstr "Błąd skrzynki pocztowej, jeżeli wszelki"
+
+#: src/mn-mailbox.gob:309
+msgid "does not exist"
+msgstr "nie istnieje"
+
+#: src/mn-mailbox.gob:341
+msgid "unknown format"
+msgstr "nieznany format"
+
+#: src/mn-mailbox.gob:407
+#, c-format
+msgid "unable to enable immediate notification for %s: %s"
+msgstr "niezdolny umożliwić natychmiastowę zawiadomienie dla %s: %s"
+
+#: src/mn-mailbox.gob:425
+#, c-format
+msgid ""
+"As a fallback, they will be checked every %i second (this delay is "
+"configurable from the Properties Dialog)."
+msgid_plural ""
+"As a fallback, they will be checked every %i seconds (this delay is "
+"configurable from the Properties Dialog)."
+msgstr[0] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co każdą %i sekundę (ta zwłoka "
+"może być skonfigurowana w Dialogu Właściowści)."
+msgstr[1] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co każdę %i sekund (ta zwłoka "
+"może być skonfigurowana w Dialogu Właściowści)."
+msgstr[2] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co każdę %i sekundy (ta zwłoka "
+"może być skonfigurowana w Dialogu Właściowści)."
+
+#: src/mn-mailbox.gob:436
+#, c-format
+msgid ""
+"As a fallback, they will be checked every %i minute (this delay is "
+"configurable from the Properties Dialog)."
+msgid_plural ""
+"As a fallback, they will be checked every %i minutes (this delay is "
+"configurable from the Properties Dialog)."
+msgstr[0] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co każdą %i minutę (ta zwłoka "
+"może być skonfigurowana w Dialogu Właściowści)."
+msgstr[1] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co każdę %i minut (ta zwłoka może "
+"być skonfigurowana w Dialogu Właściowści)."
+msgstr[2] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co każdę %i minuty (ta zwłoka "
+"może być skonfigurowana w Dialogu Właściowści)."
+
+#: src/mn-mailbox.gob:447
+#, c-format
+msgid ""
+"As a fallback, they will be checked approximately every %i minute (this "
+"delay is configurable from the Properties Dialog)."
+msgid_plural ""
+"As a fallback, they will be checked approximately every %i minutes (this "
+"delay is configurable from the Properties Dialog)."
+msgstr[0] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co mniej więcej każdą %i minutę "
+"(ta zwłoka może być skonfigurowana w Dialogu Właściowści)."
+msgstr[1] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co mniej więcej każdę %i minut "
+"(ta zwłoka może być skonfigurowana w Dialogu Właściowści)."
+msgstr[2] ""
+"Pod reżimem awaryjnym, one będą sprawdzanę co mniej więcej każdę %i minuty "
+"(ta zwłoka może być skonfigurowana w Dialogu Właściowści)."
+
+#: src/mn-mailbox.gob:463
+msgid "A monitoring error has occurred"
+msgstr "Wydarzył się błąd nasłuchowy"
+
+#: src/mn-mailbox.gob:464
+#, c-format
+msgid ""
+"Mail Notification was unable to enable immediate notification for one or "
+"more mailboxes. %s"
+msgstr ""
+"Zawiadomienie Pocztowe było niezdolnę umożliwić natychmiastowę zawiadomienie "
+"jednej albo większej ilość skrzynek pocztowych. %s"
+
+#: src/mn-mailboxes.gob:142
+msgid "Whether one or more of the mailboxes has to be polled"
+msgstr "Czy jedna lub więcej szkrzynek pocztowych była sprawdzona czy nie"
+
+#: src/mn-mailboxes.gob:272
+#, c-format
+msgid "%s is unsupported: %s"
+msgstr "%s nie ma poparcia: %s"
+
+#: src/mn-mailboxes.gob:304
+#, c-format
+msgid "%s has new mail"
+msgstr "%s ma nową pocztę"
+
+#: src/mn-mailboxes.gob:304
+#, c-format
+msgid "%s has no new mail"
+msgstr "%s nie ma nowej poczty"
+
+#: src/mn-mailboxes.gob:330
+#, c-format
+msgid "%s reported an error: %s"
+msgstr "%s zgłosiło błąd: %s"
+
+#: src/mn-maildir-mailbox.gob:119
+#, c-format
+msgid "unable to open folder \"new\": %s"
+msgstr "niezdolny otworzyć teczkę \"new\": %s"
+
+#: src/mn-maildir-mailbox.gob:161
+#, c-format
+msgid "unable to close folder \"new\": %s"
+msgstr "niezdolny zamknąć teczkę \"new\": %s"
+
+#: src/mn-maildir-mailbox.gob:164
+#, c-format
+msgid "error while reading folder \"new\": %s"
+msgstr "błąd podczas czytania teczki \"new\": %s"
+
+#: src/mn-main.c:99
+#, c-format
+msgid "Compiled-in mailbox backends: %s\n"
+msgstr "Wkompilowanę wewnętrzne cechy skrzynki pocztowej: %s\n"
+
+#: src/mn-main.c:116
+#, c-format
+msgid "Compiled-in features: %s\n"
+msgstr "Wkompilowanę cechy: %s\n"
+
+#: src/mn-main.c:175
+msgid "Enable informational output"
+msgstr "Umożliw informacyjny wydruk"
+
+#: src/mn-main.c:184
+msgid "List compiled-in features and exit"
+msgstr "Wydrukuj spis wkompilowanych cech i zakończ"
+
+#: src/mn-main.c:193
+msgid "Display the mail summary dialog"
+msgstr "Wyświetlij dialog streszczenia poczty"
+
+#: src/mn-main.c:202
+msgid "Display the properties dialog"
+msgstr "Wyświetlij dialog właściwości"
+
+#: src/mn-main.c:211
+msgid "Display the about dialog"
+msgstr "Wyświetlij dialog \"O\""
+
+#: src/mn-main.c:220
+msgid "Close the mail summary popup"
+msgstr "Zamknij wyskakujące okienko streszczenia poczty"
+
+#: src/mn-main.c:229
+msgid "Update the mail status"
+msgstr "Odśwież stan poczty"
+
+#: src/mn-main.c:238
+msgid "Report the mail status"
+msgstr "Zgłoś stan poczty"
+
+#: src/mn-main.c:247
+msgid "Unset obsolete GConf configuration and exit"
+msgstr "Usuń przestarzałą konfigurację GConf i zakończ"
+
+#.
+#. * We can't use mn_error_dialog() because gtk_init() has not been
+#. * called yet.
+#.
+#: src/mn-main.c:273
+msgid "multi-threading is not available"
+msgstr "wielowątkowość nie jest dostępna "
+
+#: src/mn-main.c:320
+msgid ""
+"Bonobo could not locate the automation object. Please check your Mail "
+"Notification installation."
+msgstr ""
+"Bonobo nie potrafiło znaleźć obiektu automatyzacyjnego. Proszę sprawdzić "
+"instalację Zawiadomienie Pocztowego"
+
+#: src/mn-main.c:325
+msgid "Unable to initialize the GnomeVFS library."
+msgstr "Niezdolny do inicjalizacji biblioteki GnomeVFS."
+
+#: src/mn-main.c:361
+msgid "updating the mail status"
+msgstr "odświeżanie stanu poczty"
+
+#: src/mn-main.c:379
+msgid "Mail Notification is already running"
+msgstr "Zawiadomienie Pocztowe jest już uruchomione."
+
+#: src/mn-main.c:386
+msgid ""
+"Bonobo could not locate the GNOME_MailNotification_Automation.server file. "
+"Please check your Mail Notification installation."
+msgstr ""
+"Bonobo nie mogło znaleźć pliku GNOME_MailNotification_Automation.server."
+"Proszę sprawdzić swoją instalację Zawiadomienia Pocztowego."
+
+#: src/mn-main.c:390
+msgid ""
+"Bonobo was unable to register the automation server. Please check your Mail "
+"Notification installation."
+msgstr ""
+"Bonobo nie potrafiło zarejestrować serwera automatyzacyjnego. Proszę "
+"sprawdzić instalację Zawiadomienia Pocztowego"
+
+#: src/mn-mbox-mailbox.gob:221
+#, c-format
+msgid "error while reading mailbox: %s"
+msgstr "błąd podczas odczytywania skrzynki pocztowej: %s"
+
+#: src/mn-mbox-mailbox.gob:230
+#, c-format
+msgid "unable to open mailbox: %s"
+msgstr "niezdolny otworzyć skrzynkę pocztową: %s"
+
+#: src/mn-message-box.gob:64
+msgid "Unreadable message"
+msgstr "Nieczytalna wiadomość"
+
+#: src/mn-message-box.gob:69
+msgid "From"
+msgstr "Od"
+
+#: src/mn-message-box.gob:70
+msgid "Subject"
+msgstr "Temat"
+
+#: src/mn-message-box.gob:75
+msgid "Sent"
+msgstr "Posłanę"
+
+#: src/mn-message-box.gob:192
+#, c-format
+msgid "%i second ago"
+msgid_plural "%i seconds ago"
+msgstr[0] "%i sekundę temu"
+msgstr[1] "%i sekund temu"
+msgstr[2] "%i sekundy temu"
+
+#: src/mn-message-box.gob:196
+#, c-format
+msgid "%i minute ago"
+msgid_plural "%i minutes ago"
+msgstr[0] "%i minutę temu"
+msgstr[1] "%i minut temu"
+msgstr[2] "%i minuty temu"
+
+#: src/mn-message-box.gob:201
+#, c-format
+msgid "%i hour ago"
+msgid_plural "%i hours ago"
+msgstr[0] "%i godzinę temu"
+msgstr[1] "%i godzin temu"
+msgstr[2] "%i godziny temu"
+
+#: src/mn-message-box.gob:206
+#, c-format
+msgid "%i day ago"
+msgid_plural "%i days ago"
+msgstr[0] "%i dzień temu"
+msgstr[1] "%i dni temu"
+msgstr[2] "%i dni temu"
+
+#: src/mn-message-box.gob:211
+#, c-format
+msgid "%i week ago"
+msgid_plural "%i weeks ago"
+msgstr[0] "%i tydzień temu"
+msgstr[1] "%i tygodni temu"
+msgstr[2] "%i tygodnie temu"
+
+#: src/mn-message-mime.c:105
+msgid "unable to parse MIME message"
+msgstr "niezdolny do zrobienia rozbioru wiadomości MIME"
+
+#: src/mn-message.gob:101
+msgid "Unknown"
+msgstr "Nieznany"
+
+#: src/mn-mh-mailbox.gob:184
+#, c-format
+msgid "error while reading .mh_sequences: %s"
+msgstr "błąd podczas czytania .mh_sequences: %s"
+
+#: src/mn-mh-mailbox.gob:196
+#, c-format
+msgid "unable to open .mh_sequences: %s"
+msgstr "niezdolny do otwarcia .mh_sequences: %s"
+
+#: src/mn-pending-mailbox.gob:35
+msgid "detecting"
+msgstr "odkrywanie"
+
+#: src/mn-pi-mailbox-properties.gob:76
+msgid "_Hostname:"
+msgstr "Imię komputera:"
+
+#: src/mn-pi-mailbox-properties.gob:94
+msgid "_Details"
+msgstr "_Szczegóły"
+
+#: src/mn-pi-mailbox-properties.gob:106
+msgid "sta_ndard"
+msgstr "norma"
+
+#: src/mn-pi-mailbox-properties.gob:116
+msgid "_in-band SSL/TLS"
+msgstr "wewnątrzpasmowy SSL/TLS"
+
+#: src/mn-pi-mailbox-properties.gob:126
+msgid "SSL/TLS on sepa_rate port"
+msgstr "SSL/TLS na oddzielnym porcie"
+
+#: src/mn-pop3-mailbox-properties.gob:86
+msgid "The hostname or IP address of the POP3 server"
+msgstr "Imię lub adres IP serwera POP3"
+
+#: src/mn-pop3-mailbox-properties.gob:87
+msgid "Your username on the POP3 server"
+msgstr "Twoję imię użytkownika na serwerze POP3"
+
+#: src/mn-pop3-mailbox-properties.gob:88
+msgid ""
+"Your password on the POP3 server (if left blank, you will be prompted for "
+"the password when needed)"
+msgstr ""
+"Twoje hasło na serwerze POP3 (jeśli pozostawionę pustę, to będziesz zapytany "
+"o hasło wtedy kiedy będzie potrzebnę)"
+
+#: src/mn-pop3-mailbox-properties.gob:89 src/mn-pop3-mailbox-properties.gob:90
+msgid "The port number of the POP3 server"
+msgstr "Numer portu serweru POP3"
+
+#: src/mn-pop3-mailbox.gob:273
+msgid "invalid arguments for the LOGIN-DELAY capability"
+msgstr "nieważne argumenty do zdolności LOGIN-DELAY"
+
+#: src/mn-pop3-mailbox.gob:590
+msgid "unknown error"
+msgstr "nieznany błąd"
+
+#: src/mn-pop3-mailbox.gob:729
+#, c-format
+msgid "honouring LOGIN-DELAY, sleeping for %i second"
+msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
+msgstr[0] "honorujemy LOGIN-DELAY, śpimy przez %i sekundę"
+msgstr[1] "honorujemy LOGIN-DELAY, śpimy przez %i sekund"
+msgstr[2] "honorujemy LOGIN-DELAY, śpimy przez %i sekundy"
+
+#: src/mn-pop3-mailbox.gob:893
+msgid "server does not support APOP authentication"
+msgstr "serwer nie popiera potwierdzenia tożsamości APOP"
+
+#: src/mn-pop3-mailbox.gob:922
+msgid "falling back to APOP authentication"
+msgstr "wycofanię do potwierdzenia tożsamości APOP"
+
+#: src/mn-pop3-mailbox.gob:927
+msgid "falling back to USER/PASS authentication"
+msgstr "wycofanię do potwierdzenia tożsamości USER/PASS"
+
+#: src/mn-properties.c:193
+msgid "top left"
+msgstr "lewy górny"
+
+#: src/mn-properties.c:194
+msgid "top right"
+msgstr "prawy górny"
+
+#: src/mn-properties.c:195
+msgid "bottom left"
+msgstr "lewy dolny"
+
+#: src/mn-properties.c:196
+msgid "bottom right"
+msgstr "prawy dolny"
+
+#: src/mn-properties.c:287
+msgid "No mailbox selected."
+msgstr "Żadna skrzynka pocztowa nie wybrana."
+
+#: src/mn-properties.c:292
+#, c-format
+msgid "%i mailbox selected."
+msgid_plural "%i mailboxes selected."
+msgstr[0] "%i skrzynka pocztowa wybrana"
+msgstr[1] "%i skrzynkek pocztowych wybranych"
+msgstr[2] "%i skrzynki pocztowe wybranę"
+
+#: src/mn-shell.gob:93
+msgid "You have new mail."
+msgstr "Masz Nową Pocztę."
+
+#: src/mn-shell.gob:360
+msgid "Mailboxes Having New Mail"
+msgstr "Skrzynki Pocztowę z Nową Pocztą"
+
+#: src/mn-shell.gob:362
+msgid "Errors"
+msgstr "Błędy"
+
+#: src/mn-shell.gob:364
+msgid "Unsupported Mailboxes"
+msgstr "Nie Popierane Skrzynki Pocztowe"
+
+#: src/mn-shell.gob:381 ui/summary-dialog.glade.h:1
+msgid "Mail Summary"
+msgstr "Streszczenie Poczty"
+
+#: src/mn-soup.c:140
+#, c-format
+msgid "unable to parse proxy URI \"%s\""
+msgstr "niezdolny zrobić rozbiór pośredniczego URI \"%s\""
+
+#: src/mn-ssl.c:79
+msgid "unknown SSL/TLS error"
+msgstr "nieznany błąd SSL/TLS"
+
+#: src/mn-stock.c:28
+msgid "Select _All"
+msgstr "Wybierz _Wszystkie"
+
+#: src/mn-stock.c:29
+msgid "_Mail Summary"
+msgstr "_Streszczenie Poczty"
+
+#: src/mn-sylpheed-mailbox.gob:119
+#, c-format
+msgid "unable to open folder: %s"
+msgstr "niezdolny otworzyć teczkę: %s"
+
+#: src/mn-sylpheed-mailbox.gob:165
+#, c-format
+msgid "unable to close folder: %s"
+msgstr "niezdolny zamknąć teczkę: %s"
+
+#: src/mn-sylpheed-mailbox.gob:168
+#, c-format
+msgid "error while reading folder: %s"
+msgstr "błąd podczas czytania teczki: %s"
+
+#: src/mn-system-mailbox-properties.gob:34 src/mn-uri.gob:411
+msgid "System Mailbox"
+msgstr "Skrzynka Pocztowa Systemu"
+
+#: src/mn-system-mailbox-properties.gob:57
+#, c-format
+msgid "Your system mailbox (<span weight=\"bold\">%s</span>) will be used."
+msgstr ""
+"Skrzynka pocztowa twojego systemu (<span weight=\"bold\">%s</span>) zostanie "
+"użyta."
+
+#: src/mn-system-mailbox-properties.gob:64
+msgid ""
+"The location of your system mailbox could not be detected. Please set the "
+"MAIL environment variable."
+msgstr ""
+"Umieszczenie skrzynki pocztowej twojego systemu nie mogło być odkrytę. "
+"Proszę ustawić zmienną środowiskową MAIL."
+
+#: src/mn-unsupported-mailbox.gob:33
+msgid "The reason why the mailbox is unsupported"
+msgstr "Powód z powodu którego skrzynka pocztowa nie jest popierana"
+
+#: src/mn-unsupported-mailbox.gob:40
+msgid "unsupported"
+msgstr "brak poparcia"
+
+#: src/mn-util.c:233
+#, c-format
+msgid "error loading image: %s"
+msgstr "błąd w ładowaniu obrazka: %s"
+
+#: src/mn-util.c:271
+#, c-format
+msgid "widget \"%s\" not found in interface \"%s\""
+msgstr "element \"%s\" nie mógł byc znaleziony w interfejsie \"%s\""
+
+#: src/mn-util.c:385
+msgid "received an invalid URI list"
+msgstr "otrzymano nieważną listę URIów"
+
+#: src/mn-util.c:421
+msgid "received an invalid Mozilla URL"
+msgstr "otrzymano nieważny Mozillowy URL"
+
+#: src/mn-util.c:514
+msgid "Unable to display help"
+msgstr "Niezdolny do wyświetlenia pomocy"
+
+#: src/mn-util.c:528
+#, c-format
+msgid "Unable to create a thread: %s."
+msgstr "Niezdolny do stworzenia wątku: %s."
+
+#: src/mn-util.c:705
+msgid "_Do not show this message again"
+msgstr "_Nie pokazuj tej wiadomości ponownie"
+
+#: src/mn-util.c:789
+msgid "A fatal error has occurred in Mail Notification"
+msgstr "Fatalny błąd zdarzył się w Zawiadomieniu Pocztowym"
+
+#: src/mn-util.c:804
+#, c-format
+msgid "unable to get current time: %s"
+msgstr "niezdolny otrzymać aktualny czas: %s"
+
+#: src/mn-util.c:906
+#, c-format
+msgid "invalid signal specification \"%s\""
+msgstr "nieważna specyfikacja sygnału  \"%s\""
+
+#: src/mn-util.c:945
+msgid "A command error has occurred in Mail Notification"
+msgstr "Błąd rozkazowy występił w Zawiadomieniu Pocztowym"
+
+#: src/mn-util.c:946
+#, c-format
+msgid "Unable to execute \"%s\": %s."
+msgstr "Niezdolny do wykonania \"%s\": %s"
+
+#: ui/authentication.glade.h:1
+msgid "*"
+msgstr "*"
+
+#: ui/authentication.glade.h:2
+msgid "_Authenticate"
+msgstr "_Potwierdź tożsamości"
+
+#: ui/mailbox-properties.glade.h:1
+msgid "_Mailbox type:"
+msgstr "_Rodzaję skrzynek pocztowych:"
+
+#: ui/properties.glade.h:1
+msgid "    "
+msgstr "    "
+
+#: ui/properties.glade.h:2
+msgid "<span weight=\"bold\">Commands</span>"
+msgstr "<span weight=\"bold\">Rozkazy</span>"
+
+#: ui/properties.glade.h:3
+msgid "<span weight=\"bold\">Double-click Action</span>"
+msgstr "<span weight=\"bold\">Akcję podwójnego klikowania</span>"
+
+#: ui/properties.glade.h:4
+msgid "<span weight=\"bold\">Fonts</span>"
+msgstr "<span weight=\"bold\">Czcionki</span>"
+
+#: ui/properties.glade.h:5
+msgid "<span weight=\"bold\">General</span>"
+msgstr "<span weight=\"bold\">Ogólnę</span>"
+
+#: ui/properties.glade.h:6
+msgid "<span weight=\"bold\">Mailbox List</span>"
+msgstr "<span weight=\"bold\">Lista Skrzynek Pocztowych</span>"
+
+#: ui/properties.glade.h:7
+msgid "<span weight=\"bold\">Position</span>"
+msgstr "<span weight=\"bold\">Pozycja</span>"
+
+#: ui/properties.glade.h:8
+msgid "Dis_play mail summary in tooltip"
+msgstr "Wyświetlaj streszczenia poczty w etykietce narzędzi"
+
+#: ui/properties.glade.h:9
+msgid "General"
+msgstr "Ogólnę"
+
+#: ui/properties.glade.h:10
+msgid "Hori_zontal offset:"
+msgstr "Poziomę przesunięcie:"
+
+#: ui/properties.glade.h:11
+msgid "Mail Notification Properties"
+msgstr "Właściwości Zawiadomienia Pocztowego"
+
+#: ui/properties.glade.h:12
+msgid "Mail Summary Popup"
+msgstr "Wyskakujące okienko streszczenia poczty"
+
+#: ui/properties.glade.h:13
+msgid "Mailboxes"
+msgstr "Skrzynki pocztowe"
+
+#: ui/properties.glade.h:14
+msgid "Only display _recent mail"
+msgstr "Tylko wyświetlaj niedawną pocztę"
+
+#: ui/properties.glade.h:15
+msgid "P_osition:"
+msgstr "P_ozycja:"
+
+#: ui/properties.glade.h:16
+msgid "The amount of time to wait before closing the mail summary popup"
+msgstr ""
+"Ilość czasu do czekania przed zamknięciem wyskakującego okienka streszczenia "
+"poczty"
+
+#: ui/properties.glade.h:17
+msgid "The amount of time to wait between mail checks"
+msgstr "Ilość czasu pomiędzy sprawdzaniem poczty"
+
+#: ui/properties.glade.h:18
+msgid "The command to run to launch the mail reader"
+msgstr "Rozkaz do wydania który uruchamia czytnika poczty."
+
+#: ui/properties.glade.h:19
+msgid "The command to run when all mail is read"
+msgstr "Rozkaz do wykonania po przeczytaniu całej poczty"
+
+#: ui/properties.glade.h:20
+msgid "The command to run when new mail arrives"
+msgstr "Rozkaz do wykonania po przyjściu nowej poczty"
+
+#: ui/properties.glade.h:21
+msgid ""
+"The number of pixels to leave between the left or right side of the screen "
+"and the mail summary popup"
+msgstr ""
+"Ilość pikselów do pozostawienia pomiędzy lewą lub prawą stroną ekranu i "
+"wyskakującym okienkiem streszczenia poczty."
+
+#: ui/properties.glade.h:22
+msgid ""
+"The number of pixels to leave between the top or bottom side of the screen "
+"and the mail summary popup"
+msgstr ""
+"Ilość pikselów do pozostawienia pomiędzy górną lub dolną stroną ekranu i "
+"wyskakującym okienkiem streszczenia poczty."
+
+#: ui/properties.glade.h:23
+msgid "When _all mail is read:"
+msgstr "Po przeczytaniu całej poczty:"
+
+#: ui/properties.glade.h:24
+msgid "When _new mail arrives:"
+msgstr "Po przyjściu nowej poczty:"
+
+#: ui/properties.glade.h:25
+msgid "Whether the status icon should blink on errors or not"
+msgstr "Czy ikon stanu ma migać na błędach czy nie"
+
+#: ui/properties.glade.h:26
+msgid "Whether to automatically close the mail summary popup or not"
+msgstr ""
+"Czy automatycznie zamknąć wyskakujące okienko streszczenia poczty czy nie."
+
+#: ui/properties.glade.h:27
+msgid "Whether to display the mail summary in the status icon tooltip or not"
+msgstr ""
+"Czy wyświetlać streszczenie poczty w ikonie stanu etykiety narzędzi czy nie"
+
+#: ui/properties.glade.h:28
+msgid "Whether to display the mail summary popup when new mail arrives or not"
+msgstr ""
+"Czy wyświetlać wyskakujące okienko streszczenia poczty po przyjściu nowej "
+"poczty czy nie"
+
+#: ui/properties.glade.h:29
+msgid "Whether to hide previously displayed mail or not"
+msgstr "Czy schować poprzednio wyświetlaną pocztę czy nie"
+
+#: ui/properties.glade.h:30
+msgid "Whether to run a command when all mail is read or not"
+msgstr "Czy wykonywać rozkaz kiedy cała poczta jest przeczytana czy nie"
+
+#: ui/properties.glade.h:31
+msgid "Whether to run a command when new mail arrives or not"
+msgstr "Czy wydać rozkaz kiedy przyjdzie nowa poczta czy nie"
+
+#: ui/properties.glade.h:32
+msgid "Whether to set a mail reader or not"
+msgstr "Czy ustawić czytnika poczty czy nie"
+
+#: ui/properties.glade.h:33
+msgid ""
+"Whether to start Mail Notification when you log into your GNOME session or "
+"not"
+msgstr ""
+"Czy załadować Zawiadomienie Pocztowe po wlogowaniu się w sesję GNOME czy nie"
+
+#: ui/properties.glade.h:34
+msgid ""
+"Whether to use a custom font for the contents of the mail summary popup or "
+"not"
+msgstr ""
+"Czy użyć niestandardową czcionkę do zawartości wyskakującego okienka "
+"streszczenia poczty czy nie"
+
+#: ui/properties.glade.h:35
+msgid ""
+"Whether to use a custom font for the title of the mail summary popup or not"
+msgstr ""
+"Czy użyć niestandardową czcionkę do tytułu wyskakującego okienka "
+"streszczenia poczty czy nie"
+
+#: ui/properties.glade.h:36
+msgid "_Automatically close after:"
+msgstr "_Automatycznie zamknij po:"
+
+#: ui/properties.glade.h:37
+msgid "_Blink on errors"
+msgstr "_Migaj na błędach"
+
+#: ui/properties.glade.h:38
+msgid "_Contents font:"
+msgstr "_Czcionka zawartości:"
+
+#: ui/properties.glade.h:39
+msgid "_Delay between mail checks:"
+msgstr "_Opuźnienie pomiędzy sprawdzaniem poczty:"
+
+#: ui/properties.glade.h:40
+msgid "_Display the mail summary dialog"
+msgstr "_Wyświetlaj dialog streszczenia poczty"
+
+#: ui/properties.glade.h:41
+msgid "_Enable mail summary popup"
+msgstr "_Umożliwij wyskakujące okienko streszczenia poczty"
+
+#: ui/properties.glade.h:42
+msgid "_Launch the mail reader"
+msgstr "U_ruchom czytnika poczty"
+
+#: ui/properties.glade.h:43
+msgid "_Mail reader:"
+msgstr "C_zytnik poczty:"
+
+#: ui/properties.glade.h:44
+msgid "_Start Mail Notification on GNOME login"
+msgstr "_Uruchom Zawiadomienie Pocztowe po wlogowaniu w GNOME"
+
+#: ui/properties.glade.h:45
+msgid "_Title font:"
+msgstr "_Czcionka tytułu:"
+
+#: ui/properties.glade.h:46
+msgid "_Vertical offset:"
+msgstr "_Pionowę przesunięcie"
+
+#: ui/properties.glade.h:47
+msgid "minutes"
+msgstr "minuty"
+
+#: ui/properties.glade.h:48
+msgid "pixels"
+msgstr "piksele"
+
+#: ui/properties.glade.h:49
+msgid "seconds"
+msgstr "sekundy"
+
+#: ui/summary-popup.glade.h:1
+msgid "<span size=\"larger\" weight=\"bold\">Mail Summary</span>"
+msgstr "<span size=\"larger\" weight=\"bold\">Zawiadomienie Pocztowe</span>"
+
+#: ui/welcome.glade.h:1
+msgid ""
+"<span weight=\"bold\" size=\"larger\">First startup</span>\n"
+"\n"
+"Mail Notification has been loaded successfully.\n"
+"\n"
+"Since this is the first time you run Mail Notification, you might want to "
+"configure it.\n"
+"\n"
+"Note: this message will not be shown anymore. To configure Mail Notification "
+"again, choose <span weight=\"bold\">Applications</span> → <span weight=\"bold"
+"\">Desktop Preferences</span> → <span weight=\"bold\">Mail Notification</"
+"span> (or on some systems <span weight=\"bold\">Applications → Preferences → "
+"More Preferences → Mail Notification</span>)."
+msgstr ""
+"<span weight=\"bold\" size=\"larger\">Premier démarrage</span>\n"
+"\n"
+"Zawiadomienie Pocztowe było pomyślnię załadowane.\n"
+"\n"
+"Ponieważ uruchamiasz Zawiadomienia Pocztowego poraz pierwszy raz, może byś "
+"chciał je skonfigurować.\n"
+"\n"
+"Uwaga: ta wiadomość nie będzie więcej pokazywana. Jeśli byś ponownie chciał "
+"skonfigurować Zawiadomienie Pocztowe, wybież <span weight=\"bold"
+"\">Aplikacje</span> → <span weight=\"bold\">Preferencje Desktopowe</span> → "
+"<span weight=\"bold\">Zawiadomienie Pocztowe</span> (lub na pewnych "
+"systemach <span weight=\"bold\">Aplikacje</span> → <span weight=\"bold"
+"\">Preferencje</span> → <span weight=\"bold\">Więcej Preferencji</span> → "
+"<span weight=\"bold\">Zawiadomienie Pocztowe</span>)."
+
+#: ui/welcome.glade.h:8
+msgid "_Configure Mail Notification"
+msgstr "_Konfiguracja Zawiadomienia Pocztowego"
+
+#: ui/welcome.glade.h:9
+msgid "_Skip configuration"
+msgstr "_Omiń konfigurację"
diff --git a/po/pt.gmo b/po/pt.gmo
Binary files differ.
diff --git a/po/pt.po b/po/pt.po
@@ -8,10 +8,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: mail-notification 0.7.1\n"
+"Project-Id-Version: mail-notification 1.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-11-15 16:03+0100\n"
-"PO-Revision-Date: 2004-10-24 11:06+0200\n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
+"PO-Revision-Date: 2004-11-23 14:28+0100\n"
 "Last-Translator: Duarte Henriques <duarte_henriques@myrealbox.com>\n"
 "Language-Team: Duarte Henriques <duarte_henriques@myrealbox.com>\n"
 "MIME-Version: 1.0\n"
@@ -59,18 +59,16 @@ msgid "Delay between mail checks (seconds part)."
 msgstr "Intervalo entre verificações de correio (segundos)."
 
 #: data/mail-notification.schemas.in.h:5
-#, fuzzy
 msgid "Display mail summary in tooltip"
-msgstr "Mostrar o diálogo de resumo de correio"
+msgstr "Mostrar o resumo de correio numa dica"
 
 #: data/mail-notification.schemas.in.h:6
 msgid "Do not show the immediate notification error dialog"
 msgstr "Não mostrar o diálogo de erro de notificação imediata"
 
 #: data/mail-notification.schemas.in.h:7
-#, fuzzy
 msgid "Double-click action"
-msgstr "Comando de duplo-clique"
+msgstr "Acção de duplo-clique"
 
 #: data/mail-notification.schemas.in.h:8
 msgid "Enable mail summary popup"
@@ -97,14 +95,12 @@ msgid "Mail read command"
 msgstr "Comando de leitura de correio"
 
 #: data/mail-notification.schemas.in.h:14
-#, fuzzy
 msgid "Mail reader command"
-msgstr "Comando de leitura de correio"
+msgstr "Comando de leitor de correio"
 
 #: data/mail-notification.schemas.in.h:15
-#, fuzzy
 msgid "Mail summary popup contents font"
-msgstr "Posição do popup de resumo de correio"
+msgstr "Fonte do conteúdo do popup de resumo de correio"
 
 #: data/mail-notification.schemas.in.h:16
 msgid "Mail summary popup horizontal offset"
@@ -115,9 +111,8 @@ msgid "Mail summary popup position"
 msgstr "Posição do popup de resumo de correio"
 
 #: data/mail-notification.schemas.in.h:18
-#, fuzzy
 msgid "Mail summary popup title font"
-msgstr "Posição do popup de resumo de correio"
+msgstr "Fonte do título do popup de resumo de correio"
 
 #: data/mail-notification.schemas.in.h:19
 msgid "Mail summary popup vertical offset"
@@ -140,9 +135,8 @@ msgid "New mail command"
 msgstr "Novo comando de correio"
 
 #: data/mail-notification.schemas.in.h:24
-#, fuzzy
 msgid "Only display recent mail in mail summary popup"
-msgstr "Fechar o popup de resumo de correio"
+msgstr "Mostrar apenas o correio recente no popup de resumo de correio"
 
 #: data/mail-notification.schemas.in.h:25
 msgid "Run a command when all mail is read"
@@ -161,15 +155,16 @@ msgid "Seconds to wait before closing the mail summary popup"
 msgstr "Segundos a esperar antes de fechar o popup de resumo de correio"
 
 #: data/mail-notification.schemas.in.h:29
-#, fuzzy
 msgid "Set a mail reader"
-msgstr "Escolha um Ficheiro ou Pasta"
+msgstr "Definir um leitor de correio"
 
 #: data/mail-notification.schemas.in.h:30
 msgid ""
 "The action to perform when the icon is double-clicked. Must be \"display-"
 "mail-summary\" or \"launch-mail-reader\"."
 msgstr ""
+"A acção a efectuar quando o se faz duplo-clique no ícone. Tem de ser "
+"\"display-mail-summary\" ou \"launch-mail-reader\"."
 
 #: data/mail-notification.schemas.in.h:31
 msgid ""
@@ -188,9 +183,8 @@ msgstr ""
 "(parte dos segundos)."
 
 #: data/mail-notification.schemas.in.h:33
-#, fuzzy
 msgid "The command to run to launch the mail reader."
-msgstr "O comando a executar quando todo o correio está lido."
+msgstr "O comando a executar para lançar o leitor de correio."
 
 #: data/mail-notification.schemas.in.h:34
 msgid "The command to run when all mail is read."
@@ -201,16 +195,12 @@ msgid "The command to run when new mail arrives."
 msgstr "O comando a executar quando chega novo correio."
 
 #: data/mail-notification.schemas.in.h:36
-#, fuzzy
 msgid "The custom font to use for the contents of the mail summary popup."
-msgstr ""
-"A quantidade de tempo a esperar antes de fechar o popup de resumo de correio"
+msgstr "A fonte personalizada para o conteúdo do popup de resumo de correio."
 
 #: data/mail-notification.schemas.in.h:37
-#, fuzzy
 msgid "The custom font to use for the title of the mail summary popup."
-msgstr ""
-"A quantidade de tempo a esperar antes de fechar o popup de resumo de correio"
+msgstr "A fonte personalizada para o título do popup de resumo de correio."
 
 #: data/mail-notification.schemas.in.h:38
 msgid "The height of the mail summary dialog in pixels."
@@ -276,15 +266,14 @@ msgid "Trusted servers list"
 msgstr "Lista de servidores confiados"
 
 #: data/mail-notification.schemas.in.h:49
-#, fuzzy
 msgid "Use a custom font for the contents of the mail summary popup"
-msgstr "Segundos a esperar antes de fechar o popup de resumo de correio"
+msgstr ""
+"Usar uma fonte personalizada para o conteúdo do popup de resumo de correio"
 
 #: data/mail-notification.schemas.in.h:50
-#, fuzzy
 msgid "Use a custom font for the title of the mail summary popup"
 msgstr ""
-"A quantidade de tempo a esperar antes de fechar o popup de resumo de correio"
+"Usar uma fonte personalizada para o título do popup de resumo de correio"
 
 #: data/mail-notification.schemas.in.h:51
 msgid "Whether Mail Notification has already been run or not."
@@ -300,11 +289,9 @@ msgstr ""
 "Se o popup de resumo de correio deve ser automaticamente fechado ou não."
 
 #: data/mail-notification.schemas.in.h:54
-#, fuzzy
 msgid "Whether to display the mail summary in the status icon tooltip or not."
 msgstr ""
-"Se o popup de resumo de correio deve ser mostrado quando chega correio ou "
-"não."
+"Se o resumo de correio deve ser mostrado na dica do ícone de estado ou não."
 
 #: data/mail-notification.schemas.in.h:55
 msgid "Whether to display the mail summary popup when new mail arrives or not."
@@ -313,11 +300,11 @@ msgstr ""
 "não."
 
 #: data/mail-notification.schemas.in.h:56
-#, fuzzy
 msgid ""
 "Whether to hide previously displayed mail in the mail summary popup or not."
 msgstr ""
-"Se o popup de resumo de correio deve ser automaticamente fechado ou não."
+"Se o correio previamente mostrado deve ser escondido no popup de resumo de "
+"correio ou não."
 
 #: data/mail-notification.schemas.in.h:57
 msgid ""
@@ -336,25 +323,23 @@ msgid "Whether to run a command when new mail arrives or not."
 msgstr "Se um comando deverá ser executado quando chega novo correio."
 
 #: data/mail-notification.schemas.in.h:60
-#, fuzzy
 msgid "Whether to set a mail reader or not."
-msgstr ""
-"Se um comando deverá ser executado quando todo o correio é lido ou não."
+msgstr "Se um leitor de correio deve ser definido ou não."
 
 #: data/mail-notification.schemas.in.h:61
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the contents of the mail summary popup or "
 "not."
 msgstr ""
-"Se o popup de resumo de correio deve ser automaticamente fechado ou não."
+"Se deve ser usada uma fonte personalizada para o conteúdo do popup de resumo "
+"de correio ou não."
 
 #: data/mail-notification.schemas.in.h:62
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the title of the mail summary popup or not."
 msgstr ""
-"Se o popup de resumo de correio deve ser automaticamente fechado ou não."
+"Se deve ser usada uma fonte personalizada para o título do popup de resumo "
+"de correio ou não."
 
 #: data/mail-notification.schemas.in.h:63
 msgid "Width of mail summary dialog"
@@ -389,14 +374,7 @@ msgstr "Duarte Henriques <duarte_henriques@myrealbox.com>"
 msgid "<span style=\"italic\">autodetect</span>"
 msgstr "<span style=\"italic\">autodetectar</span>"
 
-#. translator: example output: Enter your password for POP3 mailbox jylefort@localhost.
-#: src/mn-authenticated-mailbox.gob:77
-#, c-format
-msgid "Enter your password for %s mailbox %s."
-msgstr "Digite a senha para a caixa de correio %s, utilizador %s."
-
-#. translator: example output: ... into POP3 mailbox jylefort@localhost ...
-#: src/mn-authenticated-mailbox.gob:98
+#: src/mn-authenticated-mailbox.gob:80
 #, c-format
 msgid ""
 "Mail Notification was unable to log into %s mailbox %s, possibly because the "
@@ -409,7 +387,12 @@ msgstr ""
 "\n"
 "Por favor re-insira a senha."
 
-#: src/mn-authenticated-mailbox.gob:164
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr "Digite a senha para a caixa de correio %s, utilizador %s."
+
+#: src/mn-authenticated-mailbox.gob:132
 #, c-format
 msgid ""
 "<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
@@ -442,85 +425,85 @@ msgstr "Escolha um Ficheiro ou Pasta"
 msgid "Whether the image is blinking or not"
 msgstr "Se a imagem pisca ou não"
 
-#: src/mn-client-session.c:229
+#: src/mn-client-session.c:220
 #, c-format
 msgid "resolving %s"
 msgstr "resolvendo %s"
 
-#: src/mn-client-session.c:239
+#: src/mn-client-session.c:230
 #, c-format
 msgid "unable to resolve %s: %s"
 msgstr "incapaz de resolver %s: %s"
 
-#: src/mn-client-session.c:276
+#: src/mn-client-session.c:267
 #, c-format
 msgid "%s: unsupported address family"
 msgstr "%s: família de endereços não suportada"
 
-#: src/mn-client-session.c:283
+#: src/mn-client-session.c:274
 #, c-format
 msgid "%s: unable to create socket: %s"
 msgstr "%s: incapaz de criar socket: %s"
 
-#: src/mn-client-session.c:287
+#: src/mn-client-session.c:278
 #, c-format
 msgid "connecting to %s (%s) port %i"
 msgstr "ligando a %s (%s), porto %i"
 
-#: src/mn-client-session.c:290
+#: src/mn-client-session.c:281
 #, c-format
 msgid "unable to connect: %s"
 msgstr "incapaz de ligar: %s"
 
-#: src/mn-client-session.c:295
+#: src/mn-client-session.c:286
 msgid "connected successfully"
 msgstr "ligado com sucesso"
 
 #. if reached, we couldn't find a working address
-#: src/mn-client-session.c:301
+#: src/mn-client-session.c:292
 #, c-format
 msgid "unable to connect to %s"
 msgstr "incapaz de ligar a %s"
 
-#: src/mn-client-session.c:317
+#: src/mn-client-session.c:308
 #, c-format
 msgid "unable to initialize the OpenSSL library: %s"
 msgstr "incapaz de inicializar a biblioteca OpenSSL: %s"
 
-#: src/mn-client-session.c:325
+#: src/mn-client-session.c:316
 #, c-format
 msgid "unable to create a SSL/TLS object: %s"
 msgstr "incapaz de criar um objecto SSL/TLS: %s"
 
-#: src/mn-client-session.c:331
+#: src/mn-client-session.c:322
 #, c-format
 msgid "unable to set the SSL/TLS file descriptor: %s"
 msgstr "incapaz de definir o descritor de ficheiro SSL/TLS: %s"
 
-#: src/mn-client-session.c:337
+#: src/mn-client-session.c:328
 #, c-format
 msgid "unable to perform the SSL/TLS handshake: %s"
 msgstr "incapaz de efectuar o handshake SSL/TLS: %s"
 
-#: src/mn-client-session.c:343
+#: src/mn-client-session.c:334
 msgid "untrusted server"
 msgstr "servidor não é confiado"
 
-#: src/mn-client-session.c:347
+#: src/mn-client-session.c:338
 #, c-format
 msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
 msgstr "está agora activa uma camada SSL/TLS (%s, %s %i-bit)"
 
-#: src/mn-client-session.c:394
+#: src/mn-client-session.c:385
 #, c-format
 msgid "%s, fingerprint: %s"
 msgstr "%s, impressão digital: %s"
 
-#: src/mn-client-session.c:423
+#: src/mn-client-session.c:414
 msgid "missing certificate"
 msgstr "falta o certificado"
 
-#: src/mn-client-session.c:449
+#: src/mn-client-session.c:440
 #, c-format
 msgid ""
 "Mail Notification was unable to trust \"%s\" (%s). It is possible that "
@@ -538,109 +521,109 @@ msgstr ""
 "Deve apenas ligar-se ao servidor se tem a certeza que está ligado a \"%s\". "
 "Se escolher ligar-se ao servidor, esta mensagem não voltará a aparecer."
 
-#: src/mn-client-session.c:466
+#: src/mn-client-session.c:457
 msgid "Connect to untrusted server?"
 msgstr "Ligar-se a servidor não confiado?"
 
-#: src/mn-client-session.c:471
+#: src/mn-client-session.c:462
 msgid "Co_nnect"
 msgstr "_Ligar"
 
-#: src/mn-client-session.c:527
+#: src/mn-client-session.c:518
 #, c-format
 msgid "response \"%s\" is not valid in current context"
 msgstr "a resposta \"%s\" não é válida no contexto actual"
 
-#: src/mn-client-session.c:553
+#: src/mn-client-session.c:544
 #, c-format
 msgid "unable to parse response \"%s\""
 msgstr "incapaz de processar resposta \"%s\""
 
-#: src/mn-client-session.c:601 src/mn-client-session.c:608
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
 #, c-format
 msgid "unable to read from server: %s"
 msgstr "incapaz de ler do servidor: %s"
 
-#: src/mn-client-session.c:606
+#: src/mn-client-session.c:597
 msgid "unable to read from server: EOF"
 msgstr "incapaz de ler do servidor: EOF"
 
-#: src/mn-client-session.c:618
+#: src/mn-client-session.c:609
 #, c-format
 msgid "unable to decode data using SASL: %s"
 msgstr "incapaz de descodificar dados usando SASL: %s"
 
-#: src/mn-client-session.c:755
+#: src/mn-client-session.c:746
 #, c-format
 msgid "unable to encode data using SASL: %s"
 msgstr "incapaz de encodificar dados usando SASL: %s"
 
-#: src/mn-client-session.c:786 src/mn-client-session.c:793
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
 #, c-format
 msgid "unable to write to server: %s"
 msgstr "incapaz de escrever para o servidor: %s"
 
-#: src/mn-client-session.c:791
+#: src/mn-client-session.c:782
 msgid "unable to write to server: EOF"
 msgstr "incapaz de escrever para o servidor: EOF"
 
-#: src/mn-client-session.c:823
+#: src/mn-client-session.c:814
 #, c-format
 msgid "unable to encode Base64: %s"
 msgstr "incapaz de encodificar em Base64: %s"
 
-#: src/mn-client-session.c:927
+#: src/mn-client-session.c:925
 #, c-format
 msgid "unable to initialize the SASL library: %s"
 msgstr "incapaz de inicializar a biblioteca SASL: %s"
 
-#: src/mn-client-session.c:936
+#: src/mn-client-session.c:934
 #, c-format
 msgid "unable to retrieve local address of socket: %s"
 msgstr "incapaz de obter o endereço local do socket: %s"
 
-#: src/mn-client-session.c:942
+#: src/mn-client-session.c:940
 #, c-format
 msgid "unable to retrieve remote address of socket: %s"
 msgstr "incapaz de obter endereço remoto do socket: %s"
 
-#: src/mn-client-session.c:976
+#: src/mn-client-session.c:974
 #, c-format
 msgid "warning: unable to set SASL security properties: %s"
 msgstr "aviso: incapaz de definir as propriedades de segurança SASL: %s"
 
-#: src/mn-client-session.c:1015
+#: src/mn-client-session.c:998
 msgid ""
 "unable to start SASL authentication: SASL asked for something we did not know"
 msgstr ""
 "incapaz de iniciar a autenticação SASL: SASL perguntou algo que não sabíamos"
 
-#: src/mn-client-session.c:1019
+#: src/mn-client-session.c:1017
 #, c-format
 msgid "unable to start SASL authentication: %s"
 msgstr "incapaz de iniciar autenticação SASL: %s"
 
-#: src/mn-client-session.c:1023
+#: src/mn-client-session.c:1021
 #, c-format
 msgid "unable to create a SASL connection: %s"
 msgstr "incapaz de criar uma ligação SASL: %s"
 
-#: src/mn-client-session.c:1073
+#: src/mn-client-session.c:1058
 msgid "SASL asked for something we did not know, aborting SASL authentication"
 msgstr "SASL perguntou algo que não sabíamos, abortando a autenticação SASL"
 
-#: src/mn-client-session.c:1077
+#: src/mn-client-session.c:1075
 #, c-format
 msgid "%s, aborting SASL authentication"
 msgstr "%s, abortando a autenticação SASL"
 
 #. compliance error
-#: src/mn-client-session.c:1082
+#: src/mn-client-session.c:1080
 #, c-format
 msgid "unable to decode Base64 input from server: %s"
 msgstr "incapaz de descodificar o input em Base64 do servidor: %s"
 
-#: src/mn-client-session.c:1085
+#: src/mn-client-session.c:1083
 msgid ""
 "the server sent a SASL challenge, but there was a pending initial SASL "
 "client response"
@@ -648,7 +631,7 @@ msgstr ""
 "o servidor enviou um desafio SASL, mas havia uma resposta SASL inicial "
 "pendente do cliente"
 
-#: src/mn-client-session.c:1099
+#: src/mn-client-session.c:1097
 msgid ""
 "the server did not send a SASL challenge, but there was no pending initial "
 "SASL client response"
@@ -656,18 +639,18 @@ msgstr ""
 "o servidor não enviou um desafio SASL, mas não havia uma resposta SASL "
 "inicial pendente do cliente"
 
-#: src/mn-client-session.c:1124
+#: src/mn-client-session.c:1122
 #, c-format
 msgid "a SASL security layer of strength factor %i is now active"
 msgstr "está agora activa uma camada de segurança SASL com factor de força %i"
 
 #. a security layer is active but we can't retrieve maxoutbuf -> fatal
-#: src/mn-client-session.c:1129
+#: src/mn-client-session.c:1127
 #, c-format
 msgid "unable to get SASL_MAXOUTBUF property: %s"
 msgstr "incapaz de obter a propriedade SASL_MAXOUTBUF: %s"
 
-#: src/mn-client-session.c:1135
+#: src/mn-client-session.c:1133
 #, c-format
 msgid "warning: unable to get SASL_SSF property: %s"
 msgstr "aviso: incapaz de obter a propriedade SASL_SSF: %s"
@@ -697,33 +680,33 @@ msgstr ""
 "A sua senha Gmail (se deixar em branco, a senha será pedida quando "
 "necessária)"
 
-#: src/mn-gmail-mailbox.gob:81
+#: src/mn-gmail-mailbox.gob:82
 msgid "libsoup has not been compiled with SSL/TLS support"
 msgstr "libsoup não foi compilada com suporte SSL/TLS"
 
-#: src/mn-gmail-mailbox.gob:123
+#: src/mn-gmail-mailbox.gob:160
 #, c-format
 msgid "unable to parse URI \"%s\""
 msgstr "incapaz de processar URI \"%s\""
 
-#: src/mn-gmail-mailbox.gob:177
+#: src/mn-gmail-mailbox.gob:214
 #, c-format
 msgid "unable to transfer data: %s"
 msgstr "incapaz de transferir dados: %s"
 
-#: src/mn-gmail-mailbox.gob:298
+#: src/mn-gmail-mailbox.gob:335
 msgid "logging in"
 msgstr "ligando-se"
 
-#: src/mn-gmail-mailbox.gob:376
+#: src/mn-gmail-mailbox.gob:413
 msgid "login failed"
 msgstr "login falhou"
 
-#: src/mn-gmail-mailbox.gob:451
+#: src/mn-gmail-mailbox.gob:488
 msgid "searching for unread mail"
 msgstr "a procurar correio não lido"
 
-#: src/mn-gmail-mailbox.gob:490
+#: src/mn-gmail-mailbox.gob:527
 msgid "unable to parse Gmail data"
 msgstr "incapaz de processar dados Gmail"
 
@@ -752,27 +735,31 @@ msgstr "incapaz de dizer a posição em %s: %s"
 msgid "unable to close %s: %s"
 msgstr "incapaz de fechar %s: %s"
 
-#: src/mn-imap-mailbox-properties.gob:93
+#: src/mn-imap-mailbox-properties.gob:94
 msgid "Mailbox:"
 msgstr "Caixa de Correio:"
 
-#: src/mn-imap-mailbox-properties.gob:97
+#: src/mn-imap-mailbox-properties.gob:98
 msgid "in_box"
 msgstr "caixa de _entrada"
 
-#: src/mn-imap-mailbox-properties.gob:108
+#: src/mn-imap-mailbox-properties.gob:109
 msgid "oth_er:"
 msgstr "_outros"
 
-#: src/mn-imap-mailbox-properties.gob:123
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr "U_sar modo inactivo se possível"
+
+#: src/mn-imap-mailbox-properties.gob:129
 msgid "The hostname or IP address of the IMAP server"
 msgstr "O hostname ou endereço IP do servidor IMAP"
 
-#: src/mn-imap-mailbox-properties.gob:124
+#: src/mn-imap-mailbox-properties.gob:130
 msgid "Your username on the IMAP server"
 msgstr "O seu nome de utilizador no servidor IMAP"
 
-#: src/mn-imap-mailbox-properties.gob:125
+#: src/mn-imap-mailbox-properties.gob:131
 msgid ""
 "Your password on the IMAP server (if left blank, you will be prompted for "
 "the password when needed)"
@@ -780,59 +767,63 @@ msgstr ""
 "A sua senha no servidor IMAP (se deixar em branco, a senha será pedida "
 "quando necessária)"
 
-#: src/mn-imap-mailbox-properties.gob:126
-#: src/mn-imap-mailbox-properties.gob:127
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
 msgid "The port number of the IMAP server"
 msgstr "O número do porto do servidor IMAP"
 
-#: src/mn-imap-mailbox-properties.gob:128
+#: src/mn-imap-mailbox-properties.gob:134
 msgid "The mailbox name"
 msgstr "O nome da caixa de correio"
 
-#: src/mn-imap-mailbox.gob:165 src/mn-pop3-mailbox.gob:142
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr "Se possível, usar modo inactivo ou não"
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
 msgid "SSL/TLS support has not been compiled in"
 msgstr "suporte SSL/TLS não foi compilado"
 
-#: src/mn-imap-mailbox.gob:244
+#: src/mn-imap-mailbox.gob:246
 msgid "server did not send capabilities"
 msgstr "servidor não enviou habilidades"
 
-#: src/mn-imap-mailbox.gob:390
+#: src/mn-imap-mailbox.gob:418
 msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
 msgstr "servidor anunciou LOGINDISABLED, não usando a autenticação LOGIN"
 
-#: src/mn-imap-mailbox.gob:391
+#: src/mn-imap-mailbox.gob:419
 msgid "unable to login"
 msgstr "incapaz de ligar"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:538
+#: src/mn-imap-mailbox.gob:571
 msgid "server did not send search results"
 msgstr "servidor não enviou resultados da procura"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:618
+#: src/mn-imap-mailbox.gob:651
 msgid "server did not send all the messages we requested"
 msgstr "servidor não enviou todas as mensagens pedidas"
 
-#: src/mn-imap-mailbox.gob:667
+#: src/mn-imap-mailbox.gob:700
 msgid "unable to fetch message"
 msgstr "incapaz de obter mensagem"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:785
+#: src/mn-imap-mailbox.gob:818
 msgid "server did not send status"
 msgstr "servidor não enviou estado"
 
-#: src/mn-imap-mailbox.gob:1057 src/mn-pop3-mailbox.gob:922
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
 msgid "unknown server error"
 msgstr "erro de servidor desconhecido"
 
-#: src/mn-imap-mailbox.gob:1147 src/mn-pop3-mailbox.gob:226
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
 msgid "server does not support in-band SSL/TLS"
 msgstr "servidor não suporta SSL/TLS in-band"
 
-#: src/mn-imap-mailbox.gob:1168 src/mn-pop3-mailbox.gob:841
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
 msgid ""
 "a SASL authentication mechanism was selected but SASL support has not been "
 "compiled in"
@@ -840,22 +831,22 @@ msgstr ""
 "foi escolhido um mecanismo de autenticação SASL, mas o suporte SASL não foi "
 "compilado"
 
-#: src/mn-imap-mailbox.gob:1176 src/mn-pop3-mailbox.gob:853
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
 #, c-format
 msgid "unknown authentication mechanism \"%s\""
 msgstr "mecanismo de autenticação desconhecido \"%s\""
 
-#: src/mn-imap-mailbox.gob:1194
+#: src/mn-imap-mailbox.gob:1246
 msgid "falling back to IMAP LOGIN authentication"
 msgstr "recorrendo à autenticação IMAP LOGIN"
 
-#: src/mn-imap-mailbox.gob:1199 src/mn-pop3-mailbox.gob:888
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
 msgid "authentication failed"
 msgstr "autenticação falhou"
 
 #: src/mn-mail-icon.gob:92 ui/summary-dialog.glade.h:2
 msgid "_Launch Mail Reader"
-msgstr ""
+msgstr "_Lançar Leitor de Correio"
 
 #: src/mn-mail-icon.gob:93 ui/summary-dialog.glade.h:3
 msgid "_Update"
@@ -944,9 +935,8 @@ msgid "The mailbox human-readable name"
 msgstr "O nome legível da caixa de correio"
 
 #: src/mn-mailbox.gob:145
-#, fuzzy
 msgid "Whether the mailbox has to be polled or not"
-msgstr "Se a caixa de correio tem de ser manualmente verificada"
+msgstr "Se a caixa de correio tem de ser constantemente verificada ou não"
 
 #: src/mn-mailbox.gob:151
 msgid "Whether the mailbox has new mail or not"
@@ -1283,30 +1273,30 @@ msgstr ""
 msgid "The port number of the POP3 server"
 msgstr "O número do porto do servidor POP3"
 
-#: src/mn-pop3-mailbox.gob:272
+#: src/mn-pop3-mailbox.gob:273
 msgid "invalid arguments for the LOGIN-DELAY capability"
 msgstr "argumentos inválidos para a habilidade LOGIN-DELAY"
 
-#: src/mn-pop3-mailbox.gob:556
+#: src/mn-pop3-mailbox.gob:590
 msgid "unknown error"
 msgstr "erro desconhecido"
 
-#: src/mn-pop3-mailbox.gob:690
+#: src/mn-pop3-mailbox.gob:729
 #, c-format
 msgid "honouring LOGIN-DELAY, sleeping for %i second"
 msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
 msgstr[0] "honrando LOGIN-DELAY, dormindo por %i segundo"
 msgstr[1] "honrando LOGIN-DELAY, dormindo por %i segundos"
 
-#: src/mn-pop3-mailbox.gob:849
+#: src/mn-pop3-mailbox.gob:893
 msgid "server does not support APOP authentication"
 msgstr "servidor não suporta autenticação APOP"
 
-#: src/mn-pop3-mailbox.gob:877
+#: src/mn-pop3-mailbox.gob:922
 msgid "falling back to APOP authentication"
 msgstr "recorrendo a autenticação APOP"
 
-#: src/mn-pop3-mailbox.gob:882
+#: src/mn-pop3-mailbox.gob:927
 msgid "falling back to USER/PASS authentication"
 msgstr "recorrendo a autenticação USER/PASS"
 
@@ -1343,16 +1333,15 @@ msgstr "Tem novo correio."
 
 #: src/mn-shell.gob:360
 msgid "Mailboxes Having New Mail"
-msgstr ""
+msgstr "Caixas de Correio Com Novo Correio"
 
 #: src/mn-shell.gob:362
 msgid "Errors"
-msgstr ""
+msgstr "Erros"
 
 #: src/mn-shell.gob:364
-#, fuzzy
 msgid "Unsupported Mailboxes"
-msgstr "Caixa de Correio de Sistema"
+msgstr "Caixas de Correio Não Suportadas"
 
 #: src/mn-shell.gob:381 ui/summary-dialog.glade.h:1
 msgid "Mail Summary"
@@ -1375,17 +1364,17 @@ msgstr "Seleccionar _Todas"
 msgid "_Mail Summary"
 msgstr "_Resumo de Correio"
 
-#: src/mn-sylpheed-mailbox.gob:122
+#: src/mn-sylpheed-mailbox.gob:119
 #, c-format
 msgid "unable to open folder: %s"
 msgstr "incapaz de abrir pasta: %s"
 
-#: src/mn-sylpheed-mailbox.gob:180
+#: src/mn-sylpheed-mailbox.gob:165
 #, c-format
 msgid "unable to close folder: %s"
 msgstr "incapaz de fechar pasta: %s"
 
-#: src/mn-sylpheed-mailbox.gob:183
+#: src/mn-sylpheed-mailbox.gob:168
 #, c-format
 msgid "error while reading folder: %s"
 msgstr "erro ao ler pasta: %s"
@@ -1492,14 +1481,12 @@ msgid "<span weight=\"bold\">Commands</span>"
 msgstr "<span weight=\"bold\">Comandos</span>"
 
 #: ui/properties.glade.h:3
-#, fuzzy
 msgid "<span weight=\"bold\">Double-click Action</span>"
-msgstr "<span weight=\"bold\">Posição</span>"
+msgstr "<span weight=\"bold\">Acção de Duplo-Clique</span>"
 
 #: ui/properties.glade.h:4
-#, fuzzy
 msgid "<span weight=\"bold\">Fonts</span>"
-msgstr "<span weight=\"bold\">Comandos</span>"
+msgstr "<span weight=\"bold\">Fontes</span>"
 
 #: ui/properties.glade.h:5
 msgid "<span weight=\"bold\">General</span>"
@@ -1514,9 +1501,8 @@ msgid "<span weight=\"bold\">Position</span>"
 msgstr "<span weight=\"bold\">Posição</span>"
 
 #: ui/properties.glade.h:8
-#, fuzzy
 msgid "Dis_play mail summary in tooltip"
-msgstr "Mostrar o diálogo de resumo de correio"
+msgstr "_Mostrar o resumo de correio numa dica"
 
 #: ui/properties.glade.h:9
 msgid "General"
@@ -1540,7 +1526,7 @@ msgstr "Caixas de Correio"
 
 #: ui/properties.glade.h:14
 msgid "Only display _recent mail"
-msgstr ""
+msgstr "Mostrar apenas correio _recente"
 
 #: ui/properties.glade.h:15
 msgid "P_osition:"
@@ -1556,9 +1542,8 @@ msgid "The amount of time to wait between mail checks"
 msgstr "A quantidade de tempo a esperar entre verificações de correio"
 
 #: ui/properties.glade.h:18
-#, fuzzy
 msgid "The command to run to launch the mail reader"
-msgstr "O comando a executar quando todo o correio está lido"
+msgstr "O comando a executar para lançar o leitor de correio"
 
 #: ui/properties.glade.h:19
 msgid "The command to run when all mail is read"
@@ -1602,10 +1587,9 @@ msgstr ""
 "Se o popup de resumo de correio deve ser automaticamente fechado ou não"
 
 #: ui/properties.glade.h:27
-#, fuzzy
 msgid "Whether to display the mail summary in the status icon tooltip or not"
 msgstr ""
-"Se o popup de resumo de correio deve ser mostrado quando chega correio ou não"
+"Se o resumo de correio deve ser mostrado na dica do ícone de estado ou não"
 
 #: ui/properties.glade.h:28
 msgid "Whether to display the mail summary popup when new mail arrives or not"
@@ -1613,9 +1597,8 @@ msgstr ""
 "Se o popup de resumo de correio deve ser mostrado quando chega correio ou não"
 
 #: ui/properties.glade.h:29
-#, fuzzy
 msgid "Whether to hide previously displayed mail or not"
-msgstr "Se a caixa de correio tem novo correio"
+msgstr "Se o correio mostrado previamente deve ser escondido ou não"
 
 #: ui/properties.glade.h:30
 msgid "Whether to run a command when all mail is read or not"
@@ -1626,9 +1609,8 @@ msgid "Whether to run a command when new mail arrives or not"
 msgstr "Se deve ser executado um comando quando chega novo correio"
 
 #: ui/properties.glade.h:32
-#, fuzzy
 msgid "Whether to set a mail reader or not"
-msgstr "Se deve ser executado um comando quando todo o correio está lido"
+msgstr "Se deve ser definido um leitor de correio ou não"
 
 #: ui/properties.glade.h:33
 msgid ""
@@ -1639,19 +1621,19 @@ msgstr ""
 "GNOME ou não"
 
 #: ui/properties.glade.h:34
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the contents of the mail summary popup or "
 "not"
 msgstr ""
-"Se o popup de resumo de correio deve ser automaticamente fechado ou não"
+"Se deve ser usada uma fonte personalizada para o conteúdo do popup de resumo "
+"de correio ou não"
 
 #: ui/properties.glade.h:35
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the title of the mail summary popup or not"
 msgstr ""
-"Se o popup de resumo de correio deve ser automaticamente fechado ou não"
+"Se deve ser usada uma fonte personalizada para o título do popup de resumo "
+"de correio ou não"
 
 #: ui/properties.glade.h:36
 msgid "_Automatically close after:"
@@ -1663,16 +1645,15 @@ msgstr "_Piscar em erros"
 
 #: ui/properties.glade.h:38
 msgid "_Contents font:"
-msgstr ""
+msgstr "Fonte do conteúdo:"
 
 #: ui/properties.glade.h:39
 msgid "_Delay between mail checks:"
 msgstr "_Intervalo entre verificações de correio:"
 
 #: ui/properties.glade.h:40
-#, fuzzy
 msgid "_Display the mail summary dialog"
-msgstr "Mostrar o diálogo de resumo de correio"
+msgstr "_Mostrar o diálogo de resumo de correio"
 
 #: ui/properties.glade.h:41
 msgid "_Enable mail summary popup"
@@ -1680,12 +1661,11 @@ msgstr "_Activar popup de resumo de correio"
 
 #: ui/properties.glade.h:42
 msgid "_Launch the mail reader"
-msgstr ""
+msgstr "_Lançar o leitor de correio"
 
 #: ui/properties.glade.h:43
-#, fuzzy
 msgid "_Mail reader:"
-msgstr "_Resumo de Correio"
+msgstr "_Leitor de correio:"
 
 #: ui/properties.glade.h:44
 msgid "_Start Mail Notification on GNOME login"
@@ -1693,7 +1673,7 @@ msgstr "_Iniciar Notificação de Correio no login GNOME"
 
 #: ui/properties.glade.h:45
 msgid "_Title font:"
-msgstr ""
+msgstr "Fonte para o _título:"
 
 #: ui/properties.glade.h:46
 msgid "_Vertical offset:"
diff --git a/po/ru.gmo b/po/ru.gmo
Binary files differ.
diff --git a/po/ru.po b/po/ru.po
@@ -10,7 +10,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: mail-notification 0.5.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-11-15 16:03+0100\n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
 "PO-Revision-Date: 2004-07-21 21:58+0200\n"
 "Last-Translator: Dan Korostelev <dan@ats.energo.ru>\n"
 "Language-Team: Russian\n"
@@ -373,14 +373,7 @@ msgstr "Dan Korostelev <dan@ats.energo.ru>"
 msgid "<span style=\"italic\">autodetect</span>"
 msgstr ""
 
-#. translator: example output: Enter your password for POP3 mailbox jylefort@localhost.
-#: src/mn-authenticated-mailbox.gob:77
-#, c-format
-msgid "Enter your password for %s mailbox %s."
-msgstr ""
-
-#. translator: example output: ... into POP3 mailbox jylefort@localhost ...
-#: src/mn-authenticated-mailbox.gob:98
+#: src/mn-authenticated-mailbox.gob:80
 #, c-format
 msgid ""
 "Mail Notification was unable to log into %s mailbox %s, possibly because the "
@@ -389,7 +382,12 @@ msgid ""
 "Please re-enter your password."
 msgstr ""
 
-#: src/mn-authenticated-mailbox.gob:164
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr ""
+
+#: src/mn-authenticated-mailbox.gob:132
 #, c-format
 msgid ""
 "<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
@@ -418,85 +416,85 @@ msgstr ""
 msgid "Whether the image is blinking or not"
 msgstr ""
 
-#: src/mn-client-session.c:229
+#: src/mn-client-session.c:220
 #, c-format
 msgid "resolving %s"
 msgstr ""
 
-#: src/mn-client-session.c:239
+#: src/mn-client-session.c:230
 #, c-format
 msgid "unable to resolve %s: %s"
 msgstr ""
 
-#: src/mn-client-session.c:276
+#: src/mn-client-session.c:267
 #, c-format
 msgid "%s: unsupported address family"
 msgstr ""
 
-#: src/mn-client-session.c:283
+#: src/mn-client-session.c:274
 #, c-format
 msgid "%s: unable to create socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:287
+#: src/mn-client-session.c:278
 #, c-format
 msgid "connecting to %s (%s) port %i"
 msgstr ""
 
-#: src/mn-client-session.c:290
+#: src/mn-client-session.c:281
 #, c-format
 msgid "unable to connect: %s"
 msgstr ""
 
-#: src/mn-client-session.c:295
+#: src/mn-client-session.c:286
 msgid "connected successfully"
 msgstr ""
 
 #. if reached, we couldn't find a working address
-#: src/mn-client-session.c:301
+#: src/mn-client-session.c:292
 #, c-format
 msgid "unable to connect to %s"
 msgstr ""
 
-#: src/mn-client-session.c:317
+#: src/mn-client-session.c:308
 #, c-format
 msgid "unable to initialize the OpenSSL library: %s"
 msgstr ""
 
-#: src/mn-client-session.c:325
+#: src/mn-client-session.c:316
 #, c-format
 msgid "unable to create a SSL/TLS object: %s"
 msgstr ""
 
-#: src/mn-client-session.c:331
+#: src/mn-client-session.c:322
 #, c-format
 msgid "unable to set the SSL/TLS file descriptor: %s"
 msgstr ""
 
-#: src/mn-client-session.c:337
+#: src/mn-client-session.c:328
 #, c-format
 msgid "unable to perform the SSL/TLS handshake: %s"
 msgstr ""
 
-#: src/mn-client-session.c:343
+#: src/mn-client-session.c:334
 msgid "untrusted server"
 msgstr ""
 
-#: src/mn-client-session.c:347
+#: src/mn-client-session.c:338
 #, c-format
 msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
 msgstr ""
 
-#: src/mn-client-session.c:394
+#: src/mn-client-session.c:385
 #, c-format
 msgid "%s, fingerprint: %s"
 msgstr ""
 
-#: src/mn-client-session.c:423
+#: src/mn-client-session.c:414
 msgid "missing certificate"
 msgstr ""
 
-#: src/mn-client-session.c:449
+#: src/mn-client-session.c:440
 #, c-format
 msgid ""
 "Mail Notification was unable to trust \"%s\" (%s). It is possible that "
@@ -508,131 +506,131 @@ msgid ""
 "shown again."
 msgstr ""
 
-#: src/mn-client-session.c:466
+#: src/mn-client-session.c:457
 msgid "Connect to untrusted server?"
 msgstr ""
 
-#: src/mn-client-session.c:471
+#: src/mn-client-session.c:462
 msgid "Co_nnect"
 msgstr ""
 
-#: src/mn-client-session.c:527
+#: src/mn-client-session.c:518
 #, c-format
 msgid "response \"%s\" is not valid in current context"
 msgstr ""
 
-#: src/mn-client-session.c:553
+#: src/mn-client-session.c:544
 #, c-format
 msgid "unable to parse response \"%s\""
 msgstr ""
 
-#: src/mn-client-session.c:601 src/mn-client-session.c:608
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
 #, c-format
 msgid "unable to read from server: %s"
 msgstr ""
 
-#: src/mn-client-session.c:606
+#: src/mn-client-session.c:597
 msgid "unable to read from server: EOF"
 msgstr ""
 
-#: src/mn-client-session.c:618
+#: src/mn-client-session.c:609
 #, c-format
 msgid "unable to decode data using SASL: %s"
 msgstr ""
 
-#: src/mn-client-session.c:755
+#: src/mn-client-session.c:746
 #, c-format
 msgid "unable to encode data using SASL: %s"
 msgstr ""
 
-#: src/mn-client-session.c:786 src/mn-client-session.c:793
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
 #, c-format
 msgid "unable to write to server: %s"
 msgstr ""
 
-#: src/mn-client-session.c:791
+#: src/mn-client-session.c:782
 msgid "unable to write to server: EOF"
 msgstr ""
 
-#: src/mn-client-session.c:823
+#: src/mn-client-session.c:814
 #, c-format
 msgid "unable to encode Base64: %s"
 msgstr ""
 
-#: src/mn-client-session.c:927
+#: src/mn-client-session.c:925
 #, c-format
 msgid "unable to initialize the SASL library: %s"
 msgstr ""
 
-#: src/mn-client-session.c:936
+#: src/mn-client-session.c:934
 #, c-format
 msgid "unable to retrieve local address of socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:942
+#: src/mn-client-session.c:940
 #, c-format
 msgid "unable to retrieve remote address of socket: %s"
 msgstr ""
 
-#: src/mn-client-session.c:976
+#: src/mn-client-session.c:974
 #, c-format
 msgid "warning: unable to set SASL security properties: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1015
+#: src/mn-client-session.c:998
 msgid ""
 "unable to start SASL authentication: SASL asked for something we did not know"
 msgstr ""
 
-#: src/mn-client-session.c:1019
+#: src/mn-client-session.c:1017
 #, c-format
 msgid "unable to start SASL authentication: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1023
+#: src/mn-client-session.c:1021
 #, c-format
 msgid "unable to create a SASL connection: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1073
+#: src/mn-client-session.c:1058
 msgid "SASL asked for something we did not know, aborting SASL authentication"
 msgstr ""
 
-#: src/mn-client-session.c:1077
+#: src/mn-client-session.c:1075
 #, c-format
 msgid "%s, aborting SASL authentication"
 msgstr ""
 
 #. compliance error
-#: src/mn-client-session.c:1082
+#: src/mn-client-session.c:1080
 #, c-format
 msgid "unable to decode Base64 input from server: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1085
+#: src/mn-client-session.c:1083
 msgid ""
 "the server sent a SASL challenge, but there was a pending initial SASL "
 "client response"
 msgstr ""
 
-#: src/mn-client-session.c:1099
+#: src/mn-client-session.c:1097
 msgid ""
 "the server did not send a SASL challenge, but there was no pending initial "
 "SASL client response"
 msgstr ""
 
-#: src/mn-client-session.c:1124
+#: src/mn-client-session.c:1122
 #, c-format
 msgid "a SASL security layer of strength factor %i is now active"
 msgstr ""
 
 #. a security layer is active but we can't retrieve maxoutbuf -> fatal
-#: src/mn-client-session.c:1129
+#: src/mn-client-session.c:1127
 #, c-format
 msgid "unable to get SASL_MAXOUTBUF property: %s"
 msgstr ""
 
-#: src/mn-client-session.c:1135
+#: src/mn-client-session.c:1133
 #, c-format
 msgid "warning: unable to get SASL_SSF property: %s"
 msgstr ""
@@ -660,33 +658,33 @@ msgid ""
 "when needed)"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:81
+#: src/mn-gmail-mailbox.gob:82
 msgid "libsoup has not been compiled with SSL/TLS support"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:123
+#: src/mn-gmail-mailbox.gob:160
 #, c-format
 msgid "unable to parse URI \"%s\""
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:177
+#: src/mn-gmail-mailbox.gob:214
 #, c-format
 msgid "unable to transfer data: %s"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:298
+#: src/mn-gmail-mailbox.gob:335
 msgid "logging in"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:376
+#: src/mn-gmail-mailbox.gob:413
 msgid "login failed"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:451
+#: src/mn-gmail-mailbox.gob:488
 msgid "searching for unread mail"
 msgstr ""
 
-#: src/mn-gmail-mailbox.gob:490
+#: src/mn-gmail-mailbox.gob:527
 msgid "unable to parse Gmail data"
 msgstr ""
 
@@ -715,100 +713,108 @@ msgstr ""
 msgid "unable to close %s: %s"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:93
+#: src/mn-imap-mailbox-properties.gob:94
 msgid "Mailbox:"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:97
+#: src/mn-imap-mailbox-properties.gob:98
 msgid "in_box"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:108
+#: src/mn-imap-mailbox-properties.gob:109
 msgid "oth_er:"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:123
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr ""
+
+#: src/mn-imap-mailbox-properties.gob:129
 msgid "The hostname or IP address of the IMAP server"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:124
+#: src/mn-imap-mailbox-properties.gob:130
 msgid "Your username on the IMAP server"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:125
+#: src/mn-imap-mailbox-properties.gob:131
 msgid ""
 "Your password on the IMAP server (if left blank, you will be prompted for "
 "the password when needed)"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:126
-#: src/mn-imap-mailbox-properties.gob:127
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
 msgid "The port number of the IMAP server"
 msgstr ""
 
-#: src/mn-imap-mailbox-properties.gob:128
+#: src/mn-imap-mailbox-properties.gob:134
 msgid "The mailbox name"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:165 src/mn-pop3-mailbox.gob:142
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr ""
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
 msgid "SSL/TLS support has not been compiled in"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:244
+#: src/mn-imap-mailbox.gob:246
 msgid "server did not send capabilities"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:390
+#: src/mn-imap-mailbox.gob:418
 msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:391
+#: src/mn-imap-mailbox.gob:419
 msgid "unable to login"
 msgstr ""
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:538
+#: src/mn-imap-mailbox.gob:571
 msgid "server did not send search results"
 msgstr ""
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:618
+#: src/mn-imap-mailbox.gob:651
 msgid "server did not send all the messages we requested"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:667
+#: src/mn-imap-mailbox.gob:700
 msgid "unable to fetch message"
 msgstr ""
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:785
+#: src/mn-imap-mailbox.gob:818
 msgid "server did not send status"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1057 src/mn-pop3-mailbox.gob:922
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
 msgid "unknown server error"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1147 src/mn-pop3-mailbox.gob:226
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
 msgid "server does not support in-band SSL/TLS"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1168 src/mn-pop3-mailbox.gob:841
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
 msgid ""
 "a SASL authentication mechanism was selected but SASL support has not been "
 "compiled in"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1176 src/mn-pop3-mailbox.gob:853
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
 #, c-format
 msgid "unknown authentication mechanism \"%s\""
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1194
+#: src/mn-imap-mailbox.gob:1246
 msgid "falling back to IMAP LOGIN authentication"
 msgstr ""
 
-#: src/mn-imap-mailbox.gob:1199 src/mn-pop3-mailbox.gob:888
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
 msgid "authentication failed"
 msgstr ""
 
@@ -1220,30 +1226,30 @@ msgstr ""
 msgid "The port number of the POP3 server"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:272
+#: src/mn-pop3-mailbox.gob:273
 msgid "invalid arguments for the LOGIN-DELAY capability"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:556
+#: src/mn-pop3-mailbox.gob:590
 msgid "unknown error"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:690
+#: src/mn-pop3-mailbox.gob:729
 #, c-format
 msgid "honouring LOGIN-DELAY, sleeping for %i second"
 msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/mn-pop3-mailbox.gob:849
+#: src/mn-pop3-mailbox.gob:893
 msgid "server does not support APOP authentication"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:877
+#: src/mn-pop3-mailbox.gob:922
 msgid "falling back to APOP authentication"
 msgstr ""
 
-#: src/mn-pop3-mailbox.gob:882
+#: src/mn-pop3-mailbox.gob:927
 msgid "falling back to USER/PASS authentication"
 msgstr ""
 
@@ -1311,17 +1317,17 @@ msgstr ""
 msgid "_Mail Summary"
 msgstr ""
 
-#: src/mn-sylpheed-mailbox.gob:122
+#: src/mn-sylpheed-mailbox.gob:119
 #, c-format
 msgid "unable to open folder: %s"
 msgstr ""
 
-#: src/mn-sylpheed-mailbox.gob:180
+#: src/mn-sylpheed-mailbox.gob:165
 #, c-format
 msgid "unable to close folder: %s"
 msgstr ""
 
-#: src/mn-sylpheed-mailbox.gob:183
+#: src/mn-sylpheed-mailbox.gob:168
 #, c-format
 msgid "error while reading folder: %s"
 msgstr ""
diff --git a/po/sr.gmo b/po/sr.gmo
Binary files differ.
diff --git a/po/sr.po b/po/sr.po
@@ -6,12 +6,15 @@
 #
 # Filip Miletic <filmil@gmail.com>, 2004.
 #
+# Both Serbian Cyrillic and Serbian Latin files should
+# be available.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: mail-notification 0.8.0\n"
+"Project-Id-Version: mail-notification 1.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-11-15 16:03+0100\n"
-"PO-Revision-Date: 2004-11-01 23:00+0100\n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
+"PO-Revision-Date: 2004-11-21 19:32:+0100\n"
 "Last-Translator: Филип Милетић <filmil@gmail.com>\n"
 "Language-Team: Serbian (sr) <gnu@prevod.org>\n"
 "MIME-Version: 1.0\n"
@@ -60,9 +63,8 @@ msgid "Delay between mail checks (seconds part)."
 msgstr "Размак између две провере (секунде)."
 
 #: data/mail-notification.schemas.in.h:5
-#, fuzzy
 msgid "Display mail summary in tooltip"
-msgstr "Прикажи прозор са сажетком порука"
+msgstr "Прикажи сажетат порука у облачићу"
 
 #: data/mail-notification.schemas.in.h:6
 msgid "Do not show the immediate notification error dialog"
@@ -101,9 +103,8 @@ msgid "Mail reader command"
 msgstr "Команда за читање поште"
 
 #: data/mail-notification.schemas.in.h:15
-#, fuzzy
 msgid "Mail summary popup contents font"
-msgstr "Број хоризонталних тачака за прозор са сажетком порука"
+msgstr "Писмо које се користи за садржај прозора са сажетком порука"
 
 #: data/mail-notification.schemas.in.h:16
 msgid "Mail summary popup horizontal offset"
@@ -114,9 +115,8 @@ msgid "Mail summary popup position"
 msgstr "Број хоризонталних тачака за прозор са сажетком порука"
 
 #: data/mail-notification.schemas.in.h:18
-#, fuzzy
 msgid "Mail summary popup title font"
-msgstr "Број хоризонталних тачака за прозор са сажетком порука"
+msgstr "Писмо које се користи за наслов прозора са сажетком порука"
 
 #: data/mail-notification.schemas.in.h:19
 msgid "Mail summary popup vertical offset"
@@ -169,7 +169,7 @@ msgid ""
 "mail-summary\" or \"launch-mail-reader\"."
 msgstr ""
 "Постављање наредбе која се извршава при двоструком клику на сличицу. Могући "
-"избори су: „прикажи-сажетак-поште‟ или „покрени-читач-поште‟."
+"избори су: ?прикажи-сажетак-поште? или ?покрени-читач-поште?."
 
 #: data/mail-notification.schemas.in.h:31
 msgid ""
@@ -196,14 +196,14 @@ msgid "The command to run when new mail arrives."
 msgstr "Покрени ову команду када стигне нова пошта."
 
 #: data/mail-notification.schemas.in.h:36
-#, fuzzy
 msgid "The custom font to use for the contents of the mail summary popup."
-msgstr "Пауза пре затварања прозора са сажетком порука"
+msgstr ""
+"Посебно писмо које се користи за испис садржаја прозора са сажетком порука."
 
 #: data/mail-notification.schemas.in.h:37
-#, fuzzy
 msgid "The custom font to use for the title of the mail summary popup."
-msgstr "Пауза пре затварања прозора са сажетком порука"
+msgstr ""
+"Посебно писмо које се користи за испис наслова прозора са сажетком порука."
 
 #: data/mail-notification.schemas.in.h:38
 msgid "The height of the mail summary dialog in pixels."
@@ -250,8 +250,8 @@ msgid ""
 "The position of the mail summary popup. Must be \"top-left\", \"top-right\", "
 "\"bottom-left\" or \"bottom-right\"."
 msgstr ""
-"Положај прозора са сажетком порука. Може бити: „горе-лево‟, „горе-десно‟, "
-"„доле-лево‟ или „доле-десно‟."
+"Положај прозора са сажетком порука. Може бити: ?горе-лево?, ?горе-десно?, ?"
+"доле-лево? или ?доле-десно?."
 
 #: data/mail-notification.schemas.in.h:46
 msgid "The width of the mail summary dialog in pixels."
@@ -266,14 +266,12 @@ msgid "Trusted servers list"
 msgstr "Списак проверених сервера"
 
 #: data/mail-notification.schemas.in.h:49
-#, fuzzy
 msgid "Use a custom font for the contents of the mail summary popup"
-msgstr "Број секунди који треба да протекне пре затварања сажетка порука"
+msgstr "Користи посебно писмо за садржај прозора са сажетком порука"
 
 #: data/mail-notification.schemas.in.h:50
-#, fuzzy
 msgid "Use a custom font for the title of the mail summary popup"
-msgstr "Пауза пре затварања прозора са сажетком порука"
+msgstr "Користи посебно писмо за наслов прозора са сажетком порука"
 
 #: data/mail-notification.schemas.in.h:51
 msgid "Whether Mail Notification has already been run or not."
@@ -289,9 +287,9 @@ msgstr ""
 "Да ли треба или не треба аутоматски затворити прозор са сажетком поште."
 
 #: data/mail-notification.schemas.in.h:54
-#, fuzzy
 msgid "Whether to display the mail summary in the status icon tooltip or not."
-msgstr "Да ли треба приказати сажетак порука када стигне нова пошта."
+msgstr ""
+"Да ли треба приказати сажетак порука у облачићу статусне сличице или не."
 
 #: data/mail-notification.schemas.in.h:55
 msgid "Whether to display the mail summary popup when new mail arrives or not."
@@ -323,19 +321,19 @@ msgid "Whether to set a mail reader or not."
 msgstr "Да ли треба поставити читач поште или не."
 
 #: data/mail-notification.schemas.in.h:61
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the contents of the mail summary popup or "
 "not."
 msgstr ""
-"Да ли треба или не треба аутоматски затворити прозор са сажетком поште."
+"Да ли треба или не треба користити посебно писмо за садржај прозора са "
+"сажетком поште."
 
 #: data/mail-notification.schemas.in.h:62
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the title of the mail summary popup or not."
 msgstr ""
-"Да ли треба или не треба аутоматски затворити прозор са сажетком поште."
+"Да ли треба или не треба кориситити посебно писмо за наслов прозора са "
+"сажетком поште."
 
 #: data/mail-notification.schemas.in.h:63
 msgid "Width of mail summary dialog"
@@ -371,14 +369,7 @@ msgstr "Филип Милетић <filmil@gmail.com>"
 msgid "<span style=\"italic\">autodetect</span>"
 msgstr "<span style=\"italic\">сам пронађи</span>"
 
-#. translator: example output: Enter your password for POP3 mailbox jylefort@localhost.
-#: src/mn-authenticated-mailbox.gob:77
-#, c-format
-msgid "Enter your password for %s mailbox %s."
-msgstr "Унесите лозинку за %s сандуче %s."
-
-#. translator: example output: ... into POP3 mailbox jylefort@localhost ...
-#: src/mn-authenticated-mailbox.gob:98
+#: src/mn-authenticated-mailbox.gob:80
 #, c-format
 msgid ""
 "Mail Notification was unable to log into %s mailbox %s, possibly because the "
@@ -391,7 +382,12 @@ msgstr ""
 "\n"
 "Молим унесите поново лозинку."
 
-#: src/mn-authenticated-mailbox.gob:164
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr "Унесите лозинку за %s сандуче %s."
+
+#: src/mn-authenticated-mailbox.gob:132
 #, c-format
 msgid ""
 "<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
@@ -424,85 +420,85 @@ msgstr "Изаберите датотеку или директоријум"
 msgid "Whether the image is blinking or not"
 msgstr "Да ли слика трепери или не"
 
-#: src/mn-client-session.c:229
+#: src/mn-client-session.c:220
 #, c-format
 msgid "resolving %s"
 msgstr "проналазим %s"
 
-#: src/mn-client-session.c:239
+#: src/mn-client-session.c:230
 #, c-format
 msgid "unable to resolve %s: %s"
 msgstr "Није могуће пронаћи %s: %s"
 
-#: src/mn-client-session.c:276
+#: src/mn-client-session.c:267
 #, c-format
 msgid "%s: unsupported address family"
 msgstr "%s: ова врста адресе није подржана"
 
-#: src/mn-client-session.c:283
+#: src/mn-client-session.c:274
 #, c-format
 msgid "%s: unable to create socket: %s"
 msgstr "%s: није могуће направити утичницу: %s"
 
-#: src/mn-client-session.c:287
+#: src/mn-client-session.c:278
 #, c-format
 msgid "connecting to %s (%s) port %i"
 msgstr "повезујем се са %s (%s) порт %i"
 
-#: src/mn-client-session.c:290
+#: src/mn-client-session.c:281
 #, c-format
 msgid "unable to connect: %s"
 msgstr "није могуће повезати се са: %s"
 
-#: src/mn-client-session.c:295
+#: src/mn-client-session.c:286
 msgid "connected successfully"
 msgstr "повезивање је успело"
 
 #. if reached, we couldn't find a working address
-#: src/mn-client-session.c:301
+#: src/mn-client-session.c:292
 #, c-format
 msgid "unable to connect to %s"
 msgstr "није могуће повезати се са %s"
 
-#: src/mn-client-session.c:317
+#: src/mn-client-session.c:308
 #, c-format
 msgid "unable to initialize the OpenSSL library: %s"
 msgstr "није могуће покренути OpenSSL библиотеку: %s"
 
-#: src/mn-client-session.c:325
+#: src/mn-client-session.c:316
 #, c-format
 msgid "unable to create a SSL/TLS object: %s"
 msgstr "није могуће направити SSL/TLS објекат: %s"
 
-#: src/mn-client-session.c:331
+#: src/mn-client-session.c:322
 #, c-format
 msgid "unable to set the SSL/TLS file descriptor: %s"
 msgstr "није могуће поставити SSL/TLS опис за датотеку: %s"
 
-#: src/mn-client-session.c:337
+#: src/mn-client-session.c:328
 #, c-format
 msgid "unable to perform the SSL/TLS handshake: %s"
 msgstr "није могуће обавити SSL/TLS контакт: %s"
 
-#: src/mn-client-session.c:343
+#: src/mn-client-session.c:334
 msgid "untrusted server"
 msgstr "непроверен сервер"
 
-#: src/mn-client-session.c:347
+#: src/mn-client-session.c:338
 #, c-format
 msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
 msgstr "SSL/TLS слој је покренут (%s, %s %i-бит)"
 
-#: src/mn-client-session.c:394
+#: src/mn-client-session.c:385
 #, c-format
 msgid "%s, fingerprint: %s"
 msgstr "%s, отисак: %s"
 
-#: src/mn-client-session.c:423
+#: src/mn-client-session.c:414
 msgid "missing certificate"
 msgstr "недостаје сертификат"
 
-#: src/mn-client-session.c:449
+#: src/mn-client-session.c:440
 #, c-format
 msgid ""
 "Mail Notification was unable to trust \"%s\" (%s). It is possible that "
@@ -521,133 +517,133 @@ msgstr ""
 "са \"%s\". Ако одлучите да се повежете на сервер, ова порука неће поново "
 "бити приказана."
 
-#: src/mn-client-session.c:466
+#: src/mn-client-session.c:457
 msgid "Connect to untrusted server?"
 msgstr "Да ли да се повежем на непроверени сервер?"
 
-#: src/mn-client-session.c:471
+#: src/mn-client-session.c:462
 msgid "Co_nnect"
 msgstr "_Повежи се"
 
-#: src/mn-client-session.c:527
+#: src/mn-client-session.c:518
 #, c-format
 msgid "response \"%s\" is not valid in current context"
 msgstr "одговор \"%s\" није исправан у тренутно важећем контексту"
 
-#: src/mn-client-session.c:553
+#: src/mn-client-session.c:544
 #, c-format
 msgid "unable to parse response \"%s\""
 msgstr "није могуће обрадити одговор \"%s\""
 
-#: src/mn-client-session.c:601 src/mn-client-session.c:608
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
 #, c-format
 msgid "unable to read from server: %s"
 msgstr "Није могуће читање са сервера: %s"
 
-#: src/mn-client-session.c:606
+#: src/mn-client-session.c:597
 msgid "unable to read from server: EOF"
 msgstr "Није могуће читање са сервера: EOF"
 
-#: src/mn-client-session.c:618
+#: src/mn-client-session.c:609
 #, c-format
 msgid "unable to decode data using SASL: %s"
 msgstr "Не могу се декодовати подаци путем SASL: %s"
 
-#: src/mn-client-session.c:755
+#: src/mn-client-session.c:746
 #, c-format
 msgid "unable to encode data using SASL: %s"
 msgstr "није могуће кодирати податке уз помоћ SASL: %s"
 
-#: src/mn-client-session.c:786 src/mn-client-session.c:793
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
 #, c-format
 msgid "unable to write to server: %s"
 msgstr "није могућ упис на сервер: %s"
 
-#: src/mn-client-session.c:791
+#: src/mn-client-session.c:782
 msgid "unable to write to server: EOF"
 msgstr "није могућ упис на сервер: EOF"
 
-#: src/mn-client-session.c:823
+#: src/mn-client-session.c:814
 #, c-format
 msgid "unable to encode Base64: %s"
 msgstr "није могуће кодирати Base64: %s"
 
-#: src/mn-client-session.c:927
+#: src/mn-client-session.c:925
 #, c-format
 msgid "unable to initialize the SASL library: %s"
 msgstr "не може се покренути SASL библиотека: %s"
 
-#: src/mn-client-session.c:936
+#: src/mn-client-session.c:934
 #, c-format
 msgid "unable to retrieve local address of socket: %s"
 msgstr "не може да се добави локална адреса утичнице: %s"
 
-#: src/mn-client-session.c:942
+#: src/mn-client-session.c:940
 #, c-format
 msgid "unable to retrieve remote address of socket: %s"
 msgstr "не може да се добави удаљена адреса утичнице: %s"
 
-#: src/mn-client-session.c:976
+#: src/mn-client-session.c:974
 #, c-format
 msgid "warning: unable to set SASL security properties: %s"
 msgstr "упозорење: није могуће поставити SASL сигурносне поставке %s"
 
-#: src/mn-client-session.c:1015
+#: src/mn-client-session.c:998
 msgid ""
 "unable to start SASL authentication: SASL asked for something we did not know"
 msgstr "не може се покренути SASL пријава: SASL тражи податке које немамо"
 
-#: src/mn-client-session.c:1019
+#: src/mn-client-session.c:1017
 #, c-format
 msgid "unable to start SASL authentication: %s"
 msgstr "не може се покренути SASL пријава: %s"
 
-#: src/mn-client-session.c:1023
+#: src/mn-client-session.c:1021
 #, c-format
 msgid "unable to create a SASL connection: %s"
 msgstr "није могуће успоставити SASL везу: %s"
 
-#: src/mn-client-session.c:1073
+#: src/mn-client-session.c:1058
 msgid "SASL asked for something we did not know, aborting SASL authentication"
 msgstr "SASL је тражио нама непознате податке, обустављам SASL пријаву"
 
-#: src/mn-client-session.c:1077
+#: src/mn-client-session.c:1075
 #, c-format
 msgid "%s, aborting SASL authentication"
 msgstr "%s, обустављам SASL пријаву"
 
 #. compliance error
-#: src/mn-client-session.c:1082
+#: src/mn-client-session.c:1080
 #, c-format
 msgid "unable to decode Base64 input from server: %s"
 msgstr "није могуће декодовати Base64 улаз са сервера: %s"
 
-#: src/mn-client-session.c:1085
+#: src/mn-client-session.c:1083
 msgid ""
 "the server sent a SASL challenge, but there was a pending initial SASL "
 "client response"
 msgstr ""
 "сервер је започео SASL разговор, али одговор од клијента стигао пре тога"
 
-#: src/mn-client-session.c:1099
+#: src/mn-client-session.c:1097
 msgid ""
 "the server did not send a SASL challenge, but there was no pending initial "
 "SASL client response"
 msgstr ""
 "сервер није послао SASL разговор, али није било ни одговора од клијента."
 
-#: src/mn-client-session.c:1124
+#: src/mn-client-session.c:1122
 #, c-format
 msgid "a SASL security layer of strength factor %i is now active"
 msgstr "SASL сигурносни слој нивоа снаге %i је успостављен"
 
 #. a security layer is active but we can't retrieve maxoutbuf -> fatal
-#: src/mn-client-session.c:1129
+#: src/mn-client-session.c:1127
 #, c-format
 msgid "unable to get SASL_MAXOUTBUF property: %s"
 msgstr "не могу да прочитам поставку SASL_MAXOUTBUF: %s"
 
-#: src/mn-client-session.c:1135
+#: src/mn-client-session.c:1133
 #, c-format
 msgid "warning: unable to get SASL_SSF property: %s"
 msgstr "упозорење: не могу да прочитам поставку SASL_SSF: %s"
@@ -677,33 +673,33 @@ msgstr ""
 "Ваша лозинка на сервису Gmail (ако не упишете лозинку, програм ће Вас "
 "замолити да је унесете када то буде потребно)"
 
-#: src/mn-gmail-mailbox.gob:81
+#: src/mn-gmail-mailbox.gob:82
 msgid "libsoup has not been compiled with SSL/TLS support"
 msgstr "libsoup није изграђен са подршком за SSL/TLS"
 
-#: src/mn-gmail-mailbox.gob:123
+#: src/mn-gmail-mailbox.gob:160
 #, c-format
 msgid "unable to parse URI \"%s\""
 msgstr "није могуће обрадити URI \"%s\""
 
-#: src/mn-gmail-mailbox.gob:177
+#: src/mn-gmail-mailbox.gob:214
 #, c-format
 msgid "unable to transfer data: %s"
 msgstr "не могу да преузмем податке: %s"
 
-#: src/mn-gmail-mailbox.gob:298
+#: src/mn-gmail-mailbox.gob:335
 msgid "logging in"
 msgstr "пријава у току"
 
-#: src/mn-gmail-mailbox.gob:376
+#: src/mn-gmail-mailbox.gob:413
 msgid "login failed"
 msgstr "пријава није успела"
 
-#: src/mn-gmail-mailbox.gob:451
+#: src/mn-gmail-mailbox.gob:488
 msgid "searching for unread mail"
 msgstr "тражим нову пошту"
 
-#: src/mn-gmail-mailbox.gob:490
+#: src/mn-gmail-mailbox.gob:527
 msgid "unable to parse Gmail data"
 msgstr "не могу да обрадим податке са сервиса Gmail"
 
@@ -732,27 +728,31 @@ msgstr "није могуће сазнати положај за %s: %s"
 msgid "unable to close %s: %s"
 msgstr "није могуће затворити %s: %s"
 
-#: src/mn-imap-mailbox-properties.gob:93
+#: src/mn-imap-mailbox-properties.gob:94
 msgid "Mailbox:"
 msgstr "Сандуче:"
 
-#: src/mn-imap-mailbox-properties.gob:97
+#: src/mn-imap-mailbox-properties.gob:98
 msgid "in_box"
 msgstr "in_box"
 
-#: src/mn-imap-mailbox-properties.gob:108
+#: src/mn-imap-mailbox-properties.gob:109
 msgid "oth_er:"
 msgstr "_друго:"
 
-#: src/mn-imap-mailbox-properties.gob:123
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr "К_ористи време доколице, ако је могуће"
+
+#: src/mn-imap-mailbox-properties.gob:129
 msgid "The hostname or IP address of the IMAP server"
 msgstr "Име или IP број IMAP сервера"
 
-#: src/mn-imap-mailbox-properties.gob:124
+#: src/mn-imap-mailbox-properties.gob:130
 msgid "Your username on the IMAP server"
 msgstr "Ваше име на IMAP серверу"
 
-#: src/mn-imap-mailbox-properties.gob:125
+#: src/mn-imap-mailbox-properties.gob:131
 msgid ""
 "Your password on the IMAP server (if left blank, you will be prompted for "
 "the password when needed)"
@@ -760,59 +760,63 @@ msgstr ""
 "Ваша лозинка на IMAP серверу (ако не упишете лозинку, програм ће Вас "
 "замолити да је унесете када то буде потребно)"
 
-#: src/mn-imap-mailbox-properties.gob:126
-#: src/mn-imap-mailbox-properties.gob:127
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
 msgid "The port number of the IMAP server"
 msgstr "Број порта на IMAP серверу"
 
-#: src/mn-imap-mailbox-properties.gob:128
+#: src/mn-imap-mailbox-properties.gob:134
 msgid "The mailbox name"
 msgstr "Име сандучета"
 
-#: src/mn-imap-mailbox.gob:165 src/mn-pop3-mailbox.gob:142
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr "Да ли треба користити време доколице или не"
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
 msgid "SSL/TLS support has not been compiled in"
 msgstr "Подршка за SSL/TLS није уграђена"
 
-#: src/mn-imap-mailbox.gob:244
+#: src/mn-imap-mailbox.gob:246
 msgid "server did not send capabilities"
 msgstr "сервер није обавестио о својим могућностима"
 
-#: src/mn-imap-mailbox.gob:390
+#: src/mn-imap-mailbox.gob:418
 msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
 msgstr "сервер је дојавио LOGINDISABLED, LOGIN пријавa неће бити коришћена"
 
-#: src/mn-imap-mailbox.gob:391
+#: src/mn-imap-mailbox.gob:419
 msgid "unable to login"
 msgstr "пријава није могућа"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:538
+#: src/mn-imap-mailbox.gob:571
 msgid "server did not send search results"
 msgstr "сервер није послао резултате претраге"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:618
+#: src/mn-imap-mailbox.gob:651
 msgid "server did not send all the messages we requested"
 msgstr "сервер није послао све тражене поруке"
 
-#: src/mn-imap-mailbox.gob:667
+#: src/mn-imap-mailbox.gob:700
 msgid "unable to fetch message"
 msgstr "није могуће добавити поруку"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:785
+#: src/mn-imap-mailbox.gob:818
 msgid "server did not send status"
 msgstr "сервер није послао статус"
 
-#: src/mn-imap-mailbox.gob:1057 src/mn-pop3-mailbox.gob:922
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
 msgid "unknown server error"
 msgstr "непозната грешка на серверу"
 
-#: src/mn-imap-mailbox.gob:1147 src/mn-pop3-mailbox.gob:226
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
 msgid "server does not support in-band SSL/TLS"
 msgstr "сервер не подржава заштиту путем SSL/TLS"
 
-#: src/mn-imap-mailbox.gob:1168 src/mn-pop3-mailbox.gob:841
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
 msgid ""
 "a SASL authentication mechanism was selected but SASL support has not been "
 "compiled in"
@@ -820,16 +824,16 @@ msgstr ""
 "изабран је механизам за пријаву који користи SASL али подршка за SASL није "
 "уграђена у програм"
 
-#: src/mn-imap-mailbox.gob:1176 src/mn-pop3-mailbox.gob:853
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
 #, c-format
 msgid "unknown authentication mechanism \"%s\""
 msgstr "непознат механизам за пријаву \"%s\""
 
-#: src/mn-imap-mailbox.gob:1194
+#: src/mn-imap-mailbox.gob:1246
 msgid "falling back to IMAP LOGIN authentication"
 msgstr "повратак на  IMAP LOGIN пријаву"
 
-#: src/mn-imap-mailbox.gob:1199 src/mn-pop3-mailbox.gob:888
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
 msgid "authentication failed"
 msgstr "пријава није успела"
 
@@ -1283,15 +1287,15 @@ msgstr ""
 msgid "The port number of the POP3 server"
 msgstr "Број порта на POP3 серверу"
 
-#: src/mn-pop3-mailbox.gob:272
+#: src/mn-pop3-mailbox.gob:273
 msgid "invalid arguments for the LOGIN-DELAY capability"
 msgstr "параметри за могућност LOGIN-DELAY нису исправно постављени"
 
-#: src/mn-pop3-mailbox.gob:556
+#: src/mn-pop3-mailbox.gob:590
 msgid "unknown error"
 msgstr "непозната грешка"
 
-#: src/mn-pop3-mailbox.gob:690
+#: src/mn-pop3-mailbox.gob:729
 #, c-format
 msgid "honouring LOGIN-DELAY, sleeping for %i second"
 msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
@@ -1299,15 +1303,15 @@ msgstr[0] "тражен је застој при пријави, паузира
 msgstr[1] "тражен је застој при пријави, паузирам %i секундe"
 msgstr[2] "тражен је застој при пријави, паузирам %i секунди"
 
-#: src/mn-pop3-mailbox.gob:849
+#: src/mn-pop3-mailbox.gob:893
 msgid "server does not support APOP authentication"
 msgstr "сервер не подржава пријаву коришћењем механизма APOP"
 
-#: src/mn-pop3-mailbox.gob:877
+#: src/mn-pop3-mailbox.gob:922
 msgid "falling back to APOP authentication"
 msgstr "прелазим на  APOP пријаву"
 
-#: src/mn-pop3-mailbox.gob:882
+#: src/mn-pop3-mailbox.gob:927
 msgid "falling back to USER/PASS authentication"
 msgstr "прелазим на пријаву помоћу имена и лозинке"
 
@@ -1362,7 +1366,7 @@ msgstr "Сажетак порука"
 #: src/mn-soup.c:140
 #, c-format
 msgid "unable to parse proxy URI \"%s\""
-msgstr "није могуће обрадити заступнички URI „%s‟"
+msgstr "није могуће обрадити заступнички URI ?%s?"
 
 #: src/mn-ssl.c:79
 msgid "unknown SSL/TLS error"
@@ -1376,17 +1380,17 @@ msgstr "Изабери _све"
 msgid "_Mail Summary"
 msgstr "_Сажетак порука"
 
-#: src/mn-sylpheed-mailbox.gob:122
+#: src/mn-sylpheed-mailbox.gob:119
 #, c-format
 msgid "unable to open folder: %s"
 msgstr "није могуће отворити директоријум: %s"
 
-#: src/mn-sylpheed-mailbox.gob:180
+#: src/mn-sylpheed-mailbox.gob:165
 #, c-format
 msgid "unable to close folder: %s"
 msgstr "није могуће затворити директоријум: %s"
 
-#: src/mn-sylpheed-mailbox.gob:183
+#: src/mn-sylpheed-mailbox.gob:168
 #, c-format
 msgid "error while reading folder: %s"
 msgstr "грешка при читању директоријума: %s"
@@ -1424,7 +1428,7 @@ msgstr "грешка при учитавању слике: %s"
 #: src/mn-util.c:271
 #, c-format
 msgid "widget \"%s\" not found in interface \"%s\""
-msgstr "елемент „%s‟ није пронађен у сучељу „%s‟"
+msgstr "елемент ?%s? није пронађен у сучељу ?%s?"
 
 #: src/mn-util.c:385
 msgid "received an invalid URI list"
@@ -1459,7 +1463,7 @@ msgstr "није могуће добавити тренутно време: %s"
 #: src/mn-util.c:906
 #, c-format
 msgid "invalid signal specification \"%s\""
-msgstr "неважећа одредница за сигнал „%s‟"
+msgstr "неважећа одредница за сигнал ?%s?"
 
 #: src/mn-util.c:945
 msgid "A command error has occurred in Mail Notification"
@@ -1495,9 +1499,8 @@ msgid "<span weight=\"bold\">Double-click Action</span>"
 msgstr "<span weight=\"bold\">Наредба за дупли клик</span>"
 
 #: ui/properties.glade.h:4
-#, fuzzy
 msgid "<span weight=\"bold\">Fonts</span>"
-msgstr "<span weight=\"bold\">Наредбе</span>"
+msgstr "<span weight=\"bold\">Писма</span>"
 
 #: ui/properties.glade.h:5
 msgid "<span weight=\"bold\">General</span>"
@@ -1512,9 +1515,8 @@ msgid "<span weight=\"bold\">Position</span>"
 msgstr "<span weight=\"bold\">Место</span>"
 
 #: ui/properties.glade.h:8
-#, fuzzy
 msgid "Dis_play mail summary in tooltip"
-msgstr "Прикажи прозор са сажетком порука"
+msgstr "Прикажи прозор са сажетком порука у облачићу"
 
 #: ui/properties.glade.h:9
 msgid "General"
@@ -1598,10 +1600,8 @@ msgstr ""
 "Да ли треба или не треба аутоматски затворити прозор са сажетком порука"
 
 #: ui/properties.glade.h:27
-#, fuzzy
 msgid "Whether to display the mail summary in the status icon tooltip or not"
-msgstr ""
-"Да ли треба или не треба приказивати сажетак порука када стигне нова пошта"
+msgstr "Да ли треба или не треба приказивати сажетак порука у облачићу"
 
 #: ui/properties.glade.h:28
 msgid "Whether to display the mail summary popup when new mail arrives or not"
@@ -1631,19 +1631,19 @@ msgid ""
 msgstr "Да ли покренути дојаву поште када се пријавите на систем"
 
 #: ui/properties.glade.h:34
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the contents of the mail summary popup or "
 "not"
 msgstr ""
-"Да ли треба или не треба аутоматски затворити прозор са сажетком порука"
+"Да ли треба или не треба користити посебно писмо за садржај прозора са "
+"сажетком порука"
 
 #: ui/properties.glade.h:35
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the title of the mail summary popup or not"
 msgstr ""
-"Да ли треба или не треба аутоматски затворити прозор са сажетком порука"
+"Да ли треба или не треба користити посебно писмо за наслов прозора са "
+"сажетком порука"
 
 #: ui/properties.glade.h:36
 msgid "_Automatically close after:"
@@ -1655,7 +1655,7 @@ msgstr "_Трепери при грешкама"
 
 #: ui/properties.glade.h:38
 msgid "_Contents font:"
-msgstr ""
+msgstr "_Писмо за садржај:"
 
 #: ui/properties.glade.h:39
 msgid "_Delay between mail checks:"
@@ -1683,7 +1683,7 @@ msgstr "Покрени _дојаву при пријави"
 
 #: ui/properties.glade.h:45
 msgid "_Title font:"
-msgstr ""
+msgstr "Писмо за _наслов:"
 
 #: ui/properties.glade.h:46
 msgid "_Vertical offset:"
@@ -1806,4 +1806,4 @@ msgstr "П_рескочи подешавања"
 #~ msgstr "При _двоструком клику:"
 
 #~ msgid "Whether to run a command when the icon is double-clicked or not"
-#~ msgstr "Да ли се покреће команда при двоструком клику или не"
+#~ msgstr "Да ли се покреће команд� при двоструком клику или не"
diff --git a/po/sr@Latn.gmo b/po/sr@Latn.gmo
Binary files differ.
diff --git a/po/sr@Latn.po b/po/sr@Latn.po
@@ -6,12 +6,15 @@
 #
 # Filip Miletic <filmil@gmail.com>, 2004.
 #
+# Both Serbian Cyrillic and Serbian Latin files should
+# be available.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: mail-notification 0.8.0\n"
+"Project-Id-Version: mail-notification 1.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-11-15 16:03+0100\n"
-"PO-Revision-Date: 2004-11-01 23:00+0100\n"
+"POT-Creation-Date: 2004-11-25 01:43+0100\n"
+"PO-Revision-Date: 2004-11-21 19:32:+0100\n"
 "Last-Translator: Filip Miletić <filmil@gmail.com>\n"
 "Language-Team: Serbian (sr) <gnu@prevod.org>\n"
 "MIME-Version: 1.0\n"
@@ -60,9 +63,8 @@ msgid "Delay between mail checks (seconds part)."
 msgstr "Razmak između dve provere (sekunde)."
 
 #: data/mail-notification.schemas.in.h:5
-#, fuzzy
 msgid "Display mail summary in tooltip"
-msgstr "Prikaži prozor sa sažetkom poruka"
+msgstr "Prikaži sažetat poruka u oblačiću"
 
 #: data/mail-notification.schemas.in.h:6
 msgid "Do not show the immediate notification error dialog"
@@ -101,9 +103,8 @@ msgid "Mail reader command"
 msgstr "Komanda za čitanje pošte"
 
 #: data/mail-notification.schemas.in.h:15
-#, fuzzy
 msgid "Mail summary popup contents font"
-msgstr "Broj horizontalnih tačaka za prozor sa sažetkom poruka"
+msgstr "Pismo koje se koristi za sadržaj prozora sa sažetkom poruka"
 
 #: data/mail-notification.schemas.in.h:16
 msgid "Mail summary popup horizontal offset"
@@ -114,9 +115,8 @@ msgid "Mail summary popup position"
 msgstr "Broj horizontalnih tačaka za prozor sa sažetkom poruka"
 
 #: data/mail-notification.schemas.in.h:18
-#, fuzzy
 msgid "Mail summary popup title font"
-msgstr "Broj horizontalnih tačaka za prozor sa sažetkom poruka"
+msgstr "Pismo koje se koristi za naslov prozora sa sažetkom poruka"
 
 #: data/mail-notification.schemas.in.h:19
 msgid "Mail summary popup vertical offset"
@@ -169,7 +169,7 @@ msgid ""
 "mail-summary\" or \"launch-mail-reader\"."
 msgstr ""
 "Postavljanje naredbe koja se izvršava pri dvostrukom kliku na sličicu. "
-"Mogući izbori su: „prikaži-sažetak-pošte‟ ili „pokreni-čitač-pošte‟."
+"Mogući izbori su: ?prikaži-sažetak-pošte? ili ?pokreni-čitač-pošte?."
 
 #: data/mail-notification.schemas.in.h:31
 msgid ""
@@ -196,14 +196,14 @@ msgid "The command to run when new mail arrives."
 msgstr "Pokreni ovu komandu kada stigne nova pošta."
 
 #: data/mail-notification.schemas.in.h:36
-#, fuzzy
 msgid "The custom font to use for the contents of the mail summary popup."
-msgstr "Pauza pre zatvaranja prozora sa sažetkom poruka"
+msgstr ""
+"Posebno pismo koje se koristi za ispis sadržaja prozora sa sažetkom poruka."
 
 #: data/mail-notification.schemas.in.h:37
-#, fuzzy
 msgid "The custom font to use for the title of the mail summary popup."
-msgstr "Pauza pre zatvaranja prozora sa sažetkom poruka"
+msgstr ""
+"Posebno pismo koje se koristi za ispis naslova prozora sa sažetkom poruka."
 
 #: data/mail-notification.schemas.in.h:38
 msgid "The height of the mail summary dialog in pixels."
@@ -250,8 +250,8 @@ msgid ""
 "The position of the mail summary popup. Must be \"top-left\", \"top-right\", "
 "\"bottom-left\" or \"bottom-right\"."
 msgstr ""
-"Položaj prozora sa sažetkom poruka. Može biti: „gore-levo‟, „gore-desno‟, "
-"„dole-levo‟ ili „dole-desno‟."
+"Položaj prozora sa sažetkom poruka. Može biti: ?gore-levo?, ?gore-desno?, ?"
+"dole-levo? ili ?dole-desno?."
 
 #: data/mail-notification.schemas.in.h:46
 msgid "The width of the mail summary dialog in pixels."
@@ -266,14 +266,12 @@ msgid "Trusted servers list"
 msgstr "Spisak proverenih servera"
 
 #: data/mail-notification.schemas.in.h:49
-#, fuzzy
 msgid "Use a custom font for the contents of the mail summary popup"
-msgstr "Broj sekundi koji treba da protekne pre zatvaranja sažetka poruka"
+msgstr "Koristi posebno pismo za sadržaj prozora sa sažetkom poruka"
 
 #: data/mail-notification.schemas.in.h:50
-#, fuzzy
 msgid "Use a custom font for the title of the mail summary popup"
-msgstr "Pauza pre zatvaranja prozora sa sažetkom poruka"
+msgstr "Koristi posebno pismo za naslov prozora sa sažetkom poruka"
 
 #: data/mail-notification.schemas.in.h:51
 msgid "Whether Mail Notification has already been run or not."
@@ -289,9 +287,9 @@ msgstr ""
 "Da li treba ili ne treba automatski zatvoriti prozor sa sažetkom pošte."
 
 #: data/mail-notification.schemas.in.h:54
-#, fuzzy
 msgid "Whether to display the mail summary in the status icon tooltip or not."
-msgstr "Da li treba prikazati sažetak poruka kada stigne nova pošta."
+msgstr ""
+"Da li treba prikazati sažetak poruka u oblačiću statusne sličice ili ne."
 
 #: data/mail-notification.schemas.in.h:55
 msgid "Whether to display the mail summary popup when new mail arrives or not."
@@ -323,19 +321,19 @@ msgid "Whether to set a mail reader or not."
 msgstr "Da li treba postaviti čitač pošte ili ne."
 
 #: data/mail-notification.schemas.in.h:61
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the contents of the mail summary popup or "
 "not."
 msgstr ""
-"Da li treba ili ne treba automatski zatvoriti prozor sa sažetkom pošte."
+"Da li treba ili ne treba koristiti posebno pismo za sadržaj prozora sa "
+"sažetkom pošte."
 
 #: data/mail-notification.schemas.in.h:62
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the title of the mail summary popup or not."
 msgstr ""
-"Da li treba ili ne treba automatski zatvoriti prozor sa sažetkom pošte."
+"Da li treba ili ne treba korisititi posebno pismo za naslov prozora sa "
+"sažetkom pošte."
 
 #: data/mail-notification.schemas.in.h:63
 msgid "Width of mail summary dialog"
@@ -371,14 +369,7 @@ msgstr "Filip Miletić <filmil@gmail.com>"
 msgid "<span style=\"italic\">autodetect</span>"
 msgstr "<span style=\"italic\">sam pronađi</span>"
 
-#. translator: example output: Enter your password for POP3 mailbox jylefort@localhost.
-#: src/mn-authenticated-mailbox.gob:77
-#, c-format
-msgid "Enter your password for %s mailbox %s."
-msgstr "Unesite lozinku za %s sanduče %s."
-
-#. translator: example output: ... into POP3 mailbox jylefort@localhost ...
-#: src/mn-authenticated-mailbox.gob:98
+#: src/mn-authenticated-mailbox.gob:80
 #, c-format
 msgid ""
 "Mail Notification was unable to log into %s mailbox %s, possibly because the "
@@ -391,7 +382,12 @@ msgstr ""
 "\n"
 "Molim unesite ponovo lozinku."
 
-#: src/mn-authenticated-mailbox.gob:164
+#: src/mn-authenticated-mailbox.gob:81
+#, c-format
+msgid "Enter your password for %s mailbox %s."
+msgstr "Unesite lozinku za %s sanduče %s."
+
+#: src/mn-authenticated-mailbox.gob:132
 #, c-format
 msgid ""
 "<span weight=\"bold\" size=\"larger\">Mail Notification requires a password</"
@@ -424,85 +420,85 @@ msgstr "Izaberite datoteku ili direktorijum"
 msgid "Whether the image is blinking or not"
 msgstr "Da li slika treperi ili ne"
 
-#: src/mn-client-session.c:229
+#: src/mn-client-session.c:220
 #, c-format
 msgid "resolving %s"
 msgstr "pronalazim %s"
 
-#: src/mn-client-session.c:239
+#: src/mn-client-session.c:230
 #, c-format
 msgid "unable to resolve %s: %s"
 msgstr "Nije moguće pronaći %s: %s"
 
-#: src/mn-client-session.c:276
+#: src/mn-client-session.c:267
 #, c-format
 msgid "%s: unsupported address family"
 msgstr "%s: ova vrsta adrese nije podržana"
 
-#: src/mn-client-session.c:283
+#: src/mn-client-session.c:274
 #, c-format
 msgid "%s: unable to create socket: %s"
 msgstr "%s: nije moguće napraviti utičnicu: %s"
 
-#: src/mn-client-session.c:287
+#: src/mn-client-session.c:278
 #, c-format
 msgid "connecting to %s (%s) port %i"
 msgstr "povezujem se sa %s (%s) port %i"
 
-#: src/mn-client-session.c:290
+#: src/mn-client-session.c:281
 #, c-format
 msgid "unable to connect: %s"
 msgstr "nije moguće povezati se sa: %s"
 
-#: src/mn-client-session.c:295
+#: src/mn-client-session.c:286
 msgid "connected successfully"
 msgstr "povezivanje je uspelo"
 
 #. if reached, we couldn't find a working address
-#: src/mn-client-session.c:301
+#: src/mn-client-session.c:292
 #, c-format
 msgid "unable to connect to %s"
 msgstr "nije moguće povezati se sa %s"
 
-#: src/mn-client-session.c:317
+#: src/mn-client-session.c:308
 #, c-format
 msgid "unable to initialize the OpenSSL library: %s"
 msgstr "nije moguće pokrenuti OpenSSL biblioteku: %s"
 
-#: src/mn-client-session.c:325
+#: src/mn-client-session.c:316
 #, c-format
 msgid "unable to create a SSL/TLS object: %s"
 msgstr "nije moguće napraviti SSL/TLS objekat: %s"
 
-#: src/mn-client-session.c:331
+#: src/mn-client-session.c:322
 #, c-format
 msgid "unable to set the SSL/TLS file descriptor: %s"
 msgstr "nije moguće postaviti SSL/TLS opis za datoteku: %s"
 
-#: src/mn-client-session.c:337
+#: src/mn-client-session.c:328
 #, c-format
 msgid "unable to perform the SSL/TLS handshake: %s"
 msgstr "nije moguće obaviti SSL/TLS kontakt: %s"
 
-#: src/mn-client-session.c:343
+#: src/mn-client-session.c:334
 msgid "untrusted server"
 msgstr "neproveren server"
 
-#: src/mn-client-session.c:347
+#: src/mn-client-session.c:338
 #, c-format
 msgid "a SSL/TLS layer is now active (%s, %s %i-bit)"
 msgstr "SSL/TLS sloj je pokrenut (%s, %s %i-bit)"
 
-#: src/mn-client-session.c:394
+#: src/mn-client-session.c:385
 #, c-format
 msgid "%s, fingerprint: %s"
 msgstr "%s, otisak: %s"
 
-#: src/mn-client-session.c:423
+#: src/mn-client-session.c:414
 msgid "missing certificate"
 msgstr "nedostaje sertifikat"
 
-#: src/mn-client-session.c:449
+#: src/mn-client-session.c:440
 #, c-format
 msgid ""
 "Mail Notification was unable to trust \"%s\" (%s). It is possible that "
@@ -521,133 +517,133 @@ msgstr ""
 "sa \"%s\". Ako odlučite da se povežete na server, ova poruka neće ponovo "
 "biti prikazana."
 
-#: src/mn-client-session.c:466
+#: src/mn-client-session.c:457
 msgid "Connect to untrusted server?"
 msgstr "Da li da se povežem na neprovereni server?"
 
-#: src/mn-client-session.c:471
+#: src/mn-client-session.c:462
 msgid "Co_nnect"
 msgstr "_Poveži se"
 
-#: src/mn-client-session.c:527
+#: src/mn-client-session.c:518
 #, c-format
 msgid "response \"%s\" is not valid in current context"
 msgstr "odgovor \"%s\" nije ispravan u trenutno važećem kontekstu"
 
-#: src/mn-client-session.c:553
+#: src/mn-client-session.c:544
 #, c-format
 msgid "unable to parse response \"%s\""
 msgstr "nije moguće obraditi odgovor \"%s\""
 
-#: src/mn-client-session.c:601 src/mn-client-session.c:608
+#: src/mn-client-session.c:592 src/mn-client-session.c:599
 #, c-format
 msgid "unable to read from server: %s"
 msgstr "Nije moguće čitanje sa servera: %s"
 
-#: src/mn-client-session.c:606
+#: src/mn-client-session.c:597
 msgid "unable to read from server: EOF"
 msgstr "Nije moguće čitanje sa servera: EOF"
 
-#: src/mn-client-session.c:618
+#: src/mn-client-session.c:609
 #, c-format
 msgid "unable to decode data using SASL: %s"
 msgstr "Ne mogu se dekodovati podaci putem SASL: %s"
 
-#: src/mn-client-session.c:755
+#: src/mn-client-session.c:746
 #, c-format
 msgid "unable to encode data using SASL: %s"
 msgstr "nije moguće kodirati podatke uz pomoć SASL: %s"
 
-#: src/mn-client-session.c:786 src/mn-client-session.c:793
+#: src/mn-client-session.c:777 src/mn-client-session.c:784
 #, c-format
 msgid "unable to write to server: %s"
 msgstr "nije moguć upis na server: %s"
 
-#: src/mn-client-session.c:791
+#: src/mn-client-session.c:782
 msgid "unable to write to server: EOF"
 msgstr "nije moguć upis na server: EOF"
 
-#: src/mn-client-session.c:823
+#: src/mn-client-session.c:814
 #, c-format
 msgid "unable to encode Base64: %s"
 msgstr "nije moguće kodirati Base64: %s"
 
-#: src/mn-client-session.c:927
+#: src/mn-client-session.c:925
 #, c-format
 msgid "unable to initialize the SASL library: %s"
 msgstr "ne može se pokrenuti SASL biblioteka: %s"
 
-#: src/mn-client-session.c:936
+#: src/mn-client-session.c:934
 #, c-format
 msgid "unable to retrieve local address of socket: %s"
 msgstr "ne može da se dobavi lokalna adresa utičnice: %s"
 
-#: src/mn-client-session.c:942
+#: src/mn-client-session.c:940
 #, c-format
 msgid "unable to retrieve remote address of socket: %s"
 msgstr "ne može da se dobavi udaljena adresa utičnice: %s"
 
-#: src/mn-client-session.c:976
+#: src/mn-client-session.c:974
 #, c-format
 msgid "warning: unable to set SASL security properties: %s"
 msgstr "upozorenje: nije moguće postaviti SASL sigurnosne postavke %s"
 
-#: src/mn-client-session.c:1015
+#: src/mn-client-session.c:998
 msgid ""
 "unable to start SASL authentication: SASL asked for something we did not know"
 msgstr "ne može se pokrenuti SASL prijava: SASL traži podatke koje nemamo"
 
-#: src/mn-client-session.c:1019
+#: src/mn-client-session.c:1017
 #, c-format
 msgid "unable to start SASL authentication: %s"
 msgstr "ne može se pokrenuti SASL prijava: %s"
 
-#: src/mn-client-session.c:1023
+#: src/mn-client-session.c:1021
 #, c-format
 msgid "unable to create a SASL connection: %s"
 msgstr "nije moguće uspostaviti SASL vezu: %s"
 
-#: src/mn-client-session.c:1073
+#: src/mn-client-session.c:1058
 msgid "SASL asked for something we did not know, aborting SASL authentication"
 msgstr "SASL je tražio nama nepoznate podatke, obustavljam SASL prijavu"
 
-#: src/mn-client-session.c:1077
+#: src/mn-client-session.c:1075
 #, c-format
 msgid "%s, aborting SASL authentication"
 msgstr "%s, obustavljam SASL prijavu"
 
 #. compliance error
-#: src/mn-client-session.c:1082
+#: src/mn-client-session.c:1080
 #, c-format
 msgid "unable to decode Base64 input from server: %s"
 msgstr "nije moguće dekodovati Base64 ulaz sa servera: %s"
 
-#: src/mn-client-session.c:1085
+#: src/mn-client-session.c:1083
 msgid ""
 "the server sent a SASL challenge, but there was a pending initial SASL "
 "client response"
 msgstr ""
 "server je započeo SASL razgovor, ali odgovor od klijenta stigao pre toga"
 
-#: src/mn-client-session.c:1099
+#: src/mn-client-session.c:1097
 msgid ""
 "the server did not send a SASL challenge, but there was no pending initial "
 "SASL client response"
 msgstr ""
 "server nije poslao SASL razgovor, ali nije bilo ni odgovora od klijenta."
 
-#: src/mn-client-session.c:1124
+#: src/mn-client-session.c:1122
 #, c-format
 msgid "a SASL security layer of strength factor %i is now active"
 msgstr "SASL sigurnosni sloj nivoa snage %i je uspostavljen"
 
 #. a security layer is active but we can't retrieve maxoutbuf -> fatal
-#: src/mn-client-session.c:1129
+#: src/mn-client-session.c:1127
 #, c-format
 msgid "unable to get SASL_MAXOUTBUF property: %s"
 msgstr "ne mogu da pročitam postavku SASL_MAXOUTBUF: %s"
 
-#: src/mn-client-session.c:1135
+#: src/mn-client-session.c:1133
 #, c-format
 msgid "warning: unable to get SASL_SSF property: %s"
 msgstr "upozorenje: ne mogu da pročitam postavku SASL_SSF: %s"
@@ -677,33 +673,33 @@ msgstr ""
 "Vaša lozinka na servisu Gmail (ako ne upišete lozinku, program će Vas "
 "zamoliti da je unesete kada to bude potrebno)"
 
-#: src/mn-gmail-mailbox.gob:81
+#: src/mn-gmail-mailbox.gob:82
 msgid "libsoup has not been compiled with SSL/TLS support"
 msgstr "libsoup nije izgrađen sa podrškom za SSL/TLS"
 
-#: src/mn-gmail-mailbox.gob:123
+#: src/mn-gmail-mailbox.gob:160
 #, c-format
 msgid "unable to parse URI \"%s\""
 msgstr "nije moguće obraditi URI \"%s\""
 
-#: src/mn-gmail-mailbox.gob:177
+#: src/mn-gmail-mailbox.gob:214
 #, c-format
 msgid "unable to transfer data: %s"
 msgstr "ne mogu da preuzmem podatke: %s"
 
-#: src/mn-gmail-mailbox.gob:298
+#: src/mn-gmail-mailbox.gob:335
 msgid "logging in"
 msgstr "prijava u toku"
 
-#: src/mn-gmail-mailbox.gob:376
+#: src/mn-gmail-mailbox.gob:413
 msgid "login failed"
 msgstr "prijava nije uspela"
 
-#: src/mn-gmail-mailbox.gob:451
+#: src/mn-gmail-mailbox.gob:488
 msgid "searching for unread mail"
 msgstr "tražim novu poštu"
 
-#: src/mn-gmail-mailbox.gob:490
+#: src/mn-gmail-mailbox.gob:527
 msgid "unable to parse Gmail data"
 msgstr "ne mogu da obradim podatke sa servisa Gmail"
 
@@ -732,27 +728,31 @@ msgstr "nije moguće saznati položaj za %s: %s"
 msgid "unable to close %s: %s"
 msgstr "nije moguće zatvoriti %s: %s"
 
-#: src/mn-imap-mailbox-properties.gob:93
+#: src/mn-imap-mailbox-properties.gob:94
 msgid "Mailbox:"
 msgstr "Sanduče:"
 
-#: src/mn-imap-mailbox-properties.gob:97
+#: src/mn-imap-mailbox-properties.gob:98
 msgid "in_box"
 msgstr "in_box"
 
-#: src/mn-imap-mailbox-properties.gob:108
+#: src/mn-imap-mailbox-properties.gob:109
 msgid "oth_er:"
 msgstr "_drugo:"
 
-#: src/mn-imap-mailbox-properties.gob:123
+#: src/mn-imap-mailbox-properties.gob:121
+msgid "U_se idle mode if possible"
+msgstr "K_oristi vreme dokolice, ako je moguće"
+
+#: src/mn-imap-mailbox-properties.gob:129
 msgid "The hostname or IP address of the IMAP server"
 msgstr "Ime ili IP broj IMAP servera"
 
-#: src/mn-imap-mailbox-properties.gob:124
+#: src/mn-imap-mailbox-properties.gob:130
 msgid "Your username on the IMAP server"
 msgstr "Vaše ime na IMAP serveru"
 
-#: src/mn-imap-mailbox-properties.gob:125
+#: src/mn-imap-mailbox-properties.gob:131
 msgid ""
 "Your password on the IMAP server (if left blank, you will be prompted for "
 "the password when needed)"
@@ -760,59 +760,63 @@ msgstr ""
 "Vaša lozinka na IMAP serveru (ako ne upišete lozinku, program će Vas "
 "zamoliti da je unesete kada to bude potrebno)"
 
-#: src/mn-imap-mailbox-properties.gob:126
-#: src/mn-imap-mailbox-properties.gob:127
+#: src/mn-imap-mailbox-properties.gob:132
+#: src/mn-imap-mailbox-properties.gob:133
 msgid "The port number of the IMAP server"
 msgstr "Broj porta na IMAP serveru"
 
-#: src/mn-imap-mailbox-properties.gob:128
+#: src/mn-imap-mailbox-properties.gob:134
 msgid "The mailbox name"
 msgstr "Ime sandučeta"
 
-#: src/mn-imap-mailbox.gob:165 src/mn-pop3-mailbox.gob:142
+#: src/mn-imap-mailbox-properties.gob:135
+msgid "If possible, whether to use idle mode or not"
+msgstr "Da li treba koristiti vreme dokolice ili ne"
+
+#: src/mn-imap-mailbox.gob:166 src/mn-pop3-mailbox.gob:143
 msgid "SSL/TLS support has not been compiled in"
 msgstr "Podrška za SSL/TLS nije ugrađena"
 
-#: src/mn-imap-mailbox.gob:244
+#: src/mn-imap-mailbox.gob:246
 msgid "server did not send capabilities"
 msgstr "server nije obavestio o svojim mogućnostima"
 
-#: src/mn-imap-mailbox.gob:390
+#: src/mn-imap-mailbox.gob:418
 msgid "server advertised LOGINDISABLED, not using LOGIN authentication"
 msgstr "server je dojavio LOGINDISABLED, LOGIN prijava neće biti korišćena"
 
-#: src/mn-imap-mailbox.gob:391
+#: src/mn-imap-mailbox.gob:419
 msgid "unable to login"
 msgstr "prijava nije moguća"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:538
+#: src/mn-imap-mailbox.gob:571
 msgid "server did not send search results"
 msgstr "server nije poslao rezultate pretrage"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:618
+#: src/mn-imap-mailbox.gob:651
 msgid "server did not send all the messages we requested"
 msgstr "server nije poslao sve tražene poruke"
 
-#: src/mn-imap-mailbox.gob:667
+#: src/mn-imap-mailbox.gob:700
 msgid "unable to fetch message"
 msgstr "nije moguće dobaviti poruku"
 
 #. compliance error
-#: src/mn-imap-mailbox.gob:785
+#: src/mn-imap-mailbox.gob:818
 msgid "server did not send status"
 msgstr "server nije poslao status"
 
-#: src/mn-imap-mailbox.gob:1057 src/mn-pop3-mailbox.gob:922
+#: src/mn-imap-mailbox.gob:1096 src/mn-pop3-mailbox.gob:972
 msgid "unknown server error"
 msgstr "nepoznata greška na serveru"
 
-#: src/mn-imap-mailbox.gob:1147 src/mn-pop3-mailbox.gob:226
+#: src/mn-imap-mailbox.gob:1198 src/mn-pop3-mailbox.gob:227
 msgid "server does not support in-band SSL/TLS"
 msgstr "server ne podržava zaštitu putem SSL/TLS"
 
-#: src/mn-imap-mailbox.gob:1168 src/mn-pop3-mailbox.gob:841
+#: src/mn-imap-mailbox.gob:1217 src/mn-pop3-mailbox.gob:885
 msgid ""
 "a SASL authentication mechanism was selected but SASL support has not been "
 "compiled in"
@@ -820,16 +824,16 @@ msgstr ""
 "izabran je mehanizam za prijavu koji koristi SASL ali podrška za SASL nije "
 "ugrađena u program"
 
-#: src/mn-imap-mailbox.gob:1176 src/mn-pop3-mailbox.gob:853
+#: src/mn-imap-mailbox.gob:1225 src/mn-pop3-mailbox.gob:897
 #, c-format
 msgid "unknown authentication mechanism \"%s\""
 msgstr "nepoznat mehanizam za prijavu \"%s\""
 
-#: src/mn-imap-mailbox.gob:1194
+#: src/mn-imap-mailbox.gob:1246
 msgid "falling back to IMAP LOGIN authentication"
 msgstr "povratak na  IMAP LOGIN prijavu"
 
-#: src/mn-imap-mailbox.gob:1199 src/mn-pop3-mailbox.gob:888
+#: src/mn-imap-mailbox.gob:1257 src/mn-pop3-mailbox.gob:938
 msgid "authentication failed"
 msgstr "prijava nije uspela"
 
@@ -1283,15 +1287,15 @@ msgstr ""
 msgid "The port number of the POP3 server"
 msgstr "Broj porta na POP3 serveru"
 
-#: src/mn-pop3-mailbox.gob:272
+#: src/mn-pop3-mailbox.gob:273
 msgid "invalid arguments for the LOGIN-DELAY capability"
 msgstr "parametri za mogućnost LOGIN-DELAY nisu ispravno postavljeni"
 
-#: src/mn-pop3-mailbox.gob:556
+#: src/mn-pop3-mailbox.gob:590
 msgid "unknown error"
 msgstr "nepoznata greška"
 
-#: src/mn-pop3-mailbox.gob:690
+#: src/mn-pop3-mailbox.gob:729
 #, c-format
 msgid "honouring LOGIN-DELAY, sleeping for %i second"
 msgid_plural "honouring LOGIN-DELAY, sleeping for %i seconds"
@@ -1299,15 +1303,15 @@ msgstr[0] "tražen je zastoj pri prijavi, pauziram %i sekundu"
 msgstr[1] "tražen je zastoj pri prijavi, pauziram %i sekunde"
 msgstr[2] "tražen je zastoj pri prijavi, pauziram %i sekundi"
 
-#: src/mn-pop3-mailbox.gob:849
+#: src/mn-pop3-mailbox.gob:893
 msgid "server does not support APOP authentication"
 msgstr "server ne podržava prijavu korišćenjem mehanizma APOP"
 
-#: src/mn-pop3-mailbox.gob:877
+#: src/mn-pop3-mailbox.gob:922
 msgid "falling back to APOP authentication"
 msgstr "prelazim na  APOP prijavu"
 
-#: src/mn-pop3-mailbox.gob:882
+#: src/mn-pop3-mailbox.gob:927
 msgid "falling back to USER/PASS authentication"
 msgstr "prelazim na prijavu pomoću imena i lozinke"
 
@@ -1362,7 +1366,7 @@ msgstr "Sažetak poruka"
 #: src/mn-soup.c:140
 #, c-format
 msgid "unable to parse proxy URI \"%s\""
-msgstr "nije moguće obraditi zastupnički URI „%s‟"
+msgstr "nije moguće obraditi zastupnički URI ?%s?"
 
 #: src/mn-ssl.c:79
 msgid "unknown SSL/TLS error"
@@ -1376,17 +1380,17 @@ msgstr "Izaberi _sve"
 msgid "_Mail Summary"
 msgstr "_Sažetak poruka"
 
-#: src/mn-sylpheed-mailbox.gob:122
+#: src/mn-sylpheed-mailbox.gob:119
 #, c-format
 msgid "unable to open folder: %s"
 msgstr "nije moguće otvoriti direktorijum: %s"
 
-#: src/mn-sylpheed-mailbox.gob:180
+#: src/mn-sylpheed-mailbox.gob:165
 #, c-format
 msgid "unable to close folder: %s"
 msgstr "nije moguće zatvoriti direktorijum: %s"
 
-#: src/mn-sylpheed-mailbox.gob:183
+#: src/mn-sylpheed-mailbox.gob:168
 #, c-format
 msgid "error while reading folder: %s"
 msgstr "greška pri čitanju direktorijuma: %s"
@@ -1424,7 +1428,7 @@ msgstr "greška pri učitavanju slike: %s"
 #: src/mn-util.c:271
 #, c-format
 msgid "widget \"%s\" not found in interface \"%s\""
-msgstr "element „%s‟ nije pronađen u sučelju „%s‟"
+msgstr "element ?%s? nije pronađen u sučelju ?%s?"
 
 #: src/mn-util.c:385
 msgid "received an invalid URI list"
@@ -1459,7 +1463,7 @@ msgstr "nije moguće dobaviti trenutno vreme: %s"
 #: src/mn-util.c:906
 #, c-format
 msgid "invalid signal specification \"%s\""
-msgstr "nevažeća odrednica za signal „%s‟"
+msgstr "nevažeća odrednica za signal ?%s?"
 
 #: src/mn-util.c:945
 msgid "A command error has occurred in Mail Notification"
@@ -1495,9 +1499,8 @@ msgid "<span weight=\"bold\">Double-click Action</span>"
 msgstr "<span weight=\"bold\">Naredba za dupli klik</span>"
 
 #: ui/properties.glade.h:4
-#, fuzzy
 msgid "<span weight=\"bold\">Fonts</span>"
-msgstr "<span weight=\"bold\">Naredbe</span>"
+msgstr "<span weight=\"bold\">Pisma</span>"
 
 #: ui/properties.glade.h:5
 msgid "<span weight=\"bold\">General</span>"
@@ -1512,9 +1515,8 @@ msgid "<span weight=\"bold\">Position</span>"
 msgstr "<span weight=\"bold\">Mesto</span>"
 
 #: ui/properties.glade.h:8
-#, fuzzy
 msgid "Dis_play mail summary in tooltip"
-msgstr "Prikaži prozor sa sažetkom poruka"
+msgstr "Prikaži prozor sa sažetkom poruka u oblačiću"
 
 #: ui/properties.glade.h:9
 msgid "General"
@@ -1598,10 +1600,8 @@ msgstr ""
 "Da li treba ili ne treba automatski zatvoriti prozor sa sažetkom poruka"
 
 #: ui/properties.glade.h:27
-#, fuzzy
 msgid "Whether to display the mail summary in the status icon tooltip or not"
-msgstr ""
-"Da li treba ili ne treba prikazivati sažetak poruka kada stigne nova pošta"
+msgstr "Da li treba ili ne treba prikazivati sažetak poruka u oblačiću"
 
 #: ui/properties.glade.h:28
 msgid "Whether to display the mail summary popup when new mail arrives or not"
@@ -1631,19 +1631,19 @@ msgid ""
 msgstr "Da li pokrenuti dojavu pošte kada se prijavite na sistem"
 
 #: ui/properties.glade.h:34
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the contents of the mail summary popup or "
 "not"
 msgstr ""
-"Da li treba ili ne treba automatski zatvoriti prozor sa sažetkom poruka"
+"Da li treba ili ne treba koristiti posebno pismo za sadržaj prozora sa "
+"sažetkom poruka"
 
 #: ui/properties.glade.h:35
-#, fuzzy
 msgid ""
 "Whether to use a custom font for the title of the mail summary popup or not"
 msgstr ""
-"Da li treba ili ne treba automatski zatvoriti prozor sa sažetkom poruka"
+"Da li treba ili ne treba koristiti posebno pismo za naslov prozora sa "
+"sažetkom poruka"
 
 #: ui/properties.glade.h:36
 msgid "_Automatically close after:"
@@ -1655,7 +1655,7 @@ msgstr "_Treperi pri greškama"
 
 #: ui/properties.glade.h:38
 msgid "_Contents font:"
-msgstr ""
+msgstr "_Pismo za sadržaj:"
 
 #: ui/properties.glade.h:39
 msgid "_Delay between mail checks:"
@@ -1683,7 +1683,7 @@ msgstr "Pokreni _dojavu pri prijavi"
 
 #: ui/properties.glade.h:45
 msgid "_Title font:"
-msgstr ""
+msgstr "Pismo za _naslov:"
 
 #: ui/properties.glade.h:46
 msgid "_Vertical offset:"
@@ -1806,4 +1806,4 @@ msgstr "P_reskoči podešavanja"
 #~ msgstr "Pri _dvostrukom kliku:"
 
 #~ msgid "Whether to run a command when the icon is double-clicked or not"
-#~ msgstr "Da li se pokreće komanda pri dvostrukom kliku ili ne"
+#~ msgstr "Da li se pokreće komand� pri dvostrukom kliku ili ne"
diff --git a/src/Makefile.am b/src/Makefile.am
@@ -218,44 +218,44 @@ gob_built_sources = \
 
 nodist_mail_notification_SOURCES = $(idl_built_sources)
 mail_notification_SOURCES = \
-	$(idl_sources)			\
-	$(gob_sources)			\
-	$(gob_built_sources)		\
-	$(gmail_sources)		\
-	$(gmail_built_sources)		\
-	$(md5_sources)			\
-	$(client_session_sources)	\
-	$(ssl_sources)			\
-	$(sasl_sources)			\
-	$(mime_sources)			\
-	eggtrayicon.c			\
-	eggtrayicon.h			\
-	mn-conf.c			\
-	mn-conf.h			\
-	mn-mailbox-properties-dialog.c	\
-	mn-mailbox-properties-dialog.h	\
-	mn-mailbox-properties-util.c	\
-	mn-mailbox-properties-util.h	\
-	mn-mailbox-properties.c		\
-	mn-mailbox-properties.h		\
-	mn-main.c			\
-	mn-properties.c			\
-	mn-properties.h			\
-	mn-stock.c			\
-	mn-stock.h			\
-	mn-summary-dialog.c		\
-	mn-summary-dialog.h		\
-	mn-summary-popup.c		\
-	mn-summary-popup.h		\
-	mn-summary.c			\
-	mn-summary.h			\
-	mn-util.c			\
-	mn-util.h			\
-	mn-vfs.c			\
+	$(idl_sources)				\
+	$(gob_sources)				\
+	$(gob_built_sources)			\
+	$(gmail_sources)			\
+	$(gmail_built_sources)			\
+	$(md5_sources)				\
+	$(client_session_sources)		\
+	$(ssl_sources)				\
+	$(sasl_sources)				\
+	$(mime_sources)				\
+	eggtrayicon.c				\
+	eggtrayicon.h				\
+	mn-conf.c				\
+	mn-conf.h				\
+	mn-mailbox-properties-dialog.c		\
+	mn-mailbox-properties-dialog.h		\
+	mn-mailbox-properties-util.c		\
+	mn-mailbox-properties-util.h		\
+	mn-mailbox-properties.c			\
+	mn-mailbox-properties.h			\
+	mn-main.c				\
+	mn-properties.c				\
+	mn-properties.h				\
+	mn-stock.c				\
+	mn-stock.h				\
+	mn-summary-dialog.c			\
+	mn-summary-dialog.h			\
+	mn-summary-popup.c			\
+	mn-summary-popup.h			\
+	mn-summary.c				\
+	mn-summary.h				\
+	mn-util.c				\
+	mn-util.h				\
+	mn-vfs.c				\
 	mn-vfs.h
 BUILT_SOURCES = \
-	$(idl_built_sources)		\
-	$(gob_built_sources)		\
+	$(idl_built_sources)			\
+	$(gob_built_sources)			\
 	$(gmail_built_sources)
 
 AM_CPPFLAGS = $(WARN_CFLAGS) $(GNOME_CFLAGS) $(GMIME_CFLAGS) $(SOUP_CFLAGS) $(OPENSSL_CFLAGS) $(SASL_CFLAGS) \
diff --git a/src/Makefile.in b/src/Makefile.in
@@ -547,45 +547,45 @@ gob_built_sources = \
 
 nodist_mail_notification_SOURCES = $(idl_built_sources)
 mail_notification_SOURCES = \
-	$(idl_sources)			\
-	$(gob_sources)			\
-	$(gob_built_sources)		\
-	$(gmail_sources)		\
-	$(gmail_built_sources)		\
-	$(md5_sources)			\
-	$(client_session_sources)	\
-	$(ssl_sources)			\
-	$(sasl_sources)			\
-	$(mime_sources)			\
-	eggtrayicon.c			\
-	eggtrayicon.h			\
-	mn-conf.c			\
-	mn-conf.h			\
-	mn-mailbox-properties-dialog.c	\
-	mn-mailbox-properties-dialog.h	\
-	mn-mailbox-properties-util.c	\
-	mn-mailbox-properties-util.h	\
-	mn-mailbox-properties.c		\
-	mn-mailbox-properties.h		\
-	mn-main.c			\
-	mn-properties.c			\
-	mn-properties.h			\
-	mn-stock.c			\
-	mn-stock.h			\
-	mn-summary-dialog.c		\
-	mn-summary-dialog.h		\
-	mn-summary-popup.c		\
-	mn-summary-popup.h		\
-	mn-summary.c			\
-	mn-summary.h			\
-	mn-util.c			\
-	mn-util.h			\
-	mn-vfs.c			\
+	$(idl_sources)				\
+	$(gob_sources)				\
+	$(gob_built_sources)			\
+	$(gmail_sources)			\
+	$(gmail_built_sources)			\
+	$(md5_sources)				\
+	$(client_session_sources)		\
+	$(ssl_sources)				\
+	$(sasl_sources)				\
+	$(mime_sources)				\
+	eggtrayicon.c				\
+	eggtrayicon.h				\
+	mn-conf.c				\
+	mn-conf.h				\
+	mn-mailbox-properties-dialog.c		\
+	mn-mailbox-properties-dialog.h		\
+	mn-mailbox-properties-util.c		\
+	mn-mailbox-properties-util.h		\
+	mn-mailbox-properties.c			\
+	mn-mailbox-properties.h			\
+	mn-main.c				\
+	mn-properties.c				\
+	mn-properties.h				\
+	mn-stock.c				\
+	mn-stock.h				\
+	mn-summary-dialog.c			\
+	mn-summary-dialog.h			\
+	mn-summary-popup.c			\
+	mn-summary-popup.h			\
+	mn-summary.c				\
+	mn-summary.h				\
+	mn-util.c				\
+	mn-util.h				\
+	mn-vfs.c				\
 	mn-vfs.h
 
 BUILT_SOURCES = \
-	$(idl_built_sources)		\
-	$(gob_built_sources)		\
+	$(idl_built_sources)			\
+	$(gob_built_sources)			\
 	$(gmail_built_sources)
 
 AM_CPPFLAGS = $(WARN_CFLAGS) $(GNOME_CFLAGS) $(GMIME_CFLAGS) $(SOUP_CFLAGS) $(OPENSSL_CFLAGS) $(SASL_CFLAGS) \
diff --git a/src/mn-about-dialog.c b/src/mn-about-dialog.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-auth-combo-box.c b/src/mn-auth-combo-box.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-authenticated-mailbox-private.h b/src/mn-authenticated-mailbox-private.h
@@ -10,10 +10,14 @@ extern "C" {
 #endif /* __cplusplus */
 
 struct _MNAuthenticatedMailboxPrivate {
-#line 46 "mn-authenticated-mailbox.gob"
-	GtkWidget * authentication_dialog;
-#line 16 "mn-authenticated-mailbox-private.h"
+#line 38 "mn-authenticated-mailbox.gob"
+	gboolean authentication_failed;
+#line 39 "mn-authenticated-mailbox.gob"
+	GtkWidget * dialog;
+#line 18 "mn-authenticated-mailbox-private.h"
 };
+void 	mn_authenticated_mailbox_authentication_failed	(MNAuthenticatedMailbox * self);
+void 	mn_authenticated_mailbox_fill_password	(MNAuthenticatedMailbox * self);
 
 #ifdef __cplusplus
 }
diff --git a/src/mn-authenticated-mailbox.c b/src/mn-authenticated-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
@@ -23,7 +23,7 @@
 #define ___GOB_UNLIKELY(expr) (expr)
 #endif /* G_LIKELY */
 
-#line 35 "mn-authenticated-mailbox.gob"
+#line 26 "mn-authenticated-mailbox.gob"
 
 #include "config.h"
 #include <glib/gi18n.h>
@@ -48,16 +48,16 @@ typedef MNAuthenticatedMailboxClass SelfClass;
 /* here are local prototypes */
 static void mn_authenticated_mailbox_init (MNAuthenticatedMailbox * o) G_GNUC_UNUSED;
 static void mn_authenticated_mailbox_class_init (MNAuthenticatedMailboxClass * c) G_GNUC_UNUSED;
-static MNAuthenticatedMailboxResult mn_authenticated_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * self, GError ** err) G_GNUC_UNUSED;
-static void ___2_mn_authenticated_mailbox_removed (MNMailbox * mailbox) G_GNUC_UNUSED;
-static void ___3_mn_authenticated_mailbox_impl_check (MNMailbox * mailbox) G_GNUC_UNUSED;
+static void ___1_mn_authenticated_mailbox_removed (MNMailbox * mailbox) G_GNUC_UNUSED;
+static void ___2_mn_authenticated_mailbox_impl_check (MNMailbox * mailbox) G_GNUC_UNUSED;
 static char * mn_authenticated_mailbox_password_prompt (MNAuthenticatedMailbox * self, const char * format, ...) G_GNUC_UNUSED;
 
 /* pointer to the class of our parent */
 static MNMailboxClass *parent_class = NULL;
 
 /* Short form macros */
-#define self_impl_authenticated_check mn_authenticated_mailbox_impl_authenticated_check
+#define self_authentication_failed mn_authenticated_mailbox_authentication_failed
+#define self_fill_password mn_authenticated_mailbox_fill_password
 #define self_password_prompt mn_authenticated_mailbox_password_prompt
 #define self_password_prompt_changed_h mn_authenticated_mailbox_password_prompt_changed_h
 GType
@@ -111,7 +111,7 @@ ___finalize(GObject *obj_self)
 	gpointer priv G_GNUC_UNUSED = self->_priv;
 	if(G_OBJECT_CLASS(parent_class)->finalize) \
 		(* G_OBJECT_CLASS(parent_class)->finalize)(obj_self);
-#line 45 "mn-authenticated-mailbox.gob"
+#line 36 "mn-authenticated-mailbox.gob"
 	if(self->password) { g_free ((gpointer) self->password); self->password = NULL; }
 #line 117 "mn-authenticated-mailbox.c"
 }
@@ -122,7 +122,7 @@ mn_authenticated_mailbox_init (MNAuthenticatedMailbox * o G_GNUC_UNUSED)
 {
 #define __GOB_FUNCTION__ "MN:Authenticated:Mailbox::init"
 	o->_priv = G_TYPE_INSTANCE_GET_PRIVATE(o,TYPE_SELF,MNAuthenticatedMailboxPrivate);
-#line 35 "mn-authenticated-mailbox.gob"
+#line 26 "mn-authenticated-mailbox.gob"
 	o->password = NULL;
 #line 128 "mn-authenticated-mailbox.c"
 }
@@ -138,161 +138,145 @@ mn_authenticated_mailbox_class_init (MNAuthenticatedMailboxClass * c G_GNUC_UNUS
 
 	parent_class = g_type_class_ref (MN_TYPE_MAILBOX);
 
-	c->impl_authenticated_check = NULL;
-#line 51 "mn-authenticated-mailbox.gob"
-	mn_mailbox_class->removed = ___2_mn_authenticated_mailbox_removed;
-#line 62 "mn-authenticated-mailbox.gob"
-	mn_mailbox_class->impl_check = ___3_mn_authenticated_mailbox_impl_check;
-#line 147 "mn-authenticated-mailbox.c"
+#line 41 "mn-authenticated-mailbox.gob"
+	mn_mailbox_class->removed = ___1_mn_authenticated_mailbox_removed;
+#line 52 "mn-authenticated-mailbox.gob"
+	mn_mailbox_class->impl_check = ___2_mn_authenticated_mailbox_impl_check;
+#line 146 "mn-authenticated-mailbox.c"
 	g_object_class->finalize = ___finalize;
 }
 #undef __GOB_FUNCTION__
 
 
 
-#line 48 "mn-authenticated-mailbox.gob"
-static MNAuthenticatedMailboxResult 
-mn_authenticated_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * self, GError ** err)
-#line 157 "mn-authenticated-mailbox.c"
-{
-	MNAuthenticatedMailboxClass *klass;
-#line 48 "mn-authenticated-mailbox.gob"
-	g_return_val_if_fail (self != NULL, (MNAuthenticatedMailboxResult )0);
-#line 48 "mn-authenticated-mailbox.gob"
-	g_return_val_if_fail (MN_IS_AUTHENTICATED_MAILBOX (self), (MNAuthenticatedMailboxResult )0);
-#line 164 "mn-authenticated-mailbox.c"
-	klass = MN_AUTHENTICATED_MAILBOX_GET_CLASS(self);
-
-	if(klass->impl_authenticated_check)
-		return (*klass->impl_authenticated_check)(self,err);
-	else
-		return (MNAuthenticatedMailboxResult )(0);
-}
-
-#line 51 "mn-authenticated-mailbox.gob"
+#line 41 "mn-authenticated-mailbox.gob"
 static void 
-___2_mn_authenticated_mailbox_removed (MNMailbox * mailbox G_GNUC_UNUSED)
-#line 176 "mn-authenticated-mailbox.c"
+___1_mn_authenticated_mailbox_removed (MNMailbox * mailbox G_GNUC_UNUSED)
+#line 156 "mn-authenticated-mailbox.c"
 #define PARENT_HANDLER(___mailbox) \
 	{ if(MN_MAILBOX_CLASS(parent_class)->removed) \
 		(* MN_MAILBOX_CLASS(parent_class)->removed)(___mailbox); }
 {
 #define __GOB_FUNCTION__ "MN:Authenticated:Mailbox::removed"
-#line 51 "mn-authenticated-mailbox.gob"
+#line 41 "mn-authenticated-mailbox.gob"
 	g_return_if_fail (mailbox != NULL);
-#line 51 "mn-authenticated-mailbox.gob"
+#line 41 "mn-authenticated-mailbox.gob"
 	g_return_if_fail (MN_IS_MAILBOX (mailbox));
-#line 186 "mn-authenticated-mailbox.c"
+#line 166 "mn-authenticated-mailbox.c"
 {
-#line 53 "mn-authenticated-mailbox.gob"
+#line 43 "mn-authenticated-mailbox.gob"
 	
     Self *self = SELF(mailbox);
 
-    if (selfp->authentication_dialog)
-      gtk_dialog_response(GTK_DIALOG(selfp->authentication_dialog), GTK_RESPONSE_CANCEL);
+    if (selfp->dialog)
+      gtk_dialog_response(GTK_DIALOG(selfp->dialog), GTK_RESPONSE_CANCEL);
 
     PARENT_HANDLER(mailbox);
   }}
-#line 197 "mn-authenticated-mailbox.c"
+#line 177 "mn-authenticated-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 62 "mn-authenticated-mailbox.gob"
+#line 52 "mn-authenticated-mailbox.gob"
 static void 
-___3_mn_authenticated_mailbox_impl_check (MNMailbox * mailbox G_GNUC_UNUSED)
-#line 204 "mn-authenticated-mailbox.c"
+___2_mn_authenticated_mailbox_impl_check (MNMailbox * mailbox G_GNUC_UNUSED)
+#line 184 "mn-authenticated-mailbox.c"
 #define PARENT_HANDLER(___mailbox) \
 	{ if(MN_MAILBOX_CLASS(parent_class)->impl_check) \
 		(* MN_MAILBOX_CLASS(parent_class)->impl_check)(___mailbox); }
 {
 #define __GOB_FUNCTION__ "MN:Authenticated:Mailbox::impl_check"
-#line 62 "mn-authenticated-mailbox.gob"
+#line 52 "mn-authenticated-mailbox.gob"
 	g_return_if_fail (mailbox != NULL);
-#line 62 "mn-authenticated-mailbox.gob"
+#line 52 "mn-authenticated-mailbox.gob"
 	g_return_if_fail (MN_IS_MAILBOX (mailbox));
-#line 214 "mn-authenticated-mailbox.c"
+#line 194 "mn-authenticated-mailbox.c"
 {
-#line 64 "mn-authenticated-mailbox.gob"
+#line 54 "mn-authenticated-mailbox.gob"
 	
     Self *self = SELF(mailbox);
-    GError *err = NULL;
-    MNAuthenticatedMailboxResult result;
+    selfp->authentication_failed = FALSE;
+  }}
+#line 201 "mn-authenticated-mailbox.c"
+#undef __GOB_FUNCTION__
+#undef PARENT_HANDLER
+
+#line 59 "mn-authenticated-mailbox.gob"
+void 
+mn_authenticated_mailbox_authentication_failed (MNAuthenticatedMailbox * self)
+#line 208 "mn-authenticated-mailbox.c"
+{
+#define __GOB_FUNCTION__ "MN:Authenticated:Mailbox::authentication_failed"
+#line 59 "mn-authenticated-mailbox.gob"
+	g_return_if_fail (self != NULL);
+#line 59 "mn-authenticated-mailbox.gob"
+	g_return_if_fail (MN_IS_AUTHENTICATED_MAILBOX (self));
+#line 215 "mn-authenticated-mailbox.c"
+{
+#line 61 "mn-authenticated-mailbox.gob"
+	
+    g_free(self->password);
+    self->password = NULL;
+    selfp->authentication_failed = TRUE;
+  }}
+#line 223 "mn-authenticated-mailbox.c"
+#undef __GOB_FUNCTION__
 
+#line 67 "mn-authenticated-mailbox.gob"
+void 
+mn_authenticated_mailbox_fill_password (MNAuthenticatedMailbox * self)
+#line 229 "mn-authenticated-mailbox.c"
+{
+#define __GOB_FUNCTION__ "MN:Authenticated:Mailbox::fill_password"
+#line 67 "mn-authenticated-mailbox.gob"
+	g_return_if_fail (self != NULL);
+#line 67 "mn-authenticated-mailbox.gob"
+	g_return_if_fail (MN_IS_AUTHENTICATED_MAILBOX (self));
+#line 236 "mn-authenticated-mailbox.c"
+{
+#line 69 "mn-authenticated-mailbox.gob"
+	
+    self->cancelled = FALSE;
     if (! self->password)
       {
-  	if (mailbox->uri->password)
-	  self->password = g_strdup(mailbox->uri->password);
-	else
+	self->password = g_strdup(MN_MAILBOX(self)->uri->password);
+	if (! self->password)
 	  {
 	    GDK_THREADS_ENTER();
-	    /* translator: example output: Enter your password for POP3 mailbox jylefort@localhost. */
-	    self->password = self_password_prompt(self, _("Enter your password for %s mailbox %s."),
-						  MN_MAILBOX_GET_CLASS(mailbox)->format,
-						  mn_mailbox_get_name(mailbox));
+
+	    self->password = self_password_prompt(self,
+						  selfp->authentication_failed
+						  ? _("Mail Notification was unable to log into %s mailbox %s, possibly because the password you have entered is invalid.\n\nPlease re-enter your password.")
+						  : _("Enter your password for %s mailbox %s."),
+						  MN_MAILBOX_GET_CLASS(self)->format,
+						  mn_mailbox_get_name(MN_MAILBOX(self)));
+
+	    if (! self->password)
+	      self->cancelled = TRUE;
+	    
 	    gdk_flush();
 	    GDK_THREADS_LEAVE();
-
-	    if (! self->password) /* cancelled */
-	      goto end;
 	  }
       }
-
-    result = SELF_GET_CLASS(self)->impl_authenticated_check(self, &err);
-
-    if (! mailbox->uri->password)
-      while (result == MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION)
-	{
-	  g_clear_error(&err);
-	  g_free(self->password);
-
-	  GDK_THREADS_ENTER();
-	  /* translator: example output: ... into POP3 mailbox jylefort@localhost ... */
-	  self->password = self_password_prompt(self, _("Mail Notification was unable to log into %s mailbox %s, possibly because the password you have entered is invalid.\n\nPlease re-enter your password."),
-						MN_MAILBOX_GET_CLASS(mailbox)->format,
-						mn_mailbox_get_name(mailbox));
-	  gdk_flush();
-	  GDK_THREADS_LEAVE();
-
-	  if (! self->password)	/* cancelled */
-	    goto end;
-
-	  result = SELF_GET_CLASS(self)->impl_authenticated_check(self, &err);
-	}
-
-    if (result != MN_AUTHENTICATED_MAILBOX_OK)
-      {
-  	GDK_THREADS_ENTER();
-	mn_mailbox_set_error(mailbox, "%s", err->message);
-	gdk_flush();
-	GDK_THREADS_LEAVE();
-	g_error_free(err);
-      }
-    
-  end:
-    GDK_THREADS_ENTER();
-    mn_mailbox_end_check(mailbox);
-    gdk_flush();
-    GDK_THREADS_LEAVE();
   }}
-#line 278 "mn-authenticated-mailbox.c"
+#line 263 "mn-authenticated-mailbox.c"
 #undef __GOB_FUNCTION__
-#undef PARENT_HANDLER
 
-#line 126 "mn-authenticated-mailbox.gob"
+#line 94 "mn-authenticated-mailbox.gob"
 static char * 
 mn_authenticated_mailbox_password_prompt (MNAuthenticatedMailbox * self, const char * format, ...)
-#line 285 "mn-authenticated-mailbox.c"
+#line 269 "mn-authenticated-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Authenticated:Mailbox::password_prompt"
-#line 126 "mn-authenticated-mailbox.gob"
+#line 94 "mn-authenticated-mailbox.gob"
 	g_return_val_if_fail (self != NULL, (char * )0);
-#line 126 "mn-authenticated-mailbox.gob"
+#line 94 "mn-authenticated-mailbox.gob"
 	g_return_val_if_fail (MN_IS_AUTHENTICATED_MAILBOX (self), (char * )0);
-#line 126 "mn-authenticated-mailbox.gob"
+#line 94 "mn-authenticated-mailbox.gob"
 	g_return_val_if_fail (format != NULL, (char * )0);
-#line 294 "mn-authenticated-mailbox.c"
+#line 278 "mn-authenticated-mailbox.c"
 {
-#line 128 "mn-authenticated-mailbox.gob"
+#line 96 "mn-authenticated-mailbox.gob"
 	
     GtkWidget *label;
     GtkWidget *username_label;
@@ -305,10 +289,10 @@ mn_authenticated_mailbox_password_prompt (MNAuthenticatedMailbox * self, const c
     char *markup;
     char *password = NULL;
 
-    g_return_val_if_fail(selfp->authentication_dialog == NULL, NULL);
+    g_return_val_if_fail(selfp->dialog == NULL, NULL);
 
     mn_create_interface("authentication",
-			"dialog", &selfp->authentication_dialog,
+			"dialog", &selfp->dialog,
 			"label", &label,
 			"username_label", &username_label,
 			"username_entry", &username_entry,
@@ -316,9 +300,9 @@ mn_authenticated_mailbox_password_prompt (MNAuthenticatedMailbox * self, const c
 			"password_entry", &password_entry,
 			NULL);
 
-    eel_add_weak_pointer(&selfp->authentication_dialog);
+    eel_add_weak_pointer(&selfp->dialog);
 
-    gtk_dialog_set_default_response(GTK_DIALOG(selfp->authentication_dialog), GTK_RESPONSE_OK);
+    gtk_dialog_set_default_response(GTK_DIALOG(selfp->dialog), GTK_RESPONSE_OK);
 
     size_group = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
     gtk_size_group_add_widget(size_group, username_label);
@@ -340,24 +324,24 @@ mn_authenticated_mailbox_password_prompt (MNAuthenticatedMailbox * self, const c
 
     gtk_entry_set_text(GTK_ENTRY(username_entry), MN_MAILBOX(self)->uri->username);
 
-    if (gtk_dialog_run(GTK_DIALOG(selfp->authentication_dialog)) == GTK_RESPONSE_OK)
+    if (gtk_dialog_run(GTK_DIALOG(selfp->dialog)) == GTK_RESPONSE_OK)
       password = g_strdup(gtk_entry_get_text(GTK_ENTRY(password_entry)));
 
-    gtk_widget_destroy(selfp->authentication_dialog);
+    gtk_widget_destroy(selfp->dialog);
 
     return password;
   }}
-#line 351 "mn-authenticated-mailbox.c"
+#line 335 "mn-authenticated-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 185 "mn-authenticated-mailbox.gob"
+#line 153 "mn-authenticated-mailbox.gob"
 void 
 mn_authenticated_mailbox_password_prompt_changed_h (gpointer user_data, GtkEditable * editable)
-#line 357 "mn-authenticated-mailbox.c"
+#line 341 "mn-authenticated-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Authenticated:Mailbox::password_prompt_changed_h"
 {
-#line 188 "mn-authenticated-mailbox.gob"
+#line 156 "mn-authenticated-mailbox.gob"
 	
     GtkDialog *dialog = user_data;
     const char *password;
@@ -365,5 +349,5 @@ mn_authenticated_mailbox_password_prompt_changed_h (gpointer user_data, GtkEdita
     password = gtk_entry_get_text(GTK_ENTRY(editable));
     gtk_dialog_set_response_sensitive(dialog, GTK_RESPONSE_OK, *password != 0);
   }}
-#line 369 "mn-authenticated-mailbox.c"
+#line 353 "mn-authenticated-mailbox.c"
 #undef __GOB_FUNCTION__
diff --git a/src/mn-authenticated-mailbox.gob b/src/mn-authenticated-mailbox.gob
@@ -23,15 +23,6 @@ requires 2.0.10
 #include "mn-mailbox.h"
 %}
 
-%h{
-  typedef enum
-  {
-    MN_AUTHENTICATED_MAILBOX_OK,
-    MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION,
-    MN_AUTHENTICATED_MAILBOX_ERROR_OTHER
-  } MNAuthenticatedMailboxResult;
-%}
-
 %{
 #include "config.h"
 #include <glib/gi18n.h>
@@ -42,19 +33,18 @@ requires 2.0.10
 
 class MN:Authenticated:Mailbox from MN:Mailbox
 {
-  public char *password = NULL destroywith g_free;
-  private GtkWidget *authentication_dialog;
-
-  virtual private MNAuthenticatedMailboxResult
-    impl_authenticated_check (self, GError **err);
+  protected char *password = NULL destroywith g_free;
+  protected gboolean cancelled;
+  private gboolean authentication_failed;
+  private GtkWidget *dialog;
 
   override (MN:Mailbox) void
     removed (MN:Mailbox *mailbox (check null type))
   {
     Self *self = SELF(mailbox);
 
-    if (selfp->authentication_dialog)
-      gtk_dialog_response(GTK_DIALOG(selfp->authentication_dialog), GTK_RESPONSE_CANCEL);
+    if (selfp->dialog)
+      gtk_dialog_response(GTK_DIALOG(selfp->dialog), GTK_RESPONSE_CANCEL);
 
     PARENT_HANDLER(mailbox);
   }
@@ -63,64 +53,42 @@ class MN:Authenticated:Mailbox from MN:Mailbox
     impl_check (MN:Mailbox *mailbox (check null type))
   {
     Self *self = SELF(mailbox);
-    GError *err = NULL;
-    MNAuthenticatedMailboxResult result;
-
+    selfp->authentication_failed = FALSE;
+  }
+  
+  protected void
+    authentication_failed (self)
+  {
+    g_free(self->password);
+    self->password = NULL;
+    selfp->authentication_failed = TRUE;
+  }
+  
+  protected void
+    fill_password (self)
+  {
+    self->cancelled = FALSE;
     if (! self->password)
       {
-  	if (mailbox->uri->password)
-	  self->password = g_strdup(mailbox->uri->password);
-	else
+	self->password = g_strdup(MN_MAILBOX(self)->uri->password);
+	if (! self->password)
 	  {
 	    GDK_THREADS_ENTER();
-	    /* translator: example output: Enter your password for POP3 mailbox jylefort@localhost. */
-	    self->password = self_password_prompt(self, _("Enter your password for %s mailbox %s."),
-						  MN_MAILBOX_GET_CLASS(mailbox)->format,
-						  mn_mailbox_get_name(mailbox));
+
+	    self->password = self_password_prompt(self,
+						  selfp->authentication_failed
+						  ? _("Mail Notification was unable to log into %s mailbox %s, possibly because the password you have entered is invalid.\n\nPlease re-enter your password.")
+						  : _("Enter your password for %s mailbox %s."),
+						  MN_MAILBOX_GET_CLASS(self)->format,
+						  mn_mailbox_get_name(MN_MAILBOX(self)));
+
+	    if (! self->password)
+	      self->cancelled = TRUE;
+	    
 	    gdk_flush();
 	    GDK_THREADS_LEAVE();
-
-	    if (! self->password) /* cancelled */
-	      goto end;
 	  }
       }
-
-    result = SELF_GET_CLASS(self)->impl_authenticated_check(self, &err);
-
-    if (! mailbox->uri->password)
-      while (result == MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION)
-	{
-	  g_clear_error(&err);
-	  g_free(self->password);
-
-	  GDK_THREADS_ENTER();
-	  /* translator: example output: ... into POP3 mailbox jylefort@localhost ... */
-	  self->password = self_password_prompt(self, _("Mail Notification was unable to log into %s mailbox %s, possibly because the password you have entered is invalid.\n\nPlease re-enter your password."),
-						MN_MAILBOX_GET_CLASS(mailbox)->format,
-						mn_mailbox_get_name(mailbox));
-	  gdk_flush();
-	  GDK_THREADS_LEAVE();
-
-	  if (! self->password)	/* cancelled */
-	    goto end;
-
-	  result = SELF_GET_CLASS(self)->impl_authenticated_check(self, &err);
-	}
-
-    if (result != MN_AUTHENTICATED_MAILBOX_OK)
-      {
-  	GDK_THREADS_ENTER();
-	mn_mailbox_set_error(mailbox, "%s", err->message);
-	gdk_flush();
-	GDK_THREADS_LEAVE();
-	g_error_free(err);
-      }
-    
-  end:
-    GDK_THREADS_ENTER();
-    mn_mailbox_end_check(mailbox);
-    gdk_flush();
-    GDK_THREADS_LEAVE();
   }
   
   private char *
@@ -137,10 +105,10 @@ class MN:Authenticated:Mailbox from MN:Mailbox
     char *markup;
     char *password = NULL;
 
-    g_return_val_if_fail(selfp->authentication_dialog == NULL, NULL);
+    g_return_val_if_fail(selfp->dialog == NULL, NULL);
 
     mn_create_interface("authentication",
-			"dialog", &selfp->authentication_dialog,
+			"dialog", &selfp->dialog,
 			"label", &label,
 			"username_label", &username_label,
 			"username_entry", &username_entry,
@@ -148,9 +116,9 @@ class MN:Authenticated:Mailbox from MN:Mailbox
 			"password_entry", &password_entry,
 			NULL);
 
-    eel_add_weak_pointer(&selfp->authentication_dialog);
+    eel_add_weak_pointer(&selfp->dialog);
 
-    gtk_dialog_set_default_response(GTK_DIALOG(selfp->authentication_dialog), GTK_RESPONSE_OK);
+    gtk_dialog_set_default_response(GTK_DIALOG(selfp->dialog), GTK_RESPONSE_OK);
 
     size_group = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
     gtk_size_group_add_widget(size_group, username_label);
@@ -172,10 +140,10 @@ class MN:Authenticated:Mailbox from MN:Mailbox
 
     gtk_entry_set_text(GTK_ENTRY(username_entry), MN_MAILBOX(self)->uri->username);
 
-    if (gtk_dialog_run(GTK_DIALOG(selfp->authentication_dialog)) == GTK_RESPONSE_OK)
+    if (gtk_dialog_run(GTK_DIALOG(selfp->dialog)) == GTK_RESPONSE_OK)
       password = g_strdup(gtk_entry_get_text(GTK_ENTRY(password_entry)));
 
-    gtk_widget_destroy(selfp->authentication_dialog);
+    gtk_widget_destroy(selfp->dialog);
 
     return password;
   }
diff --git a/src/mn-authenticated-mailbox.h b/src/mn-authenticated-mailbox.h
@@ -15,15 +15,6 @@ extern "C" {
 #endif /* __cplusplus */
 
 
-
-  typedef enum
-  {
-    MN_AUTHENTICATED_MAILBOX_OK,
-    MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION,
-    MN_AUTHENTICATED_MAILBOX_ERROR_OTHER
-  } MNAuthenticatedMailboxResult;
-
-
 /*
  * Type checking and casting macros
  */
@@ -47,9 +38,9 @@ typedef struct _MNAuthenticatedMailbox MNAuthenticatedMailbox;
 #endif
 struct _MNAuthenticatedMailbox {
 	MNMailbox __parent__;
-	/*< public >*/
-	char * password;
 	/*< private >*/
+	char * password; /* protected */
+	gboolean cancelled; /* protected */
 	MNAuthenticatedMailboxPrivate *_priv;
 };
 
@@ -59,7 +50,6 @@ struct _MNAuthenticatedMailbox {
 typedef struct _MNAuthenticatedMailboxClass MNAuthenticatedMailboxClass;
 struct _MNAuthenticatedMailboxClass {
 	MNMailboxClass __parent__;
-	MNAuthenticatedMailboxResult (* impl_authenticated_check) (MNAuthenticatedMailbox * self, GError ** err);
 };
 
 
diff --git a/src/mn-autodetect-mailbox-properties.c b/src/mn-autodetect-mailbox-properties.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-automation.c b/src/mn-automation.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-blinking-image.c b/src/mn-blinking-image.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-client-session.c b/src/mn-client-session.c
@@ -57,8 +57,6 @@ struct _MNClientSession
   MNClientSessionCallbacks	*callbacks;
   char				*hostname;
   int				port;
-  char				*username;
-  char				*password;
   int				s;
   MNClientSessionState		*state;
   char				*error;
@@ -115,7 +113,8 @@ static int mn_client_session_write_base64 (MNClientSession *session,
 					   const char *buf,
 					   unsigned int len);
 static gboolean mn_client_session_sasl_fill_interact (MNClientSession *session,
-						      sasl_interact_t *interact);
+						      sasl_interact_t *interact,
+						      const char *unknown_notice);
 static char *mn_client_session_sasl_get_ip_port (const struct sockaddr *addr);
 #endif /* WITH_SASL */
 
@@ -129,8 +128,6 @@ mn_client_session_run (MNClientSessionState *states,
 #endif
 		       const char *hostname,
 		       int port,
-		       const char *username,
-		       const char *password,
 		       MNClientSessionPrivate *private,
 		       GError **err)
 {
@@ -143,16 +140,12 @@ mn_client_session_run (MNClientSessionState *states,
   g_return_val_if_fail(callbacks->response_new != NULL, FALSE);
   g_return_val_if_fail(callbacks->response_free != NULL, FALSE);
   g_return_val_if_fail(hostname != NULL, FALSE);
-  g_return_val_if_fail(username != NULL, FALSE);
-  g_return_val_if_fail(password != NULL, FALSE);
 
   memset(&session, 0, sizeof(session));
   session.states = states;
   session.callbacks = callbacks;
   session.hostname = g_strdup(hostname);
   session.port = port;
-  session.username = g_strdup(username);
-  session.password = g_strdup(password);
   session.private = private;
 
   addrinfo = mn_client_session_resolve(&session);
@@ -182,8 +175,6 @@ mn_client_session_run (MNClientSessionState *states,
   
  end:
   g_free(session.hostname);
-  g_free(session.username);
-  g_free(session.password);
   if (session.s >= 0)
     while (close(session.s) < 0 && errno == EINTR);
 #ifdef WITH_SSL
@@ -831,7 +822,8 @@ mn_client_session_write_base64 (MNClientSession *session,
 
 static gboolean
 mn_client_session_sasl_fill_interact (MNClientSession *session,
-				      sasl_interact_t *interact)
+				      sasl_interact_t *interact,
+				      const char *unknown_notice)
 {
   sasl_interact_t *i;
 
@@ -840,18 +832,22 @@ mn_client_session_sasl_fill_interact (MNClientSession *session,
 
   for (i = interact; i->id; i++)
     {
-      const char *data = NULL;
+      const char *data;
 
       switch (i->id)
 	{
 	case SASL_CB_USER:
 	case SASL_CB_AUTHNAME:
-	  data = session->username;
+	  data = session->callbacks->sasl_get_username(session, session->private);
 	  break;
 	  
 	case SASL_CB_PASS:
-	  data = session->password;
+	  data = session->callbacks->sasl_get_password(session, session->private);
 	  break;
+
+	default:
+	  data = NULL;
+	  mn_client_session_notice(session, unknown_notice);
 	};
 
       if (data)
@@ -918,6 +914,8 @@ mn_client_session_sasl_authentication_start (MNClientSession *session,
   char *remote_ip_port = NULL;
 
   g_return_val_if_fail(session != NULL, 0);
+  g_return_val_if_fail(session->callbacks->sasl_get_username != NULL, FALSE);
+  g_return_val_if_fail(session->callbacks->sasl_get_password != NULL, FALSE);
   g_return_val_if_fail(service != NULL, 0);
   g_return_val_if_fail(mechanisms != NULL, 0);
 
@@ -997,7 +995,7 @@ mn_client_session_sasl_authentication_start (MNClientSession *session,
 
 	  if (result == SASL_INTERACT)
 	    {
-	      if (! mn_client_session_sasl_fill_interact(session, interact))
+	      if (! mn_client_session_sasl_fill_interact(session, interact, _("unable to start SASL authentication: SASL asked for something we did not know")))
 		break;
 	    }
 	}
@@ -1012,7 +1010,7 @@ mn_client_session_sasl_authentication_start (MNClientSession *session,
 	  return TRUE;
 
 	case SASL_INTERACT:
-	  mn_client_session_notice(session, _("unable to start SASL authentication: SASL asked for something we did not know"));
+	  /* could not fill interaction, nop */
 	  break;
 
 	default:
@@ -1057,7 +1055,7 @@ mn_client_session_sasl_authentication_step (MNClientSession *session,
 		  
 		  if (result == SASL_INTERACT)
 		    {
-		      if (! mn_client_session_sasl_fill_interact(session, interact))
+		      if (! mn_client_session_sasl_fill_interact(session, interact, _("SASL asked for something we did not know, aborting SASL authentication")))
 			break;
 		    }
 		}
@@ -1070,7 +1068,7 @@ mn_client_session_sasl_authentication_step (MNClientSession *session,
 		  return mn_client_session_write_base64(session, session->sasl_clientout, session->sasl_clientoutlen);
 		  
 		case SASL_INTERACT:
-		  mn_client_session_notice(session, _("SASL asked for something we did not know, aborting SASL authentication"));
+		  /* could not fill interaction, abort */
 		  return mn_client_session_write(session, "*");
 		  
 		default:
diff --git a/src/mn-client-session.h b/src/mn-client-session.h
@@ -68,6 +68,13 @@ typedef struct
 				 MNClientSessionPrivate   *private);
   void      (*post_read)	(MNClientSession          *session,
 				 MNClientSessionPrivate   *private);
+
+#ifdef WITH_SASL
+  const char *	(*sasl_get_username)	(MNClientSession	*session,
+					 MNClientSessionPrivate	*priv);
+  const char *	(*sasl_get_password)	(MNClientSession	*session,
+					 MNClientSessionPrivate	*priv);
+#endif /* WITH_SASL */
 } MNClientSessionCallbacks;
 
 gboolean mn_client_session_run (MNClientSessionState *states,
@@ -77,8 +84,6 @@ gboolean mn_client_session_run (MNClientSessionState *states,
 #endif
 				const char *hostname,
 				int port,
-				const char *username,
-				const char *password,
 				MNClientSessionPrivate *private,
 				GError **err);
 
diff --git a/src/mn-gmail-mailbox-private.h b/src/mn-gmail-mailbox-private.h
@@ -16,9 +16,9 @@ extern "C" {
 
 #line 18 "mn-gmail-mailbox-private.h"
 struct _MNGmailMailboxPrivate {
-#line 64 "mn-gmail-mailbox.gob"
-	GHashTable * cookies;
 #line 65 "mn-gmail-mailbox.gob"
+	GHashTable * cookies;
+#line 66 "mn-gmail-mailbox.gob"
 	gboolean logged_in;
 #line 24 "mn-gmail-mailbox-private.h"
 };
diff --git a/src/mn-gmail-mailbox-properties.c b/src/mn-gmail-mailbox-properties.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-gmail-mailbox.c b/src/mn-gmail-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
@@ -34,6 +34,7 @@
 #include <glib/gi18n.h>
 #include <eel/eel.h>
 #include "mn-mailbox-private.h"
+#include "mn-authenticated-mailbox-private.h"
 #include "mn-util.h"
 #include "mn-stock.h"
 #include "mn-sgml-ref.h"
@@ -54,7 +55,7 @@
     } value;
   } JSArg;
 
-#line 58 "mn-gmail-mailbox.c"
+#line 59 "mn-gmail-mailbox.c"
 /* self casting macros */
 #define SELF(x) MN_GMAIL_MAILBOX(x)
 #define SELF_CONST(x) MN_GMAIL_MAILBOX_CONST(x)
@@ -73,7 +74,7 @@ static void mn_gmail_mailbox_init (MNGmailMailbox * o) G_GNUC_UNUSED;
 static void mn_gmail_mailbox_class_init (MNGmailMailboxClass * class) G_GNUC_UNUSED;
 static GObject * ___2_mn_gmail_mailbox_constructor (GType type, guint n_construct_properties, GObjectConstructParam * construct_params) G_GNUC_UNUSED;
 static gboolean ___3_mn_gmail_mailbox_impl_is (MNMailbox * dummy, MNURI * uri) G_GNUC_UNUSED;
-static MNAuthenticatedMailboxResult ___4_mn_gmail_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authenticated_mailbox, GError ** err) G_GNUC_UNUSED;
+static void ___4_mn_gmail_mailbox_impl_check (MNMailbox * mailbox) G_GNUC_UNUSED;
 static SoupUri * mn_gmail_mailbox_soup_uri_new (const char * text_uri, GError ** err) G_GNUC_UNUSED;
 static char * mn_gmail_mailbox_get (MNGmailMailbox * self, SoupSession * session, const char * text_uri, GError ** err) G_GNUC_UNUSED;
 static char * mn_gmail_mailbox_get_from_uri (MNGmailMailbox * self, SoupSession * session, SoupUri * uri, GError ** err) G_GNUC_UNUSED;
@@ -172,9 +173,9 @@ ___finalize(GObject *obj_self)
 	gpointer priv G_GNUC_UNUSED = self->_priv;
 	if(G_OBJECT_CLASS(parent_class)->finalize) \
 		(* G_OBJECT_CLASS(parent_class)->finalize)(obj_self);
-#line 64 "mn-gmail-mailbox.gob"
+#line 65 "mn-gmail-mailbox.gob"
 	if(self->_priv->cookies) { g_hash_table_destroy ((gpointer) self->_priv->cookies); self->_priv->cookies = NULL; }
-#line 178 "mn-gmail-mailbox.c"
+#line 179 "mn-gmail-mailbox.c"
 }
 #undef __GOB_FUNCTION__
 
@@ -185,30 +186,29 @@ mn_gmail_mailbox_init (MNGmailMailbox * o G_GNUC_UNUSED)
 	o->_priv = G_TYPE_INSTANCE_GET_PRIVATE(o,TYPE_SELF,MNGmailMailboxPrivate);
 }
 #undef __GOB_FUNCTION__
-#line 67 "mn-gmail-mailbox.gob"
+#line 68 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_class_init (MNGmailMailboxClass * class G_GNUC_UNUSED)
-#line 192 "mn-gmail-mailbox.c"
+#line 193 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::class_init"
 	GObjectClass *g_object_class G_GNUC_UNUSED = (GObjectClass*) class;
 	MNMailboxClass *mn_mailbox_class = (MNMailboxClass *)class;
-	MNAuthenticatedMailboxClass *mn_authenticated_mailbox_class = (MNAuthenticatedMailboxClass *)class;
 
 	g_type_class_add_private(class,sizeof(MNGmailMailboxPrivate));
 
 	parent_class = g_type_class_ref (MN_TYPE_AUTHENTICATED_MAILBOX);
 
-#line 73 "mn-gmail-mailbox.gob"
+#line 74 "mn-gmail-mailbox.gob"
 	g_object_class->constructor = ___2_mn_gmail_mailbox_constructor;
-#line 86 "mn-gmail-mailbox.gob"
+#line 87 "mn-gmail-mailbox.gob"
 	mn_mailbox_class->impl_is = ___3_mn_gmail_mailbox_impl_is;
-#line 92 "mn-gmail-mailbox.gob"
-	mn_authenticated_mailbox_class->impl_authenticated_check = ___4_mn_gmail_mailbox_impl_authenticated_check;
+#line 93 "mn-gmail-mailbox.gob"
+	mn_mailbox_class->impl_check = ___4_mn_gmail_mailbox_impl_check;
 #line 209 "mn-gmail-mailbox.c"
 	g_object_class->finalize = ___finalize;
  {
-#line 68 "mn-gmail-mailbox.gob"
+#line 69 "mn-gmail-mailbox.gob"
 
     MN_MAILBOX_CLASS(class)->stock_id = MN_STOCK_GMAIL;
     MN_MAILBOX_CLASS(class)->format = "Gmail";
@@ -220,7 +220,7 @@ mn_gmail_mailbox_class_init (MNGmailMailboxClass * class G_GNUC_UNUSED)
 
 
 
-#line 73 "mn-gmail-mailbox.gob"
+#line 74 "mn-gmail-mailbox.gob"
 static GObject * 
 ___2_mn_gmail_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_properties, GObjectConstructParam * construct_params)
 #line 227 "mn-gmail-mailbox.c"
@@ -231,7 +231,7 @@ ___2_mn_gmail_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_p
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::constructor"
 {
-#line 75 "mn-gmail-mailbox.gob"
+#line 76 "mn-gmail-mailbox.gob"
 	
     GObject *object;
 
@@ -246,7 +246,7 @@ ___2_mn_gmail_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_p
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 86 "mn-gmail-mailbox.gob"
+#line 87 "mn-gmail-mailbox.gob"
 static gboolean 
 ___3_mn_gmail_mailbox_impl_is (MNMailbox * dummy G_GNUC_UNUSED, MNURI * uri)
 #line 253 "mn-gmail-mailbox.c"
@@ -256,13 +256,13 @@ ___3_mn_gmail_mailbox_impl_is (MNMailbox * dummy G_GNUC_UNUSED, MNURI * uri)
 		((gboolean )0))
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::impl_is"
-#line 86 "mn-gmail-mailbox.gob"
+#line 87 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (uri != NULL, (gboolean )0);
-#line 86 "mn-gmail-mailbox.gob"
+#line 87 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (MN_IS_URI (uri), (gboolean )0);
 #line 264 "mn-gmail-mailbox.c"
 {
-#line 88 "mn-gmail-mailbox.gob"
+#line 89 "mn-gmail-mailbox.gob"
 	
     return MN_URI_IS_GMAIL(uri);
   }}
@@ -270,58 +270,94 @@ ___3_mn_gmail_mailbox_impl_is (MNMailbox * dummy G_GNUC_UNUSED, MNURI * uri)
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 92 "mn-gmail-mailbox.gob"
-static MNAuthenticatedMailboxResult 
-___4_mn_gmail_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authenticated_mailbox G_GNUC_UNUSED, GError ** err)
+#line 93 "mn-gmail-mailbox.gob"
+static void 
+___4_mn_gmail_mailbox_impl_check (MNMailbox * mailbox G_GNUC_UNUSED)
 #line 277 "mn-gmail-mailbox.c"
-#define PARENT_HANDLER(___authenticated_mailbox,___err) \
-	((MN_AUTHENTICATED_MAILBOX_CLASS(parent_class)->impl_authenticated_check)? \
-		(* MN_AUTHENTICATED_MAILBOX_CLASS(parent_class)->impl_authenticated_check)(___authenticated_mailbox,___err): \
-		((MNAuthenticatedMailboxResult )0))
+#define PARENT_HANDLER(___mailbox) \
+	{ if(MN_MAILBOX_CLASS(parent_class)->impl_check) \
+		(* MN_MAILBOX_CLASS(parent_class)->impl_check)(___mailbox); }
 {
-#define __GOB_FUNCTION__ "MN:Gmail:Mailbox::impl_authenticated_check"
-#line 92 "mn-gmail-mailbox.gob"
-	g_return_val_if_fail (authenticated_mailbox != NULL, (MNAuthenticatedMailboxResult )0);
-#line 92 "mn-gmail-mailbox.gob"
-	g_return_val_if_fail (MN_IS_AUTHENTICATED_MAILBOX (authenticated_mailbox), (MNAuthenticatedMailboxResult )0);
-#line 288 "mn-gmail-mailbox.c"
+#define __GOB_FUNCTION__ "MN:Gmail:Mailbox::impl_check"
+#line 93 "mn-gmail-mailbox.gob"
+	g_return_if_fail (mailbox != NULL);
+#line 93 "mn-gmail-mailbox.gob"
+	g_return_if_fail (MN_IS_MAILBOX (mailbox));
+#line 287 "mn-gmail-mailbox.c"
 {
 #line 95 "mn-gmail-mailbox.gob"
 	
-    Self *self = SELF(authenticated_mailbox);
+    MNAuthenticatedMailbox *authenticated_mailbox = MN_AUTHENTICATED_MAILBOX(mailbox);
+    Self *self = SELF(mailbox);
     SoupSession *session;
-    gboolean authentication_failed;
-    MNAuthenticatedMailboxResult result;
+    gboolean status = TRUE;
+    GError *err = NULL;
+
+    PARENT_HANDLER(mailbox);
 
     session = mn_soup_session_sync_new();
 
     if (! selfp->logged_in)
-      selfp->logged_in = self_login(self, session, &authentication_failed, err);
+      while (TRUE)
+	{
+	  gboolean authentication_failed;
 
-    if (selfp->logged_in)
-      result = self_check(self, session, err) ? MN_AUTHENTICATED_MAILBOX_OK : MN_AUTHENTICATED_MAILBOX_ERROR_OTHER;
-    else
-      result = authentication_failed ? MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION : MN_AUTHENTICATED_MAILBOX_ERROR_OTHER;
+	  mn_authenticated_mailbox_fill_password(authenticated_mailbox);
+	  if (! authenticated_mailbox->password)
+	    break;
+	    
+	  if (self_login(self, session, &authentication_failed, &err))
+	    {
+	      selfp->logged_in = TRUE;
+	      break;
+	    }
+	  else
+	    {
+	      if (authentication_failed && ! mailbox->uri->password)
+		{
+		  mn_authenticated_mailbox_authentication_failed(authenticated_mailbox);
+		  g_clear_error(&err);
+		}
+	      else
+		{
+		  status = FALSE;
+		  break;
+		}
+	    }
+	}
+	    
+    if (selfp->logged_in && ! self_check(self, session, &err))
+      status = FALSE;
     
     g_object_unref(session);
 
-    return result;
+    GDK_THREADS_ENTER();
+
+    if (! status)
+      {
+	mn_mailbox_set_error(mailbox, "%s", err->message);
+	g_error_free(err);
+      }
+    mn_mailbox_end_check(mailbox);
+
+    gdk_flush();
+    GDK_THREADS_LEAVE();
   }}
-#line 311 "mn-gmail-mailbox.c"
+#line 347 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 116 "mn-gmail-mailbox.gob"
+#line 153 "mn-gmail-mailbox.gob"
 static SoupUri * 
 mn_gmail_mailbox_soup_uri_new (const char * text_uri, GError ** err)
-#line 318 "mn-gmail-mailbox.c"
+#line 354 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::soup_uri_new"
-#line 116 "mn-gmail-mailbox.gob"
+#line 153 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (text_uri != NULL, (SoupUri * )0);
-#line 323 "mn-gmail-mailbox.c"
+#line 359 "mn-gmail-mailbox.c"
 {
-#line 118 "mn-gmail-mailbox.gob"
+#line 155 "mn-gmail-mailbox.gob"
 	
     SoupUri *uri;
 
@@ -331,28 +367,28 @@ mn_gmail_mailbox_soup_uri_new (const char * text_uri, GError ** err)
 
     return uri;
   }}
-#line 335 "mn-gmail-mailbox.c"
+#line 371 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 128 "mn-gmail-mailbox.gob"
+#line 165 "mn-gmail-mailbox.gob"
 static char * 
 mn_gmail_mailbox_get (MNGmailMailbox * self, SoupSession * session, const char * text_uri, GError ** err)
-#line 341 "mn-gmail-mailbox.c"
+#line 377 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::get"
-#line 128 "mn-gmail-mailbox.gob"
+#line 165 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (self != NULL, (char * )0);
-#line 128 "mn-gmail-mailbox.gob"
+#line 165 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (MN_IS_GMAIL_MAILBOX (self), (char * )0);
-#line 128 "mn-gmail-mailbox.gob"
+#line 165 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (char * )0);
-#line 128 "mn-gmail-mailbox.gob"
+#line 165 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (SOUP_IS_SESSION (session), (char * )0);
-#line 128 "mn-gmail-mailbox.gob"
+#line 165 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (text_uri != NULL, (char * )0);
-#line 354 "mn-gmail-mailbox.c"
+#line 390 "mn-gmail-mailbox.c"
 {
-#line 133 "mn-gmail-mailbox.gob"
+#line 170 "mn-gmail-mailbox.gob"
 	
     SoupUri *uri;
     char *body;
@@ -366,28 +402,28 @@ mn_gmail_mailbox_get (MNGmailMailbox * self, SoupSession * session, const char *
 
     return body;
   }}
-#line 370 "mn-gmail-mailbox.c"
+#line 406 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 147 "mn-gmail-mailbox.gob"
+#line 184 "mn-gmail-mailbox.gob"
 static char * 
 mn_gmail_mailbox_get_from_uri (MNGmailMailbox * self, SoupSession * session, SoupUri * uri, GError ** err)
-#line 376 "mn-gmail-mailbox.c"
+#line 412 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::get_from_uri"
-#line 147 "mn-gmail-mailbox.gob"
+#line 184 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (self != NULL, (char * )0);
-#line 147 "mn-gmail-mailbox.gob"
+#line 184 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (MN_IS_GMAIL_MAILBOX (self), (char * )0);
-#line 147 "mn-gmail-mailbox.gob"
+#line 184 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (char * )0);
-#line 147 "mn-gmail-mailbox.gob"
+#line 184 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (SOUP_IS_SESSION (session), (char * )0);
-#line 147 "mn-gmail-mailbox.gob"
+#line 184 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (uri != NULL, (char * )0);
-#line 389 "mn-gmail-mailbox.c"
+#line 425 "mn-gmail-mailbox.c"
 {
-#line 152 "mn-gmail-mailbox.gob"
+#line 189 "mn-gmail-mailbox.gob"
 	
     SoupMessage *message;
     char *cookie;
@@ -419,26 +455,26 @@ mn_gmail_mailbox_get_from_uri (MNGmailMailbox * self, SoupSession * session, Sou
     
     return body;
   }}
-#line 423 "mn-gmail-mailbox.c"
+#line 459 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 184 "mn-gmail-mailbox.gob"
+#line 221 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_dump_request (MNGmailMailbox * self, SoupMessage * message)
-#line 429 "mn-gmail-mailbox.c"
+#line 465 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::dump_request"
-#line 184 "mn-gmail-mailbox.gob"
+#line 221 "mn-gmail-mailbox.gob"
 	g_return_if_fail (self != NULL);
-#line 184 "mn-gmail-mailbox.gob"
+#line 221 "mn-gmail-mailbox.gob"
 	g_return_if_fail (MN_IS_GMAIL_MAILBOX (self));
-#line 184 "mn-gmail-mailbox.gob"
+#line 221 "mn-gmail-mailbox.gob"
 	g_return_if_fail (message != NULL);
-#line 184 "mn-gmail-mailbox.gob"
+#line 221 "mn-gmail-mailbox.gob"
 	g_return_if_fail (SOUP_IS_MESSAGE (message));
-#line 440 "mn-gmail-mailbox.c"
+#line 476 "mn-gmail-mailbox.c"
 {
-#line 186 "mn-gmail-mailbox.gob"
+#line 223 "mn-gmail-mailbox.gob"
 	
     const SoupUri *suri;
     char *uri;
@@ -450,24 +486,24 @@ mn_gmail_mailbox_dump_request (MNGmailMailbox * self, SoupMessage * message)
 
     soup_message_foreach_header(message->request_headers, self_dump_request_cb, self);
   }}
-#line 454 "mn-gmail-mailbox.c"
+#line 490 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 198 "mn-gmail-mailbox.gob"
+#line 235 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_dump_request_cb (gpointer key, gpointer value, gpointer user_data)
-#line 460 "mn-gmail-mailbox.c"
+#line 496 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::dump_request_cb"
-#line 198 "mn-gmail-mailbox.gob"
+#line 235 "mn-gmail-mailbox.gob"
 	g_return_if_fail (key != NULL);
-#line 198 "mn-gmail-mailbox.gob"
+#line 235 "mn-gmail-mailbox.gob"
 	g_return_if_fail (value != NULL);
-#line 198 "mn-gmail-mailbox.gob"
+#line 235 "mn-gmail-mailbox.gob"
 	g_return_if_fail (user_data != NULL);
-#line 469 "mn-gmail-mailbox.c"
+#line 505 "mn-gmail-mailbox.c"
 {
-#line 202 "mn-gmail-mailbox.gob"
+#line 239 "mn-gmail-mailbox.gob"
 	
     Self *self = user_data;
     const char *header_name = key;
@@ -475,28 +511,28 @@ mn_gmail_mailbox_dump_request_cb (gpointer key, gpointer value, gpointer user_da
 
     mn_mailbox_notice(MN_MAILBOX(self), "> %s: %s", header_name, header_value);
   }}
-#line 479 "mn-gmail-mailbox.c"
+#line 515 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 210 "mn-gmail-mailbox.gob"
+#line 247 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_dump_response (MNGmailMailbox * self, SoupMessage * message, const char * body)
-#line 485 "mn-gmail-mailbox.c"
+#line 521 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::dump_response"
-#line 210 "mn-gmail-mailbox.gob"
+#line 247 "mn-gmail-mailbox.gob"
 	g_return_if_fail (self != NULL);
-#line 210 "mn-gmail-mailbox.gob"
+#line 247 "mn-gmail-mailbox.gob"
 	g_return_if_fail (MN_IS_GMAIL_MAILBOX (self));
-#line 210 "mn-gmail-mailbox.gob"
+#line 247 "mn-gmail-mailbox.gob"
 	g_return_if_fail (message != NULL);
-#line 210 "mn-gmail-mailbox.gob"
+#line 247 "mn-gmail-mailbox.gob"
 	g_return_if_fail (SOUP_IS_MESSAGE (message));
-#line 210 "mn-gmail-mailbox.gob"
+#line 247 "mn-gmail-mailbox.gob"
 	g_return_if_fail (body != NULL);
-#line 498 "mn-gmail-mailbox.c"
+#line 534 "mn-gmail-mailbox.c"
 {
-#line 214 "mn-gmail-mailbox.gob"
+#line 251 "mn-gmail-mailbox.gob"
 	
     char **lines;
     int i;
@@ -508,24 +544,24 @@ mn_gmail_mailbox_dump_response (MNGmailMailbox * self, SoupMessage * message, co
       mn_mailbox_notice(MN_MAILBOX(self), "< %s", lines[i]);
     g_strfreev(lines);
   }}
-#line 512 "mn-gmail-mailbox.c"
+#line 548 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 226 "mn-gmail-mailbox.gob"
+#line 263 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_dump_response_cb (gpointer key, gpointer value, gpointer user_data)
-#line 518 "mn-gmail-mailbox.c"
+#line 554 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::dump_response_cb"
-#line 226 "mn-gmail-mailbox.gob"
+#line 263 "mn-gmail-mailbox.gob"
 	g_return_if_fail (key != NULL);
-#line 226 "mn-gmail-mailbox.gob"
+#line 263 "mn-gmail-mailbox.gob"
 	g_return_if_fail (value != NULL);
-#line 226 "mn-gmail-mailbox.gob"
+#line 263 "mn-gmail-mailbox.gob"
 	g_return_if_fail (user_data != NULL);
-#line 527 "mn-gmail-mailbox.c"
+#line 563 "mn-gmail-mailbox.c"
 {
-#line 230 "mn-gmail-mailbox.gob"
+#line 267 "mn-gmail-mailbox.gob"
 	
     Self *self = user_data;
     const char *header_name = key;
@@ -533,7 +569,7 @@ mn_gmail_mailbox_dump_response_cb (gpointer key, gpointer value, gpointer user_d
 
     mn_mailbox_notice(MN_MAILBOX(self), "< %s: %s", header_name, header_value);
   }}
-#line 537 "mn-gmail-mailbox.c"
+#line 573 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
 /**
@@ -549,21 +585,21 @@ mn_gmail_mailbox_dump_response_cb (gpointer key, gpointer value, gpointer user_d
  * Return value: a newly allocated string containing the substring
  *               or %NULL if not found.
  **/
-#line 251 "mn-gmail-mailbox.gob"
+#line 288 "mn-gmail-mailbox.gob"
 static char * 
 mn_gmail_mailbox_get_substring (const char * str, const char * pre, const char * post, gboolean include_pre, gboolean include_post)
-#line 556 "mn-gmail-mailbox.c"
+#line 592 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::get_substring"
-#line 251 "mn-gmail-mailbox.gob"
+#line 288 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (str != NULL, (char * )0);
-#line 251 "mn-gmail-mailbox.gob"
+#line 288 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (pre != NULL, (char * )0);
-#line 251 "mn-gmail-mailbox.gob"
+#line 288 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (post != NULL, (char * )0);
-#line 565 "mn-gmail-mailbox.c"
+#line 601 "mn-gmail-mailbox.c"
 {
-#line 257 "mn-gmail-mailbox.gob"
+#line 294 "mn-gmail-mailbox.gob"
 	
     char *sub = NULL;
     char *pre_loc;
@@ -587,28 +623,28 @@ mn_gmail_mailbox_get_substring (const char * str, const char * pre, const char *
     
     return sub;
   }}
-#line 591 "mn-gmail-mailbox.c"
+#line 627 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 281 "mn-gmail-mailbox.gob"
+#line 318 "mn-gmail-mailbox.gob"
 static gboolean 
 mn_gmail_mailbox_login (MNGmailMailbox * self, SoupSession * session, gboolean * authentication_failed, GError ** err)
-#line 597 "mn-gmail-mailbox.c"
+#line 633 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::login"
-#line 281 "mn-gmail-mailbox.gob"
+#line 318 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (self != NULL, (gboolean )0);
-#line 281 "mn-gmail-mailbox.gob"
+#line 318 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (MN_IS_GMAIL_MAILBOX (self), (gboolean )0);
-#line 281 "mn-gmail-mailbox.gob"
+#line 318 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (gboolean )0);
-#line 281 "mn-gmail-mailbox.gob"
+#line 318 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (SOUP_IS_SESSION (session), (gboolean )0);
-#line 281 "mn-gmail-mailbox.gob"
+#line 318 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (authentication_failed != NULL, (gboolean )0);
-#line 610 "mn-gmail-mailbox.c"
+#line 646 "mn-gmail-mailbox.c"
 {
-#line 286 "mn-gmail-mailbox.gob"
+#line 323 "mn-gmail-mailbox.gob"
 	
     char *text_uri;
     char *escaped_username;
@@ -702,26 +738,26 @@ mn_gmail_mailbox_login (MNGmailMailbox * self, SoupSession * session, gboolean *
     g_set_error(err, 0, 0, _("login failed"));
     return FALSE;
   }}
-#line 706 "mn-gmail-mailbox.c"
+#line 742 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 380 "mn-gmail-mailbox.gob"
+#line 417 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_update_cookies (MNGmailMailbox * self, SoupMessage * message)
-#line 712 "mn-gmail-mailbox.c"
+#line 748 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::update_cookies"
-#line 380 "mn-gmail-mailbox.gob"
+#line 417 "mn-gmail-mailbox.gob"
 	g_return_if_fail (self != NULL);
-#line 380 "mn-gmail-mailbox.gob"
+#line 417 "mn-gmail-mailbox.gob"
 	g_return_if_fail (MN_IS_GMAIL_MAILBOX (self));
-#line 380 "mn-gmail-mailbox.gob"
+#line 417 "mn-gmail-mailbox.gob"
 	g_return_if_fail (message != NULL);
-#line 380 "mn-gmail-mailbox.gob"
+#line 417 "mn-gmail-mailbox.gob"
 	g_return_if_fail (SOUP_IS_MESSAGE (message));
-#line 723 "mn-gmail-mailbox.c"
+#line 759 "mn-gmail-mailbox.c"
 {
-#line 382 "mn-gmail-mailbox.gob"
+#line 419 "mn-gmail-mailbox.gob"
 	
     const GSList *set_cookie_headers;
     const GSList *l;
@@ -750,22 +786,22 @@ mn_gmail_mailbox_update_cookies (MNGmailMailbox * self, SoupMessage * message)
 	  }
       }
   }}
-#line 754 "mn-gmail-mailbox.c"
+#line 790 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 411 "mn-gmail-mailbox.gob"
+#line 448 "mn-gmail-mailbox.gob"
 static char * 
 mn_gmail_mailbox_build_cookie (MNGmailMailbox * self)
-#line 760 "mn-gmail-mailbox.c"
+#line 796 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::build_cookie"
-#line 411 "mn-gmail-mailbox.gob"
+#line 448 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (self != NULL, (char * )0);
-#line 411 "mn-gmail-mailbox.gob"
+#line 448 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (MN_IS_GMAIL_MAILBOX (self), (char * )0);
-#line 767 "mn-gmail-mailbox.c"
+#line 803 "mn-gmail-mailbox.c"
 {
-#line 413 "mn-gmail-mailbox.gob"
+#line 450 "mn-gmail-mailbox.gob"
 	
     GString *cookie;
     char *str;
@@ -783,17 +819,17 @@ mn_gmail_mailbox_build_cookie (MNGmailMailbox * self)
 
     return str;
   }}
-#line 787 "mn-gmail-mailbox.c"
+#line 823 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 431 "mn-gmail-mailbox.gob"
+#line 468 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_build_cookie_cb (gpointer key, gpointer value, gpointer user_data)
-#line 793 "mn-gmail-mailbox.c"
+#line 829 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::build_cookie_cb"
 {
-#line 433 "mn-gmail-mailbox.gob"
+#line 470 "mn-gmail-mailbox.gob"
 	
     GString *cookie = user_data;
 
@@ -802,26 +838,26 @@ mn_gmail_mailbox_build_cookie_cb (gpointer key, gpointer value, gpointer user_da
 
     g_string_append_printf(cookie, "%s=%s", (const char *) key, (const char *) value);
   }}
-#line 806 "mn-gmail-mailbox.c"
+#line 842 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 442 "mn-gmail-mailbox.gob"
+#line 479 "mn-gmail-mailbox.gob"
 static gboolean 
 mn_gmail_mailbox_check (MNGmailMailbox * self, SoupSession * session, GError ** err)
-#line 812 "mn-gmail-mailbox.c"
+#line 848 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::check"
-#line 442 "mn-gmail-mailbox.gob"
+#line 479 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (self != NULL, (gboolean )0);
-#line 442 "mn-gmail-mailbox.gob"
+#line 479 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (MN_IS_GMAIL_MAILBOX (self), (gboolean )0);
-#line 442 "mn-gmail-mailbox.gob"
+#line 479 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (gboolean )0);
-#line 442 "mn-gmail-mailbox.gob"
+#line 479 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (SOUP_IS_SESSION (session), (gboolean )0);
-#line 823 "mn-gmail-mailbox.c"
+#line 859 "mn-gmail-mailbox.c"
 {
-#line 444 "mn-gmail-mailbox.gob"
+#line 481 "mn-gmail-mailbox.gob"
 	
     char *body;
     char *work;
@@ -874,26 +910,26 @@ mn_gmail_mailbox_check (MNGmailMailbox * self, SoupSession * session, GError ** 
 
     return status;
   }}
-#line 878 "mn-gmail-mailbox.c"
+#line 914 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 497 "mn-gmail-mailbox.gob"
+#line 534 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_append_message (MNGmailMailbox * self, GSList ** messages, JSArg * arg)
-#line 884 "mn-gmail-mailbox.c"
+#line 920 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::append_message"
-#line 497 "mn-gmail-mailbox.gob"
+#line 534 "mn-gmail-mailbox.gob"
 	g_return_if_fail (self != NULL);
-#line 497 "mn-gmail-mailbox.gob"
+#line 534 "mn-gmail-mailbox.gob"
 	g_return_if_fail (MN_IS_GMAIL_MAILBOX (self));
-#line 497 "mn-gmail-mailbox.gob"
+#line 534 "mn-gmail-mailbox.gob"
 	g_return_if_fail (messages != NULL);
-#line 497 "mn-gmail-mailbox.gob"
+#line 534 "mn-gmail-mailbox.gob"
 	g_return_if_fail (arg != NULL);
-#line 895 "mn-gmail-mailbox.c"
+#line 931 "mn-gmail-mailbox.c"
 {
-#line 501 "mn-gmail-mailbox.gob"
+#line 538 "mn-gmail-mailbox.gob"
 	
     char *date_field;
     char *sender_field;
@@ -978,22 +1014,22 @@ mn_gmail_mailbox_append_message (MNGmailMailbox * self, GSList ** messages, JSAr
     g_free(from);
     g_free(expanded_subject);
   }}
-#line 982 "mn-gmail-mailbox.c"
+#line 1018 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 586 "mn-gmail-mailbox.gob"
+#line 623 "mn-gmail-mailbox.gob"
 static gboolean 
 mn_gmail_mailbox_js_get_arg_list (char ** str, GSList ** list)
-#line 988 "mn-gmail-mailbox.c"
+#line 1024 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::js_get_arg_list"
-#line 586 "mn-gmail-mailbox.gob"
+#line 623 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (str != NULL, (gboolean )0);
-#line 586 "mn-gmail-mailbox.gob"
+#line 623 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (list != NULL, (gboolean )0);
-#line 995 "mn-gmail-mailbox.c"
+#line 1031 "mn-gmail-mailbox.c"
 {
-#line 588 "mn-gmail-mailbox.gob"
+#line 625 "mn-gmail-mailbox.gob"
 	
     GSList *our_list = NULL;
     gboolean done = FALSE;
@@ -1088,17 +1124,17 @@ mn_gmail_mailbox_js_get_arg_list (char ** str, GSList ** list)
 	return FALSE;
       }
   }}
-#line 1092 "mn-gmail-mailbox.c"
+#line 1128 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 683 "mn-gmail-mailbox.gob"
+#line 720 "mn-gmail-mailbox.gob"
 static gboolean 
 mn_gmail_mailbox_js_arg_list_scan (GSList * list, ...)
-#line 1098 "mn-gmail-mailbox.c"
+#line 1134 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::js_arg_list_scan"
 {
-#line 685 "mn-gmail-mailbox.gob"
+#line 722 "mn-gmail-mailbox.gob"
 	
     va_list args;
     int position;
@@ -1146,34 +1182,34 @@ mn_gmail_mailbox_js_arg_list_scan (GSList * list, ...)
 
     return status;
   }}
-#line 1150 "mn-gmail-mailbox.c"
+#line 1186 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 733 "mn-gmail-mailbox.gob"
+#line 770 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_js_arg_list_free (GSList * list)
-#line 1156 "mn-gmail-mailbox.c"
+#line 1192 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::js_arg_list_free"
 {
-#line 735 "mn-gmail-mailbox.gob"
+#line 772 "mn-gmail-mailbox.gob"
 	
     eel_g_slist_free_deep_custom(list, (GFunc) self_js_arg_free, NULL);
   }}
-#line 1164 "mn-gmail-mailbox.c"
+#line 1200 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 739 "mn-gmail-mailbox.gob"
+#line 776 "mn-gmail-mailbox.gob"
 static JSArg * 
 mn_gmail_mailbox_js_arg_new_string (const char * string)
-#line 1170 "mn-gmail-mailbox.c"
+#line 1206 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::js_arg_new_string"
-#line 739 "mn-gmail-mailbox.gob"
+#line 776 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (string != NULL, (JSArg * )0);
-#line 1175 "mn-gmail-mailbox.c"
+#line 1211 "mn-gmail-mailbox.c"
 {
-#line 741 "mn-gmail-mailbox.gob"
+#line 778 "mn-gmail-mailbox.gob"
 	
     JSArg *arg;
 
@@ -1183,17 +1219,17 @@ mn_gmail_mailbox_js_arg_new_string (const char * string)
 
     return arg;
   }}
-#line 1187 "mn-gmail-mailbox.c"
+#line 1223 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 751 "mn-gmail-mailbox.gob"
+#line 788 "mn-gmail-mailbox.gob"
 static JSArg * 
 mn_gmail_mailbox_js_arg_new_list (GSList * list)
-#line 1193 "mn-gmail-mailbox.c"
+#line 1229 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::js_arg_new_list"
 {
-#line 753 "mn-gmail-mailbox.gob"
+#line 790 "mn-gmail-mailbox.gob"
 	
     JSArg *arg;
 
@@ -1203,20 +1239,20 @@ mn_gmail_mailbox_js_arg_new_list (GSList * list)
 
     return arg;
   }}
-#line 1207 "mn-gmail-mailbox.c"
+#line 1243 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 763 "mn-gmail-mailbox.gob"
+#line 800 "mn-gmail-mailbox.gob"
 static void 
 mn_gmail_mailbox_js_arg_free (JSArg * arg)
-#line 1213 "mn-gmail-mailbox.c"
+#line 1249 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::js_arg_free"
-#line 763 "mn-gmail-mailbox.gob"
+#line 800 "mn-gmail-mailbox.gob"
 	g_return_if_fail (arg != NULL);
-#line 1218 "mn-gmail-mailbox.c"
+#line 1254 "mn-gmail-mailbox.c"
 {
-#line 765 "mn-gmail-mailbox.gob"
+#line 802 "mn-gmail-mailbox.gob"
 	
     switch (arg->type)
       {
@@ -1234,20 +1270,20 @@ mn_gmail_mailbox_js_arg_free (JSArg * arg)
 
     g_free(arg);
   }}
-#line 1238 "mn-gmail-mailbox.c"
+#line 1274 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 783 "mn-gmail-mailbox.gob"
+#line 820 "mn-gmail-mailbox.gob"
 static time_t 
 mn_gmail_mailbox_parse_date (const char * date)
-#line 1244 "mn-gmail-mailbox.c"
+#line 1280 "mn-gmail-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Gmail:Mailbox::parse_date"
-#line 783 "mn-gmail-mailbox.gob"
+#line 820 "mn-gmail-mailbox.gob"
 	g_return_val_if_fail (date != NULL, (time_t )0);
-#line 1249 "mn-gmail-mailbox.c"
+#line 1285 "mn-gmail-mailbox.c"
 {
-#line 785 "mn-gmail-mailbox.gob"
+#line 822 "mn-gmail-mailbox.gob"
 	
     time_t t = 0;
 #ifdef HAVE_TIMEGM
@@ -1301,5 +1337,5 @@ mn_gmail_mailbox_parse_date (const char * date)
 
     return t;
   }}
-#line 1305 "mn-gmail-mailbox.c"
+#line 1341 "mn-gmail-mailbox.c"
 #undef __GOB_FUNCTION__
diff --git a/src/mn-gmail-mailbox.gob b/src/mn-gmail-mailbox.gob
@@ -38,6 +38,7 @@ requires 2.0.10
 #include <glib/gi18n.h>
 #include <eel/eel.h>
 #include "mn-mailbox-private.h"
+#include "mn-authenticated-mailbox-private.h"
 #include "mn-util.h"
 #include "mn-stock.h"
 #include "mn-sgml-ref.h"
@@ -89,28 +90,64 @@ class MN:Gmail:Mailbox from MN:Authenticated:Mailbox
     return MN_URI_IS_GMAIL(uri);
   }
 
-  override (MN:Authenticated:Mailbox) MNAuthenticatedMailboxResult
-    impl_authenticated_check (MN:Authenticated:Mailbox *authenticated_mailbox (check null type),
-			      GError **err)
+  override (MN:Mailbox) void
+    impl_check (MN:Mailbox *mailbox (check null type))
   {
-    Self *self = SELF(authenticated_mailbox);
+    MNAuthenticatedMailbox *authenticated_mailbox = MN_AUTHENTICATED_MAILBOX(mailbox);
+    Self *self = SELF(mailbox);
     SoupSession *session;
-    gboolean authentication_failed;
-    MNAuthenticatedMailboxResult result;
+    gboolean status = TRUE;
+    GError *err = NULL;
+
+    PARENT_HANDLER(mailbox);
 
     session = mn_soup_session_sync_new();
 
     if (! selfp->logged_in)
-      selfp->logged_in = self_login(self, session, &authentication_failed, err);
+      while (TRUE)
+	{
+	  gboolean authentication_failed;
 
-    if (selfp->logged_in)
-      result = self_check(self, session, err) ? MN_AUTHENTICATED_MAILBOX_OK : MN_AUTHENTICATED_MAILBOX_ERROR_OTHER;
-    else
-      result = authentication_failed ? MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION : MN_AUTHENTICATED_MAILBOX_ERROR_OTHER;
+	  mn_authenticated_mailbox_fill_password(authenticated_mailbox);
+	  if (! authenticated_mailbox->password)
+	    break;
+	    
+	  if (self_login(self, session, &authentication_failed, &err))
+	    {
+	      selfp->logged_in = TRUE;
+	      break;
+	    }
+	  else
+	    {
+	      if (authentication_failed && ! mailbox->uri->password)
+		{
+		  mn_authenticated_mailbox_authentication_failed(authenticated_mailbox);
+		  g_clear_error(&err);
+		}
+	      else
+		{
+		  status = FALSE;
+		  break;
+		}
+	    }
+	}
+	    
+    if (selfp->logged_in && ! self_check(self, session, &err))
+      status = FALSE;
     
     g_object_unref(session);
 
-    return result;
+    GDK_THREADS_ENTER();
+
+    if (! status)
+      {
+	mn_mailbox_set_error(mailbox, "%s", err->message);
+	g_error_free(err);
+      }
+    mn_mailbox_end_check(mailbox);
+
+    gdk_flush();
+    GDK_THREADS_LEAVE();
   }
   
   private SoupUri *
diff --git a/src/mn-gmime-stream-vfs.c b/src/mn-gmime-stream-vfs.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-imap-mailbox-private.h b/src/mn-imap-mailbox-private.h
@@ -16,11 +16,11 @@ extern "C" {
 
 #line 18 "mn-imap-mailbox-private.h"
 struct _MNIMAPMailboxPrivate {
-#line 144 "mn-imap-mailbox.gob"
+#line 145 "mn-imap-mailbox.gob"
 	int removed;
-#line 146 "mn-imap-mailbox.gob"
-	MNClientSessionPrivate * idle_session;
 #line 147 "mn-imap-mailbox.gob"
+	MNClientSessionPrivate * idle_session;
+#line 148 "mn-imap-mailbox.gob"
 	GMutex * idle_session_mutex;
 #line 26 "mn-imap-mailbox-private.h"
 };
diff --git a/src/mn-imap-mailbox-properties-private.h b/src/mn-imap-mailbox-properties-private.h
@@ -16,7 +16,9 @@ struct _MNIMAPMailboxPropertiesPrivate {
 	GtkWidget * other_radio;
 #line 69 "mn-imap-mailbox-properties.gob"
 	GtkWidget * mailbox_entry;
-#line 20 "mn-imap-mailbox-properties-private.h"
+#line 70 "mn-imap-mailbox-properties.gob"
+	GtkWidget * idle_check;
+#line 22 "mn-imap-mailbox-properties-private.h"
 };
 
 #ifdef __cplusplus
diff --git a/src/mn-imap-mailbox-properties.c b/src/mn-imap-mailbox-properties.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:09 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
@@ -73,9 +73,9 @@ static MNPIMailboxPropertiesClass *parent_class = NULL;
 static void
 ___MN_Mailbox_Properties_init (MNMailboxPropertiesIface *iface)
 {
-#line 148 "mn-imap-mailbox-properties.gob"
+#line 155 "mn-imap-mailbox-properties.gob"
 	iface->set_uri = self_set_uri;
-#line 179 "mn-imap-mailbox-properties.gob"
+#line 187 "mn-imap-mailbox-properties.gob"
 	iface->get_uri = self_get_uri;
 #line 81 "mn-imap-mailbox-properties.c"
 }
@@ -150,7 +150,7 @@ mn_imap_mailbox_properties_init (MNIMAPMailboxProperties * o G_GNUC_UNUSED)
 	o->_priv = G_TYPE_INSTANCE_GET_PRIVATE(o,TYPE_SELF,MNIMAPMailboxPropertiesPrivate);
 }
 #undef __GOB_FUNCTION__
-#line 71 "mn-imap-mailbox-properties.gob"
+#line 72 "mn-imap-mailbox-properties.gob"
 static void 
 mn_imap_mailbox_properties_class_init (MNIMAPMailboxPropertiesClass * class G_GNUC_UNUSED)
 #line 157 "mn-imap-mailbox-properties.c"
@@ -162,7 +162,7 @@ mn_imap_mailbox_properties_class_init (MNIMAPMailboxPropertiesClass * class G_GN
 
 	parent_class = g_type_class_ref (MN_TYPE_PI_MAILBOX_PROPERTIES);
 
-#line 80 "mn-imap-mailbox-properties.gob"
+#line 81 "mn-imap-mailbox-properties.gob"
 	g_object_class->constructor = ___2_mn_imap_mailbox_properties_constructor;
 #line 168 "mn-imap-mailbox-properties.c"
 	g_object_class->finalize = ___finalize;
@@ -173,7 +173,7 @@ mn_imap_mailbox_properties_class_init (MNIMAPMailboxPropertiesClass * class G_GN
 		"complete");
     }
  {
-#line 72 "mn-imap-mailbox-properties.gob"
+#line 73 "mn-imap-mailbox-properties.gob"
 
     MNPIMailboxPropertiesClass *pi_class = MN_PI_MAILBOX_PROPERTIES_CLASS(class);
 
@@ -246,7 +246,7 @@ ___object_get_property (GObject *object,
 
 
 
-#line 80 "mn-imap-mailbox-properties.gob"
+#line 81 "mn-imap-mailbox-properties.gob"
 static GObject * 
 ___2_mn_imap_mailbox_properties_constructor (GType type G_GNUC_UNUSED, guint n_construct_properties, GObjectConstructParam * construct_params)
 #line 253 "mn-imap-mailbox-properties.c"
@@ -257,7 +257,7 @@ ___2_mn_imap_mailbox_properties_constructor (GType type G_GNUC_UNUSED, guint n_c
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox:Properties::constructor"
 {
-#line 82 "mn-imap-mailbox-properties.gob"
+#line 83 "mn-imap-mailbox-properties.gob"
 	
     GObject *object;
     Self *self;
@@ -296,6 +296,11 @@ ___2_mn_imap_mailbox_properties_constructor (GType type G_GNUC_UNUSED, guint n_c
     gtk_box_pack_start(GTK_BOX(pi->details_vbox), hbox, FALSE, FALSE, 0);
     gtk_widget_show_all(hbox);
     
+    selfp->idle_check = gtk_check_button_new_with_mnemonic(_("U_se idle mode if possible"));
+    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(selfp->idle_check), TRUE);
+    gtk_box_pack_start(GTK_BOX(pi->details_vbox), selfp->idle_check, FALSE, FALSE, 0);
+    gtk_widget_show(selfp->idle_check);
+
     mn_auth_combo_box_append(MN_AUTH_COMBO_BOX(pi->auth_combo), "+LOGIN", "IMAP LOGIN");
 
     mn_gtk_tooltips_set_tips(pi->tooltips,
@@ -305,6 +310,7 @@ ___2_mn_imap_mailbox_properties_constructor (GType type G_GNUC_UNUSED, guint n_c
 			     pi->port_spin[0], _("The port number of the IMAP server"),
 			     pi->port_spin[1], _("The port number of the IMAP server"),
 			     selfp->mailbox_entry, _("The mailbox name"),
+			     selfp->idle_check, _("If possible, whether to use idle mode or not"),
 			     NULL);
 
     g_signal_connect(selfp->inbox_radio, "toggled", G_CALLBACK(self_radio_toggled_h), self);
@@ -313,51 +319,51 @@ ___2_mn_imap_mailbox_properties_constructor (GType type G_GNUC_UNUSED, guint n_c
     
     return object;
   }}
-#line 317 "mn-imap-mailbox-properties.c"
+#line 323 "mn-imap-mailbox-properties.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 138 "mn-imap-mailbox-properties.gob"
+#line 145 "mn-imap-mailbox-properties.gob"
 static void 
 mn_imap_mailbox_properties_radio_toggled_h (GtkToggleButton * togglebutton, gpointer user_data)
-#line 324 "mn-imap-mailbox-properties.c"
+#line 330 "mn-imap-mailbox-properties.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox:Properties::radio_toggled_h"
-#line 138 "mn-imap-mailbox-properties.gob"
+#line 145 "mn-imap-mailbox-properties.gob"
 	g_return_if_fail (togglebutton != NULL);
-#line 138 "mn-imap-mailbox-properties.gob"
+#line 145 "mn-imap-mailbox-properties.gob"
 	g_return_if_fail (GTK_IS_TOGGLE_BUTTON (togglebutton));
-#line 138 "mn-imap-mailbox-properties.gob"
+#line 145 "mn-imap-mailbox-properties.gob"
 	g_return_if_fail (user_data != NULL);
-#line 333 "mn-imap-mailbox-properties.c"
+#line 339 "mn-imap-mailbox-properties.c"
 {
-#line 141 "mn-imap-mailbox-properties.gob"
+#line 148 "mn-imap-mailbox-properties.gob"
 	
     Self *self = user_data;
 
     gtk_widget_set_sensitive(selfp->mailbox_entry, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(selfp->other_radio)));
     g_object_notify(G_OBJECT(self), "complete");
   }}
-#line 342 "mn-imap-mailbox-properties.c"
+#line 348 "mn-imap-mailbox-properties.c"
 #undef __GOB_FUNCTION__
 
-#line 148 "mn-imap-mailbox-properties.gob"
+#line 155 "mn-imap-mailbox-properties.gob"
 static gboolean 
 mn_imap_mailbox_properties_set_uri (MNMailboxProperties * properties, MNURI * uri)
-#line 348 "mn-imap-mailbox-properties.c"
+#line 354 "mn-imap-mailbox-properties.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox:Properties::set_uri"
-#line 148 "mn-imap-mailbox-properties.gob"
+#line 155 "mn-imap-mailbox-properties.gob"
 	g_return_val_if_fail (properties != NULL, (gboolean )0);
-#line 148 "mn-imap-mailbox-properties.gob"
+#line 155 "mn-imap-mailbox-properties.gob"
 	g_return_val_if_fail (MN_IS_MAILBOX_PROPERTIES (properties), (gboolean )0);
-#line 148 "mn-imap-mailbox-properties.gob"
+#line 155 "mn-imap-mailbox-properties.gob"
 	g_return_val_if_fail (uri != NULL, (gboolean )0);
-#line 148 "mn-imap-mailbox-properties.gob"
+#line 155 "mn-imap-mailbox-properties.gob"
 	g_return_val_if_fail (MN_IS_URI (uri), (gboolean )0);
-#line 359 "mn-imap-mailbox-properties.c"
+#line 365 "mn-imap-mailbox-properties.c"
 {
-#line 151 "mn-imap-mailbox-properties.gob"
+#line 158 "mn-imap-mailbox-properties.gob"
 	
     Self *self = SELF(properties);
     
@@ -379,28 +385,29 @@ mn_imap_mailbox_properties_set_uri (MNMailboxProperties * properties, MNURI * ur
 	    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(selfp->other_radio), TRUE);
 	    gtk_entry_set_text(GTK_ENTRY(selfp->mailbox_entry), uri->path);
 	  }
+	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(selfp->idle_check), ! mn_uri_has_query(uri, "noidle"));
 
 	return TRUE;
       }
     else
       return FALSE;
   }}
-#line 389 "mn-imap-mailbox-properties.c"
+#line 396 "mn-imap-mailbox-properties.c"
 #undef __GOB_FUNCTION__
 
-#line 179 "mn-imap-mailbox-properties.gob"
+#line 187 "mn-imap-mailbox-properties.gob"
 static MNURI * 
 mn_imap_mailbox_properties_get_uri (MNMailboxProperties * properties)
-#line 395 "mn-imap-mailbox-properties.c"
+#line 402 "mn-imap-mailbox-properties.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox:Properties::get_uri"
-#line 179 "mn-imap-mailbox-properties.gob"
+#line 187 "mn-imap-mailbox-properties.gob"
 	g_return_val_if_fail (properties != NULL, (MNURI * )0);
-#line 179 "mn-imap-mailbox-properties.gob"
+#line 187 "mn-imap-mailbox-properties.gob"
 	g_return_val_if_fail (MN_IS_MAILBOX_PROPERTIES (properties), (MNURI * )0);
-#line 402 "mn-imap-mailbox-properties.c"
+#line 409 "mn-imap-mailbox-properties.c"
 {
-#line 181 "mn-imap-mailbox-properties.gob"
+#line 189 "mn-imap-mailbox-properties.gob"
 	
     Self *self = SELF(properties);
     gboolean ssl;
@@ -411,6 +418,7 @@ mn_imap_mailbox_properties_get_uri (MNMailboxProperties * properties)
     const char *hostname;
     int port;
     const char *mailbox = NULL;
+    gboolean noidle;
     MNURI *uri;
 
     mn_pi_mailbox_properties_get_contents(MN_PI_MAILBOX_PROPERTIES(properties),
@@ -425,11 +433,12 @@ mn_imap_mailbox_properties_get_uri (MNMailboxProperties * properties)
     mailbox = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(selfp->inbox_radio))
       ? "INBOX"
       : gtk_entry_get_text(GTK_ENTRY(selfp->mailbox_entry));
+    noidle = ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(selfp->idle_check));
 
-    uri = mn_uri_new_imap(ssl, inband_ssl, username, password, authmech, hostname, port, mailbox);
+    uri = mn_uri_new_imap(ssl, inband_ssl, username, password, authmech, hostname, port, mailbox, noidle);
     g_free(authmech);
 
     return uri;
   }}
-#line 435 "mn-imap-mailbox-properties.c"
+#line 444 "mn-imap-mailbox-properties.c"
 #undef __GOB_FUNCTION__
diff --git a/src/mn-imap-mailbox-properties.gob b/src/mn-imap-mailbox-properties.gob
@@ -67,6 +67,7 @@ class MN:IMAP:Mailbox:Properties from MN:PI:Mailbox:Properties (interface MN:Mai
   private GtkWidget *inbox_radio;
   private GtkWidget *other_radio;
   private GtkWidget *mailbox_entry;
+  private GtkWidget *idle_check;
 
   class_init (class)
   {
@@ -117,6 +118,11 @@ class MN:IMAP:Mailbox:Properties from MN:PI:Mailbox:Properties (interface MN:Mai
     gtk_box_pack_start(GTK_BOX(pi->details_vbox), hbox, FALSE, FALSE, 0);
     gtk_widget_show_all(hbox);
     
+    selfp->idle_check = gtk_check_button_new_with_mnemonic(_("U_se idle mode if possible"));
+    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(selfp->idle_check), TRUE);
+    gtk_box_pack_start(GTK_BOX(pi->details_vbox), selfp->idle_check, FALSE, FALSE, 0);
+    gtk_widget_show(selfp->idle_check);
+
     mn_auth_combo_box_append(MN_AUTH_COMBO_BOX(pi->auth_combo), "+LOGIN", "IMAP LOGIN");
 
     mn_gtk_tooltips_set_tips(pi->tooltips,
@@ -126,6 +132,7 @@ class MN:IMAP:Mailbox:Properties from MN:PI:Mailbox:Properties (interface MN:Mai
 			     pi->port_spin[0], _("The port number of the IMAP server"),
 			     pi->port_spin[1], _("The port number of the IMAP server"),
 			     selfp->mailbox_entry, _("The mailbox name"),
+			     selfp->idle_check, _("If possible, whether to use idle mode or not"),
 			     NULL);
 
     g_signal_connect(selfp->inbox_radio, "toggled", G_CALLBACK(self_radio_toggled_h), self);
@@ -169,6 +176,7 @@ class MN:IMAP:Mailbox:Properties from MN:PI:Mailbox:Properties (interface MN:Mai
 	    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(selfp->other_radio), TRUE);
 	    gtk_entry_set_text(GTK_ENTRY(selfp->mailbox_entry), uri->path);
 	  }
+	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(selfp->idle_check), ! mn_uri_has_query(uri, "noidle"));
 
 	return TRUE;
       }
@@ -188,6 +196,7 @@ class MN:IMAP:Mailbox:Properties from MN:PI:Mailbox:Properties (interface MN:Mai
     const char *hostname;
     int port;
     const char *mailbox = NULL;
+    gboolean noidle;
     MNURI *uri;
 
     mn_pi_mailbox_properties_get_contents(MN_PI_MAILBOX_PROPERTIES(properties),
@@ -202,8 +211,9 @@ class MN:IMAP:Mailbox:Properties from MN:PI:Mailbox:Properties (interface MN:Mai
     mailbox = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(selfp->inbox_radio))
       ? "INBOX"
       : gtk_entry_get_text(GTK_ENTRY(selfp->mailbox_entry));
+    noidle = ! gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(selfp->idle_check));
 
-    uri = mn_uri_new_imap(ssl, inband_ssl, username, password, authmech, hostname, port, mailbox);
+    uri = mn_uri_new_imap(ssl, inband_ssl, username, password, authmech, hostname, port, mailbox, noidle);
     g_free(authmech);
 
     return uri;
diff --git a/src/mn-imap-mailbox.c b/src/mn-imap-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:09 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
@@ -32,6 +32,7 @@
 #include <libgnomevfs/gnome-vfs-utils.h>
 #include <eel/eel.h>
 #include "mn-mailbox-private.h"
+#include "mn-authenticated-mailbox-private.h"
 #include "mn-util.h"
 #ifdef WITH_MIME
 #include "mn-message-mime.h"
@@ -84,38 +85,38 @@
 
   struct _MNClientSessionPrivate
   {
-    MNMailbox		*mailbox;
-    MNIMAPMailbox	*self;
-    MNClientSession	*session;
+    MNMailbox			*mailbox;
+    MNAuthenticatedMailbox	*authenticated_mailbox;
+    MNIMAPMailbox		*self;
+    MNClientSession		*session;
 
-    int			numeric_tag;
-    char		tag[5];
+    int				numeric_tag;
+    char			tag[5];
 
-    char		**capabilities;
-    GSList		*auth_mechanisms;
-    gboolean		authenticated;
-    gboolean		authentication_failed;
+    char			**capabilities;
+    GSList			*auth_mechanisms;
+    gboolean			authenticated;
 
-    gboolean		search_received;
-    GSList		*fetch_numbers;
-    char		*fetch_set;
+    gboolean			search_received;
+    GSList			*fetch_numbers;
+    char			*fetch_set;
 
 #ifdef WITH_MIME
-    GSList		*received_numbers;
-    GSList		*messages;
+    GSList			*received_numbers;
+    GSList			*messages;
 #else /* WITH_MIME */
-    gboolean		status_received;
+    gboolean			status_received;
 #endif
 
 #ifdef WITH_SSL
-    gboolean		starttls_completed;
+    gboolean			starttls_completed;
 #endif
 #ifdef WITH_SASL
-    const char		*sasl_mechanism;
+    const char			*sasl_mechanism;
 #endif
 
-    IdleState		idle_state;
-    gboolean		could_idle;	/* could idle at least once */
+    IdleState			idle_state;
+    gboolean			could_idle;	/* could idle at least once */
   };
   
   struct _MNClientSessionResponse
@@ -127,7 +128,7 @@
     char		*arguments;
   };
 
-#line 131 "mn-imap-mailbox.c"
+#line 132 "mn-imap-mailbox.c"
 /* self casting macros */
 #define SELF(x) MN_IMAP_MAILBOX(x)
 #define SELF_CONST(x) MN_IMAP_MAILBOX_CONST(x)
@@ -152,6 +153,8 @@ static int mn_imap_mailbox_enter_capability_cb (MNClientSession * session, MNCli
 static int mn_imap_mailbox_handle_capability_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_imap_mailbox_enter_starttls_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_imap_mailbox_handle_starttls_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
+static const char * mn_imap_mailbox_sasl_get_username_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
+static const char * mn_imap_mailbox_sasl_get_password_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_imap_mailbox_enter_authenticate_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_imap_mailbox_handle_authenticate_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_imap_mailbox_enter_login_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
@@ -168,7 +171,7 @@ static int mn_imap_mailbox_enter_status_cb (MNClientSession * session, MNClientS
 static int mn_imap_mailbox_handle_status_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_imap_mailbox_enter_logout_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_imap_mailbox_handle_logout_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
-static MNAuthenticatedMailboxResult ___1a_mn_imap_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authenticated_mailbox, GError ** err) G_GNUC_UNUSED;
+static void ___1c_mn_imap_mailbox_impl_check (MNMailbox * mailbox) G_GNUC_UNUSED;
 static void mn_imap_mailbox_notice_cb (MNClientSession * session, const char * str, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static MNClientSessionResponse * mn_imap_mailbox_response_new_cb (MNClientSession * session, const char * input, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static void mn_imap_mailbox_response_free_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
@@ -177,12 +180,12 @@ static void mn_imap_mailbox_pre_read_cb (MNClientSession * session, MNClientSess
 static void mn_imap_mailbox_post_read_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static void mn_imap_mailbox_session_set_error_from_arguments (MNClientSessionPrivate * priv, MNClientSessionResponse * response) G_GNUC_UNUSED;
 static int mn_imap_mailbox_session_write (MNClientSessionPrivate * priv, const char * format, ...) G_GNUC_UNUSED;
-static void mn_imap_mailbox_handle_capability_code (MNClientSessionPrivate * priv, MNClientSessionResponse * response) G_GNUC_UNUSED;
+static gboolean mn_imap_mailbox_handle_capability_code (MNClientSessionPrivate * priv, MNClientSessionResponse * response) G_GNUC_UNUSED;
 static void mn_imap_mailbox_session_parse_capabilities (MNClientSessionPrivate * priv, const char * capabilities) G_GNUC_UNUSED;
 static gboolean mn_imap_mailbox_session_has_capability (MNClientSessionPrivate * priv, const char * capability) G_GNUC_UNUSED;
 static int mn_imap_mailbox_session_after_capability (MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_imap_mailbox_session_authenticate (MNClientSessionPrivate * priv) G_GNUC_UNUSED;
-static int mn_imap_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv) G_GNUC_UNUSED;
+static int mn_imap_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv, gboolean tried_login) G_GNUC_UNUSED;
 static int mn_imap_mailbox_session_check_mail (MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static char * mn_imap_mailbox_quote (const char * str) G_GNUC_UNUSED;
 
@@ -195,6 +198,8 @@ static MNAuthenticatedMailboxClass *parent_class = NULL;
 #define self_handle_capability_cb mn_imap_mailbox_handle_capability_cb
 #define self_enter_starttls_cb mn_imap_mailbox_enter_starttls_cb
 #define self_handle_starttls_cb mn_imap_mailbox_handle_starttls_cb
+#define self_sasl_get_username_cb mn_imap_mailbox_sasl_get_username_cb
+#define self_sasl_get_password_cb mn_imap_mailbox_sasl_get_password_cb
 #define self_enter_authenticate_cb mn_imap_mailbox_enter_authenticate_cb
 #define self_handle_authenticate_cb mn_imap_mailbox_handle_authenticate_cb
 #define self_enter_login_cb mn_imap_mailbox_enter_login_cb
@@ -278,9 +283,9 @@ ___finalize(GObject *obj_self)
 	gpointer priv G_GNUC_UNUSED = self->_priv;
 	if(G_OBJECT_CLASS(parent_class)->finalize) \
 		(* G_OBJECT_CLASS(parent_class)->finalize)(obj_self);
-#line 147 "mn-imap-mailbox.gob"
+#line 148 "mn-imap-mailbox.gob"
 	if(self->_priv->idle_session_mutex) { g_mutex_free ((gpointer) self->_priv->idle_session_mutex); self->_priv->idle_session_mutex = NULL; }
-#line 284 "mn-imap-mailbox.c"
+#line 289 "mn-imap-mailbox.c"
 }
 #undef __GOB_FUNCTION__
 
@@ -289,51 +294,50 @@ mn_imap_mailbox_init (MNIMAPMailbox * o G_GNUC_UNUSED)
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::init"
 	o->_priv = G_TYPE_INSTANCE_GET_PRIVATE(o,TYPE_SELF,MNIMAPMailboxPrivate);
-#line 147 "mn-imap-mailbox.gob"
+#line 148 "mn-imap-mailbox.gob"
 	o->_priv->idle_session_mutex = g_mutex_new();
-#line 295 "mn-imap-mailbox.c"
+#line 300 "mn-imap-mailbox.c"
 }
 #undef __GOB_FUNCTION__
-#line 149 "mn-imap-mailbox.gob"
+#line 150 "mn-imap-mailbox.gob"
 static void 
 mn_imap_mailbox_class_init (MNIMAPMailboxClass * class G_GNUC_UNUSED)
-#line 301 "mn-imap-mailbox.c"
+#line 306 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::class_init"
 	GObjectClass *g_object_class G_GNUC_UNUSED = (GObjectClass*) class;
 	MNMailboxClass *mn_mailbox_class = (MNMailboxClass *)class;
-	MNAuthenticatedMailboxClass *mn_authenticated_mailbox_class = (MNAuthenticatedMailboxClass *)class;
 
 	g_type_class_add_private(class,sizeof(MNIMAPMailboxPrivate));
 
 	parent_class = g_type_class_ref (MN_TYPE_AUTHENTICATED_MAILBOX);
 
-#line 154 "mn-imap-mailbox.gob"
+#line 155 "mn-imap-mailbox.gob"
 	g_object_class->constructor = ___2_mn_imap_mailbox_constructor;
-#line 171 "mn-imap-mailbox.gob"
+#line 172 "mn-imap-mailbox.gob"
 	mn_mailbox_class->impl_is = ___3_mn_imap_mailbox_impl_is;
-#line 177 "mn-imap-mailbox.gob"
+#line 178 "mn-imap-mailbox.gob"
 	mn_mailbox_class->removed = ___4_mn_imap_mailbox_removed;
-#line 845 "mn-imap-mailbox.gob"
-	mn_authenticated_mailbox_class->impl_authenticated_check = ___1a_mn_imap_mailbox_impl_authenticated_check;
-#line 320 "mn-imap-mailbox.c"
+#line 878 "mn-imap-mailbox.gob"
+	mn_mailbox_class->impl_check = ___1c_mn_imap_mailbox_impl_check;
+#line 324 "mn-imap-mailbox.c"
 	g_object_class->finalize = ___finalize;
  {
-#line 150 "mn-imap-mailbox.gob"
+#line 151 "mn-imap-mailbox.gob"
 
     MN_MAILBOX_CLASS(class)->format = "IMAP";
   
-#line 327 "mn-imap-mailbox.c"
+#line 331 "mn-imap-mailbox.c"
  }
 }
 #undef __GOB_FUNCTION__
 
 
 
-#line 154 "mn-imap-mailbox.gob"
+#line 155 "mn-imap-mailbox.gob"
 static GObject * 
 ___2_mn_imap_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_properties, GObjectConstructParam * construct_params)
-#line 337 "mn-imap-mailbox.c"
+#line 341 "mn-imap-mailbox.c"
 #define PARENT_HANDLER(___type,___n_construct_properties,___construct_params) \
 	((G_OBJECT_CLASS(parent_class)->constructor)? \
 		(* G_OBJECT_CLASS(parent_class)->constructor)(___type,___n_construct_properties,___construct_params): \
@@ -341,7 +345,7 @@ ___2_mn_imap_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_pr
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::constructor"
 {
-#line 156 "mn-imap-mailbox.gob"
+#line 157 "mn-imap-mailbox.gob"
 	
     GObject *object;
     MNMailbox *mailbox;
@@ -356,50 +360,50 @@ ___2_mn_imap_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_pr
 
     return object;
   }}
-#line 360 "mn-imap-mailbox.c"
+#line 364 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 171 "mn-imap-mailbox.gob"
+#line 172 "mn-imap-mailbox.gob"
 static gboolean 
 ___3_mn_imap_mailbox_impl_is (MNMailbox * dummy G_GNUC_UNUSED, MNURI * uri)
-#line 367 "mn-imap-mailbox.c"
+#line 371 "mn-imap-mailbox.c"
 #define PARENT_HANDLER(___dummy,___uri) \
 	((MN_MAILBOX_CLASS(parent_class)->impl_is)? \
 		(* MN_MAILBOX_CLASS(parent_class)->impl_is)(___dummy,___uri): \
 		((gboolean )0))
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::impl_is"
-#line 171 "mn-imap-mailbox.gob"
+#line 172 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (uri != NULL, (gboolean )0);
-#line 171 "mn-imap-mailbox.gob"
+#line 172 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (MN_IS_URI (uri), (gboolean )0);
-#line 378 "mn-imap-mailbox.c"
+#line 382 "mn-imap-mailbox.c"
 {
-#line 173 "mn-imap-mailbox.gob"
+#line 174 "mn-imap-mailbox.gob"
 	
     return MN_URI_IS_IMAP(uri);
   }}
-#line 384 "mn-imap-mailbox.c"
+#line 388 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 177 "mn-imap-mailbox.gob"
+#line 178 "mn-imap-mailbox.gob"
 static void 
 ___4_mn_imap_mailbox_removed (MNMailbox * mailbox G_GNUC_UNUSED)
-#line 391 "mn-imap-mailbox.c"
+#line 395 "mn-imap-mailbox.c"
 #define PARENT_HANDLER(___mailbox) \
 	{ if(MN_MAILBOX_CLASS(parent_class)->removed) \
 		(* MN_MAILBOX_CLASS(parent_class)->removed)(___mailbox); }
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::removed"
-#line 177 "mn-imap-mailbox.gob"
+#line 178 "mn-imap-mailbox.gob"
 	g_return_if_fail (mailbox != NULL);
-#line 177 "mn-imap-mailbox.gob"
+#line 178 "mn-imap-mailbox.gob"
 	g_return_if_fail (MN_IS_MAILBOX (mailbox));
-#line 401 "mn-imap-mailbox.c"
+#line 405 "mn-imap-mailbox.c"
 {
-#line 179 "mn-imap-mailbox.gob"
+#line 180 "mn-imap-mailbox.gob"
 	
     Self *self = SELF(mailbox);
 
@@ -415,25 +419,25 @@ ___4_mn_imap_mailbox_removed (MNMailbox * mailbox G_GNUC_UNUSED)
 
     PARENT_HANDLER(mailbox);
   }}
-#line 419 "mn-imap-mailbox.c"
+#line 423 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 195 "mn-imap-mailbox.gob"
+#line 196 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_greeting_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 426 "mn-imap-mailbox.c"
+#line 430 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_greeting_cb"
-#line 195 "mn-imap-mailbox.gob"
+#line 196 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 195 "mn-imap-mailbox.gob"
+#line 196 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 195 "mn-imap-mailbox.gob"
+#line 196 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 435 "mn-imap-mailbox.c"
+#line 439 "mn-imap-mailbox.c"
 {
-#line 199 "mn-imap-mailbox.gob"
+#line 200 "mn-imap-mailbox.gob"
 	
     priv->session = session;
 
@@ -441,58 +445,59 @@ mn_imap_mailbox_handle_greeting_cb (MNClientSession * session, MNClientSessionRe
       return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
     else if (! response->tag && IS_OK(response))
       {
-	self_handle_capability_code(priv, response);
-	return priv->capabilities
+	return self_handle_capability_code(priv, response)
 	  ? self_session_after_capability(priv)
 	  : STATE_CAPABILITY;
       }
     else if (! response->tag && IS(response, "PREAUTH"))
       {
-	self_handle_capability_code(priv, response);
-	return self_session_check_mail(priv);
+	priv->authenticated = TRUE;
+	return self_handle_capability_code(priv, response)
+	  ? self_session_after_capability(priv)
+	  : STATE_CAPABILITY;
       }
     else if (! response->tag && IS_BYE(response))
       return RESULT_ERROR_END;
     else
       return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
   }}
-#line 460 "mn-imap-mailbox.c"
+#line 465 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 222 "mn-imap-mailbox.gob"
+#line 224 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_capability_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 466 "mn-imap-mailbox.c"
+#line 471 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_capability_cb"
-#line 222 "mn-imap-mailbox.gob"
+#line 224 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 222 "mn-imap-mailbox.gob"
+#line 224 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 473 "mn-imap-mailbox.c"
+#line 478 "mn-imap-mailbox.c"
 {
-#line 225 "mn-imap-mailbox.gob"
+#line 227 "mn-imap-mailbox.gob"
 	
     return self_session_write(priv, "CAPABILITY");
   }}
-#line 479 "mn-imap-mailbox.c"
+#line 484 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 229 "mn-imap-mailbox.gob"
+#line 231 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_capability_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 485 "mn-imap-mailbox.c"
+#line 490 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_capability_cb"
-#line 229 "mn-imap-mailbox.gob"
+#line 231 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 229 "mn-imap-mailbox.gob"
+#line 231 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 229 "mn-imap-mailbox.gob"
+#line 231 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 494 "mn-imap-mailbox.c"
+#line 499 "mn-imap-mailbox.c"
 {
-#line 233 "mn-imap-mailbox.gob"
+#line 235 "mn-imap-mailbox.gob"
 	
     if (response->continuation)
       return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
@@ -520,22 +525,22 @@ mn_imap_mailbox_handle_capability_cb (MNClientSession * session, MNClientSession
     
     return RESULT_DEFAULT_HANDLER;
   }}
-#line 524 "mn-imap-mailbox.c"
+#line 529 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 261 "mn-imap-mailbox.gob"
+#line 263 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_starttls_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 530 "mn-imap-mailbox.c"
+#line 535 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_starttls_cb"
-#line 261 "mn-imap-mailbox.gob"
+#line 263 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 261 "mn-imap-mailbox.gob"
+#line 263 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 537 "mn-imap-mailbox.c"
+#line 542 "mn-imap-mailbox.c"
 {
-#line 264 "mn-imap-mailbox.gob"
+#line 266 "mn-imap-mailbox.gob"
 	
 #ifdef WITH_SSL
     return self_session_write(priv, "STARTTLS");
@@ -543,24 +548,24 @@ mn_imap_mailbox_enter_starttls_cb (MNClientSession * session, MNClientSessionPri
     g_return_val_if_reached(0);
 #endif /* WITH_SSL */
   }}
-#line 547 "mn-imap-mailbox.c"
+#line 552 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 272 "mn-imap-mailbox.gob"
+#line 274 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_starttls_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 553 "mn-imap-mailbox.c"
+#line 558 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_starttls_cb"
-#line 272 "mn-imap-mailbox.gob"
+#line 274 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 272 "mn-imap-mailbox.gob"
+#line 274 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 272 "mn-imap-mailbox.gob"
+#line 274 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 562 "mn-imap-mailbox.c"
+#line 567 "mn-imap-mailbox.c"
 {
-#line 276 "mn-imap-mailbox.gob"
+#line 278 "mn-imap-mailbox.gob"
 	
 #ifdef WITH_SSL
     if (response->continuation)
@@ -588,60 +593,109 @@ mn_imap_mailbox_handle_starttls_cb (MNClientSession * session, MNClientSessionRe
     g_return_val_if_reached(0);
 #endif /* WITH_SSL */
   }}
-#line 592 "mn-imap-mailbox.c"
+#line 597 "mn-imap-mailbox.c"
+#undef __GOB_FUNCTION__
+
+#line 306 "mn-imap-mailbox.gob"
+static const char * 
+mn_imap_mailbox_sasl_get_username_cb (MNClientSession * session, MNClientSessionPrivate * priv)
+#line 603 "mn-imap-mailbox.c"
+{
+#define __GOB_FUNCTION__ "MN:IMAP:Mailbox::sasl_get_username_cb"
+#line 306 "mn-imap-mailbox.gob"
+	g_return_val_if_fail (session != NULL, (const char * )0);
+#line 306 "mn-imap-mailbox.gob"
+	g_return_val_if_fail (priv != NULL, (const char * )0);
+#line 610 "mn-imap-mailbox.c"
+{
+#line 309 "mn-imap-mailbox.gob"
+	
+#ifdef WITH_SASL
+    return priv->mailbox->uri->username;
+#else
+    g_return_val_if_reached(NULL);
+#endif /* WITH_SASL */
+  }}
+#line 620 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 304 "mn-imap-mailbox.gob"
+#line 317 "mn-imap-mailbox.gob"
+static const char * 
+mn_imap_mailbox_sasl_get_password_cb (MNClientSession * session, MNClientSessionPrivate * priv)
+#line 626 "mn-imap-mailbox.c"
+{
+#define __GOB_FUNCTION__ "MN:IMAP:Mailbox::sasl_get_password_cb"
+#line 317 "mn-imap-mailbox.gob"
+	g_return_val_if_fail (session != NULL, (const char * )0);
+#line 317 "mn-imap-mailbox.gob"
+	g_return_val_if_fail (priv != NULL, (const char * )0);
+#line 633 "mn-imap-mailbox.c"
+{
+#line 320 "mn-imap-mailbox.gob"
+	
+#ifdef WITH_SASL
+    mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+    return priv->authenticated_mailbox->password;
+#else
+    g_return_val_if_reached(NULL);
+#endif /* WITH_SASL */
+  }}
+#line 644 "mn-imap-mailbox.c"
+#undef __GOB_FUNCTION__
+
+#line 329 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_authenticate_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 598 "mn-imap-mailbox.c"
+#line 650 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_authenticate_cb"
-#line 304 "mn-imap-mailbox.gob"
+#line 329 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 304 "mn-imap-mailbox.gob"
+#line 329 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 605 "mn-imap-mailbox.c"
+#line 657 "mn-imap-mailbox.c"
 {
-#line 307 "mn-imap-mailbox.gob"
+#line 332 "mn-imap-mailbox.gob"
 	
 #ifdef WITH_SASL
-    /*
-     * RFC 3501 6.2.2 specifies that the IMAP protocol does not
-     * support the "initial response" feature of SASL, so we set the
-     * initial_response argument to FALSE.
-     */
     if (mn_client_session_sasl_authentication_start(priv->session,
 						    "imap",
 						    priv->auth_mechanisms,
 						    priv->mailbox->uri->authmech,
 						    &priv->sasl_mechanism,
-						    FALSE))
+						    FALSE /* [1] */))
       return self_session_write(priv, "AUTHENTICATE %s", priv->sasl_mechanism);
     else
-      return self_session_authenticate_fallback(priv);
+      return priv->authenticated_mailbox->cancelled
+	? STATE_LOGOUT
+	: self_session_authenticate_fallback(priv, FALSE);
+
+    /*
+     * [1] RFC 3501 6.2.2 specifies that the IMAP protocol does not
+     * support the initial client response feature of SASL.
+     */
 #else
     g_return_val_if_reached(0);
 #endif /* WITH_SASL */
   }}
-#line 628 "mn-imap-mailbox.c"
+#line 682 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 328 "mn-imap-mailbox.gob"
+#line 355 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_authenticate_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 634 "mn-imap-mailbox.c"
+#line 688 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_authenticate_cb"
-#line 328 "mn-imap-mailbox.gob"
+#line 355 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 328 "mn-imap-mailbox.gob"
+#line 355 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 328 "mn-imap-mailbox.gob"
+#line 355 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 643 "mn-imap-mailbox.c"
+#line 697 "mn-imap-mailbox.c"
 {
-#line 332 "mn-imap-mailbox.gob"
+#line 359 "mn-imap-mailbox.gob"
 	
 #ifdef WITH_SASL
     if (response->tag)
@@ -653,7 +707,6 @@ mn_imap_mailbox_handle_authenticate_cb (MNClientSession * session, MNClientSessi
 		if (mn_client_session_sasl_authentication_done(session))
 		  {
 		    priv->authenticated = TRUE;
-		    self_handle_capability_code(priv, response);
 
 		    /*
 		     * RFC 3501 2.2.2:
@@ -672,7 +725,7 @@ mn_imap_mailbox_handle_authenticate_cb (MNClientSession * session, MNClientSessi
 		     * [SASL] requires the client to re-issue a
 		     * CAPABILITY command in this case.
 		     */
-		    return priv->capabilities && mn_client_session_sasl_get_ssf(session)
+		    return self_handle_capability_code(priv, response) && mn_client_session_sasl_get_ssf(session)
 		      ? self_session_check_mail(priv)
 		      : STATE_CAPABILITY;
 		  }
@@ -680,7 +733,9 @@ mn_imap_mailbox_handle_authenticate_cb (MNClientSession * session, MNClientSessi
 		  return MN_CLIENT_SESSION_RESULT_END;
 	      }
 	    else if (IS_NO(response) || IS_BAD(response))
-	      return self_session_authenticate_fallback(priv);
+	      return priv->authenticated_mailbox->cancelled
+		? STATE_LOGOUT
+		: self_session_authenticate_fallback(priv, FALSE);
 	    else
 	      return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
 	  }
@@ -693,22 +748,22 @@ mn_imap_mailbox_handle_authenticate_cb (MNClientSession * session, MNClientSessi
     g_return_val_if_reached(0);
 #endif /* WITH_SASL */
   }}
-#line 697 "mn-imap-mailbox.c"
+#line 752 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 384 "mn-imap-mailbox.gob"
+#line 412 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_login_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 703 "mn-imap-mailbox.c"
+#line 758 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_login_cb"
-#line 384 "mn-imap-mailbox.gob"
+#line 412 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 384 "mn-imap-mailbox.gob"
+#line 412 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 710 "mn-imap-mailbox.c"
+#line 765 "mn-imap-mailbox.c"
 {
-#line 387 "mn-imap-mailbox.gob"
+#line 415 "mn-imap-mailbox.gob"
 	
     if (self_session_has_capability(priv, "LOGINDISABLED"))
       {
@@ -722,8 +777,12 @@ mn_imap_mailbox_enter_login_cb (MNClientSession * session, MNClientSessionPrivat
 	char *quoted_password;
 	int result;
 
+	mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+	if (! priv->authenticated_mailbox->password)
+	  return STATE_LOGOUT;
+
 	quoted_username = self_quote(priv->mailbox->uri->username);
-	quoted_password = self_quote(MN_AUTHENTICATED_MAILBOX(priv->self)->password);
+	quoted_password = self_quote(priv->authenticated_mailbox->password);
 	result = self_session_write(priv, "LOGIN %s %s", quoted_username, quoted_password);
 	g_free(quoted_username);
 	g_free(quoted_password);
@@ -731,24 +790,24 @@ mn_imap_mailbox_enter_login_cb (MNClientSession * session, MNClientSessionPrivat
 	return result;
       }
   }}
-#line 735 "mn-imap-mailbox.c"
+#line 794 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 410 "mn-imap-mailbox.gob"
+#line 442 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_login_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 741 "mn-imap-mailbox.c"
+#line 800 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_login_cb"
-#line 410 "mn-imap-mailbox.gob"
+#line 442 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 410 "mn-imap-mailbox.gob"
+#line 442 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 410 "mn-imap-mailbox.gob"
+#line 442 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 750 "mn-imap-mailbox.c"
+#line 809 "mn-imap-mailbox.c"
 {
-#line 414 "mn-imap-mailbox.gob"
+#line 446 "mn-imap-mailbox.gob"
 	
     if (response->continuation)
       return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
@@ -759,16 +818,12 @@ mn_imap_mailbox_handle_login_cb (MNClientSession * session, MNClientSessionRespo
 	    if (IS_OK(response))
 	      {
 		priv->authenticated = TRUE;
-		self_handle_capability_code(priv, response);
-		return priv->capabilities
-		  ? STATE_CAPABILITY
-		  : self_session_check_mail(priv);
+		return self_handle_capability_code(priv, response)
+		  ? self_session_check_mail(priv)
+		  : STATE_CAPABILITY;
 	      }
 	    else if (IS_NO(response) || IS_BAD(response))
-	      {
-		priv->authentication_failed = TRUE;
-		return RESULT_ERROR_LOGOUT;
-	      }
+	      return self_session_authenticate_fallback(priv, TRUE);
 	    else
 	      return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
 	  }
@@ -776,22 +831,22 @@ mn_imap_mailbox_handle_login_cb (MNClientSession * session, MNClientSessionRespo
     
     return RESULT_DEFAULT_HANDLER;
   }}
-#line 780 "mn-imap-mailbox.c"
+#line 835 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 442 "mn-imap-mailbox.gob"
+#line 470 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_examine_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 786 "mn-imap-mailbox.c"
+#line 841 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_examine_cb"
-#line 442 "mn-imap-mailbox.gob"
+#line 470 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 442 "mn-imap-mailbox.gob"
+#line 470 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 793 "mn-imap-mailbox.c"
+#line 848 "mn-imap-mailbox.c"
 {
-#line 445 "mn-imap-mailbox.gob"
+#line 473 "mn-imap-mailbox.gob"
 	
     char *quoted_mailbox;
     int result;
@@ -802,24 +857,24 @@ mn_imap_mailbox_enter_examine_cb (MNClientSession * session, MNClientSessionPriv
 
     return result;
   }}
-#line 806 "mn-imap-mailbox.c"
+#line 861 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 456 "mn-imap-mailbox.gob"
+#line 484 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_examine_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 812 "mn-imap-mailbox.c"
+#line 867 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_examine_cb"
-#line 456 "mn-imap-mailbox.gob"
+#line 484 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 456 "mn-imap-mailbox.gob"
+#line 484 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 456 "mn-imap-mailbox.gob"
+#line 484 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 821 "mn-imap-mailbox.c"
+#line 876 "mn-imap-mailbox.c"
 {
-#line 460 "mn-imap-mailbox.gob"
+#line 488 "mn-imap-mailbox.gob"
 	
     if (response->continuation)
       return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
@@ -838,22 +893,22 @@ mn_imap_mailbox_handle_examine_cb (MNClientSession * session, MNClientSessionRes
 
     return RESULT_DEFAULT_HANDLER;
   }}
-#line 842 "mn-imap-mailbox.c"
+#line 897 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 479 "mn-imap-mailbox.gob"
+#line 507 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_search_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 848 "mn-imap-mailbox.c"
+#line 903 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_search_cb"
-#line 479 "mn-imap-mailbox.gob"
+#line 507 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 479 "mn-imap-mailbox.gob"
+#line 507 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 855 "mn-imap-mailbox.c"
+#line 910 "mn-imap-mailbox.c"
 {
-#line 482 "mn-imap-mailbox.gob"
+#line 510 "mn-imap-mailbox.gob"
 	
     priv->search_received = FALSE;
 
@@ -865,24 +920,24 @@ mn_imap_mailbox_enter_search_cb (MNClientSession * session, MNClientSessionPriva
     
     return self_session_write(priv, "SEARCH UNSEEN");
   }}
-#line 869 "mn-imap-mailbox.c"
+#line 924 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 494 "mn-imap-mailbox.gob"
+#line 522 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_search_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 875 "mn-imap-mailbox.c"
+#line 930 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_search_cb"
-#line 494 "mn-imap-mailbox.gob"
+#line 522 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 494 "mn-imap-mailbox.gob"
+#line 522 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 494 "mn-imap-mailbox.gob"
+#line 522 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 884 "mn-imap-mailbox.c"
+#line 939 "mn-imap-mailbox.c"
 {
-#line 498 "mn-imap-mailbox.gob"
+#line 526 "mn-imap-mailbox.gob"
 	
     if (response->continuation)
       return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
@@ -904,6 +959,11 @@ mn_imap_mailbox_handle_search_cb (MNClientSession * session, MNClientSessionResp
 			gdk_flush();
 			GDK_THREADS_LEAVE();
 
+			/*
+			 * We are here and not in STATE_STATUS because
+			 * the IDLE capability has already been
+			 * tested, so proceed.
+			 */
 			return STATE_IDLE;
 #endif /* WITH_MIME */
 		      }
@@ -917,7 +977,7 @@ mn_imap_mailbox_handle_search_cb (MNClientSession * session, MNClientSessionResp
 			gdk_flush();
 			GDK_THREADS_LEAVE();
 
-			return self_session_has_capability(priv, "IDLE")
+			return self_session_has_capability(priv, "IDLE") && ! mn_uri_has_query(priv->mailbox->uri, "noidle")
 			  ? STATE_IDLE
 			  : STATE_LOGOUT;
 		      }
@@ -964,22 +1024,22 @@ mn_imap_mailbox_handle_search_cb (MNClientSession * session, MNClientSessionResp
 
     return RESULT_DEFAULT_HANDLER;
   }}
-#line 968 "mn-imap-mailbox.c"
+#line 1028 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 580 "mn-imap-mailbox.gob"
+#line 613 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_fetch_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 974 "mn-imap-mailbox.c"
+#line 1034 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_fetch_cb"
-#line 580 "mn-imap-mailbox.gob"
+#line 613 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 580 "mn-imap-mailbox.gob"
+#line 613 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 981 "mn-imap-mailbox.c"
+#line 1041 "mn-imap-mailbox.c"
 {
-#line 583 "mn-imap-mailbox.gob"
+#line 616 "mn-imap-mailbox.gob"
 	
 #ifdef WITH_MIME
     g_return_val_if_fail(priv->fetch_set != NULL, 0);
@@ -995,24 +1055,24 @@ mn_imap_mailbox_enter_fetch_cb (MNClientSession * session, MNClientSessionPrivat
     g_return_val_if_reached(0);
 #endif
   }}
-#line 999 "mn-imap-mailbox.c"
+#line 1059 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 599 "mn-imap-mailbox.gob"
+#line 632 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_fetch_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 1005 "mn-imap-mailbox.c"
+#line 1065 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_fetch_cb"
-#line 599 "mn-imap-mailbox.gob"
+#line 632 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 599 "mn-imap-mailbox.gob"
+#line 632 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 599 "mn-imap-mailbox.gob"
+#line 632 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1014 "mn-imap-mailbox.c"
+#line 1074 "mn-imap-mailbox.c"
 {
-#line 603 "mn-imap-mailbox.gob"
+#line 636 "mn-imap-mailbox.gob"
 	
 #ifdef WITH_MIME
     if (response->continuation)
@@ -1036,7 +1096,7 @@ mn_imap_mailbox_handle_fetch_cb (MNClientSession * session, MNClientSessionRespo
 		gdk_flush();
 		GDK_THREADS_LEAVE();
 		
-		return self_session_has_capability(priv, "IDLE")
+		return self_session_has_capability(priv, "IDLE") && ! mn_uri_has_query(priv->mailbox->uri, "noidle")
 		  ? STATE_IDLE
 		  : STATE_LOGOUT;
 	      }
@@ -1088,44 +1148,44 @@ mn_imap_mailbox_handle_fetch_cb (MNClientSession * session, MNClientSessionRespo
     g_return_val_if_reached(0);
 #endif
   }}
-#line 1092 "mn-imap-mailbox.c"
+#line 1152 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 679 "mn-imap-mailbox.gob"
+#line 712 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_idle_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 1098 "mn-imap-mailbox.c"
+#line 1158 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_idle_cb"
-#line 679 "mn-imap-mailbox.gob"
+#line 712 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 679 "mn-imap-mailbox.gob"
+#line 712 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1105 "mn-imap-mailbox.c"
+#line 1165 "mn-imap-mailbox.c"
 {
-#line 682 "mn-imap-mailbox.gob"
+#line 715 "mn-imap-mailbox.gob"
 	
     priv->idle_state = IDLE_STATE_NORMAL;
     return REMOVED(priv->self) ? STATE_LOGOUT : self_session_write(priv, "IDLE");
   }}
-#line 1112 "mn-imap-mailbox.c"
+#line 1172 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 687 "mn-imap-mailbox.gob"
+#line 720 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_idle_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 1118 "mn-imap-mailbox.c"
+#line 1178 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_idle_cb"
-#line 687 "mn-imap-mailbox.gob"
+#line 720 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 687 "mn-imap-mailbox.gob"
+#line 720 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 687 "mn-imap-mailbox.gob"
+#line 720 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1127 "mn-imap-mailbox.c"
+#line 1187 "mn-imap-mailbox.c"
 {
-#line 691 "mn-imap-mailbox.gob"
+#line 724 "mn-imap-mailbox.gob"
 	
     if (priv->idle_state == IDLE_STATE_IDLING)
       {
@@ -1184,22 +1244,22 @@ mn_imap_mailbox_handle_idle_cb (MNClientSession * session, MNClientSessionRespon
 
     return RESULT_DEFAULT_HANDLER;
   }}
-#line 1188 "mn-imap-mailbox.c"
+#line 1248 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 750 "mn-imap-mailbox.gob"
+#line 783 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_status_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 1194 "mn-imap-mailbox.c"
+#line 1254 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_status_cb"
-#line 750 "mn-imap-mailbox.gob"
+#line 783 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 750 "mn-imap-mailbox.gob"
+#line 783 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1201 "mn-imap-mailbox.c"
+#line 1261 "mn-imap-mailbox.c"
 {
-#line 753 "mn-imap-mailbox.gob"
+#line 786 "mn-imap-mailbox.gob"
 	
 #ifndef WITH_MIME
     char *quoted_mailbox;
@@ -1214,24 +1274,24 @@ mn_imap_mailbox_enter_status_cb (MNClientSession * session, MNClientSessionPriva
     g_return_val_if_reached(0);
 #endif
   }}
-#line 1218 "mn-imap-mailbox.c"
+#line 1278 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 768 "mn-imap-mailbox.gob"
+#line 801 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_status_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 1224 "mn-imap-mailbox.c"
+#line 1284 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_status_cb"
-#line 768 "mn-imap-mailbox.gob"
+#line 801 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 768 "mn-imap-mailbox.gob"
+#line 801 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 768 "mn-imap-mailbox.gob"
+#line 801 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1233 "mn-imap-mailbox.c"
+#line 1293 "mn-imap-mailbox.c"
 {
-#line 772 "mn-imap-mailbox.gob"
+#line 805 "mn-imap-mailbox.gob"
 	
 #ifndef WITH_MIME
     if (response->continuation)
@@ -1277,43 +1337,43 @@ mn_imap_mailbox_handle_status_cb (MNClientSession * session, MNClientSessionResp
     g_return_val_if_reached(0);
 #endif
   }}
-#line 1281 "mn-imap-mailbox.c"
+#line 1341 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 818 "mn-imap-mailbox.gob"
+#line 851 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_enter_logout_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 1287 "mn-imap-mailbox.c"
+#line 1347 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::enter_logout_cb"
-#line 818 "mn-imap-mailbox.gob"
+#line 851 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 818 "mn-imap-mailbox.gob"
+#line 851 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1294 "mn-imap-mailbox.c"
+#line 1354 "mn-imap-mailbox.c"
 {
-#line 821 "mn-imap-mailbox.gob"
+#line 854 "mn-imap-mailbox.gob"
 	
     return self_session_write(priv, "LOGOUT");
   }}
-#line 1300 "mn-imap-mailbox.c"
+#line 1360 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 825 "mn-imap-mailbox.gob"
+#line 858 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_handle_logout_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 1306 "mn-imap-mailbox.c"
+#line 1366 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_logout_cb"
-#line 825 "mn-imap-mailbox.gob"
+#line 858 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 825 "mn-imap-mailbox.gob"
+#line 858 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 825 "mn-imap-mailbox.gob"
+#line 858 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1315 "mn-imap-mailbox.c"
+#line 1375 "mn-imap-mailbox.c"
 {
-#line 829 "mn-imap-mailbox.gob"
+#line 862 "mn-imap-mailbox.gob"
 	
     if (response->continuation)
       return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
@@ -1329,29 +1389,27 @@ mn_imap_mailbox_handle_logout_cb (MNClientSession * session, MNClientSessionResp
     else
       return MN_CLIENT_SESSION_RESULT_CONTINUE;
   }}
-#line 1333 "mn-imap-mailbox.c"
+#line 1393 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 845 "mn-imap-mailbox.gob"
-static MNAuthenticatedMailboxResult 
-___1a_mn_imap_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authenticated_mailbox G_GNUC_UNUSED, GError ** err)
-#line 1339 "mn-imap-mailbox.c"
-#define PARENT_HANDLER(___authenticated_mailbox,___err) \
-	((MN_AUTHENTICATED_MAILBOX_CLASS(parent_class)->impl_authenticated_check)? \
-		(* MN_AUTHENTICATED_MAILBOX_CLASS(parent_class)->impl_authenticated_check)(___authenticated_mailbox,___err): \
-		((MNAuthenticatedMailboxResult )0))
-{
-#define __GOB_FUNCTION__ "MN:IMAP:Mailbox::impl_authenticated_check"
-#line 845 "mn-imap-mailbox.gob"
-	g_return_val_if_fail (authenticated_mailbox != NULL, (MNAuthenticatedMailboxResult )0);
-#line 845 "mn-imap-mailbox.gob"
-	g_return_val_if_fail (MN_IS_AUTHENTICATED_MAILBOX (authenticated_mailbox), (MNAuthenticatedMailboxResult )0);
-#line 1350 "mn-imap-mailbox.c"
-{
-#line 848 "mn-imap-mailbox.gob"
+#line 878 "mn-imap-mailbox.gob"
+static void 
+___1c_mn_imap_mailbox_impl_check (MNMailbox * mailbox G_GNUC_UNUSED)
+#line 1399 "mn-imap-mailbox.c"
+#define PARENT_HANDLER(___mailbox) \
+	{ if(MN_MAILBOX_CLASS(parent_class)->impl_check) \
+		(* MN_MAILBOX_CLASS(parent_class)->impl_check)(___mailbox); }
+{
+#define __GOB_FUNCTION__ "MN:IMAP:Mailbox::impl_check"
+#line 878 "mn-imap-mailbox.gob"
+	g_return_if_fail (mailbox != NULL);
+#line 878 "mn-imap-mailbox.gob"
+	g_return_if_fail (MN_IS_MAILBOX (mailbox));
+#line 1409 "mn-imap-mailbox.c"
+{
+#line 880 "mn-imap-mailbox.gob"
 	
-    MNMailbox *mailbox = MN_MAILBOX(authenticated_mailbox);
-    Self *self = SELF(authenticated_mailbox);
+    Self *self = SELF(mailbox);
     MNClientSessionState states[] = {
       { STATE_GREETING,		NULL,				self_handle_greeting_cb },
       { STATE_CAPABILITY,	self_enter_capability_cb,	self_handle_capability_cb },
@@ -1380,15 +1438,23 @@ ___1a_mn_imap_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authent
       self_response_free_cb,
       self_custom_handler_cb,
       self_pre_read_cb,
-      self_post_read_cb
+      self_post_read_cb,
+#ifdef WITH_SASL
+      self_sasl_get_username_cb,
+      self_sasl_get_password_cb,
+#endif
     };
     MNClientSessionPrivate priv;
     gboolean status;
+    GError *err = NULL;
+
+    PARENT_HANDLER(mailbox);
 
     do
       {
 	memset(&priv, 0, sizeof(priv));
 	priv.mailbox = mailbox;
+	priv.authenticated_mailbox = MN_AUTHENTICATED_MAILBOX(mailbox);
 	priv.self = self;
     
 	status = mn_client_session_run(states,
@@ -1398,10 +1464,8 @@ ___1a_mn_imap_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authent
 #endif
 				       mailbox->uri->hostname,
 				       mailbox->uri->port,
-				       mailbox->uri->username,
-				       MN_AUTHENTICATED_MAILBOX(self)->password,
 				       &priv,
-				       err);
+				       &err);
     
 	g_strfreev(priv.capabilities);
 	eel_g_slist_free_deep(priv.auth_mechanisms);
@@ -1417,56 +1481,58 @@ ___1a_mn_imap_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authent
     while (status && priv.could_idle && ! REMOVED(self));
 
     GDK_THREADS_ENTER();
+
     mn_mailbox_set_must_poll(mailbox, TRUE);
+    if (! status)
+      {
+	mn_mailbox_set_error(mailbox, "%s", err->message);
+	g_error_free(err);
+      }
+    mn_mailbox_end_check(mailbox);
+
     gdk_flush();
     GDK_THREADS_LEAVE();
-
-    return status
-      ? MN_AUTHENTICATED_MAILBOX_OK
-      : (priv.authentication_failed
-	 ? MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION
-	 : MN_AUTHENTICATED_MAILBOX_ERROR_OTHER);
   }}
-#line 1431 "mn-imap-mailbox.c"
+#line 1497 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 927 "mn-imap-mailbox.gob"
+#line 966 "mn-imap-mailbox.gob"
 static void 
 mn_imap_mailbox_notice_cb (MNClientSession * session, const char * str, MNClientSessionPrivate * priv)
-#line 1438 "mn-imap-mailbox.c"
+#line 1504 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::notice_cb"
-#line 927 "mn-imap-mailbox.gob"
+#line 966 "mn-imap-mailbox.gob"
 	g_return_if_fail (session != NULL);
-#line 927 "mn-imap-mailbox.gob"
+#line 966 "mn-imap-mailbox.gob"
 	g_return_if_fail (str != NULL);
-#line 927 "mn-imap-mailbox.gob"
+#line 966 "mn-imap-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 1447 "mn-imap-mailbox.c"
+#line 1513 "mn-imap-mailbox.c"
 {
-#line 931 "mn-imap-mailbox.gob"
+#line 970 "mn-imap-mailbox.gob"
 	
     mn_mailbox_notice(priv->mailbox, "%s", str);
   }}
-#line 1453 "mn-imap-mailbox.c"
+#line 1519 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 935 "mn-imap-mailbox.gob"
+#line 974 "mn-imap-mailbox.gob"
 static MNClientSessionResponse * 
 mn_imap_mailbox_response_new_cb (MNClientSession * session, const char * input, MNClientSessionPrivate * priv)
-#line 1459 "mn-imap-mailbox.c"
+#line 1525 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::response_new_cb"
-#line 935 "mn-imap-mailbox.gob"
+#line 974 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (MNClientSessionResponse * )0);
-#line 935 "mn-imap-mailbox.gob"
+#line 974 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (input != NULL, (MNClientSessionResponse * )0);
-#line 935 "mn-imap-mailbox.gob"
+#line 974 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (MNClientSessionResponse * )0);
-#line 1468 "mn-imap-mailbox.c"
+#line 1534 "mn-imap-mailbox.c"
 {
-#line 939 "mn-imap-mailbox.gob"
+#line 978 "mn-imap-mailbox.gob"
 	
     MNClientSessionResponse *response = NULL;
 
@@ -1513,24 +1579,24 @@ mn_imap_mailbox_response_new_cb (MNClientSession * session, const char * input, 
     
     return response;
   }}
-#line 1517 "mn-imap-mailbox.c"
+#line 1583 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 986 "mn-imap-mailbox.gob"
+#line 1025 "mn-imap-mailbox.gob"
 static void 
 mn_imap_mailbox_response_free_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 1523 "mn-imap-mailbox.c"
+#line 1589 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::response_free_cb"
-#line 986 "mn-imap-mailbox.gob"
+#line 1025 "mn-imap-mailbox.gob"
 	g_return_if_fail (session != NULL);
-#line 986 "mn-imap-mailbox.gob"
+#line 1025 "mn-imap-mailbox.gob"
 	g_return_if_fail (response != NULL);
-#line 986 "mn-imap-mailbox.gob"
+#line 1025 "mn-imap-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 1532 "mn-imap-mailbox.c"
+#line 1598 "mn-imap-mailbox.c"
 {
-#line 990 "mn-imap-mailbox.gob"
+#line 1029 "mn-imap-mailbox.gob"
 	
     g_free(response->continuation);
     g_free(response->tag);
@@ -1539,24 +1605,24 @@ mn_imap_mailbox_response_free_cb (MNClientSession * session, MNClientSessionResp
     g_free(response->arguments);
     g_free(response);
   }}
-#line 1543 "mn-imap-mailbox.c"
+#line 1609 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 999 "mn-imap-mailbox.gob"
+#line 1038 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_custom_handler_cb (MNClientSession * session, MNClientSessionResponse * response, int result, MNClientSessionPrivate * priv)
-#line 1549 "mn-imap-mailbox.c"
+#line 1615 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::custom_handler_cb"
-#line 999 "mn-imap-mailbox.gob"
+#line 1038 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 999 "mn-imap-mailbox.gob"
+#line 1038 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 999 "mn-imap-mailbox.gob"
+#line 1038 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1558 "mn-imap-mailbox.c"
+#line 1624 "mn-imap-mailbox.c"
 {
-#line 1004 "mn-imap-mailbox.gob"
+#line 1043 "mn-imap-mailbox.gob"
 	
     switch (result)
       {
@@ -1578,22 +1644,22 @@ mn_imap_mailbox_custom_handler_cb (MNClientSession * session, MNClientSessionRes
 	g_return_val_if_reached(0);
       }
   }}
-#line 1582 "mn-imap-mailbox.c"
+#line 1648 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1026 "mn-imap-mailbox.gob"
+#line 1065 "mn-imap-mailbox.gob"
 static void 
 mn_imap_mailbox_pre_read_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 1588 "mn-imap-mailbox.c"
+#line 1654 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::pre_read_cb"
-#line 1026 "mn-imap-mailbox.gob"
+#line 1065 "mn-imap-mailbox.gob"
 	g_return_if_fail (session != NULL);
-#line 1026 "mn-imap-mailbox.gob"
+#line 1065 "mn-imap-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 1595 "mn-imap-mailbox.c"
+#line 1661 "mn-imap-mailbox.c"
 {
-#line 1029 "mn-imap-mailbox.gob"
+#line 1068 "mn-imap-mailbox.gob"
 	
     if (priv->idle_state == IDLE_STATE_IDLING)
       {
@@ -1602,22 +1668,22 @@ mn_imap_mailbox_pre_read_cb (MNClientSession * session, MNClientSessionPrivate *
 	g_mutex_unlock(priv->self->_priv->idle_session_mutex);
       }
   }}
-#line 1606 "mn-imap-mailbox.c"
+#line 1672 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1038 "mn-imap-mailbox.gob"
+#line 1077 "mn-imap-mailbox.gob"
 static void 
 mn_imap_mailbox_post_read_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 1612 "mn-imap-mailbox.c"
+#line 1678 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::post_read_cb"
-#line 1038 "mn-imap-mailbox.gob"
+#line 1077 "mn-imap-mailbox.gob"
 	g_return_if_fail (session != NULL);
-#line 1038 "mn-imap-mailbox.gob"
+#line 1077 "mn-imap-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 1619 "mn-imap-mailbox.c"
+#line 1685 "mn-imap-mailbox.c"
 {
-#line 1041 "mn-imap-mailbox.gob"
+#line 1080 "mn-imap-mailbox.gob"
 	
     if (priv->idle_state == IDLE_STATE_IDLING)
       {
@@ -1626,44 +1692,44 @@ mn_imap_mailbox_post_read_cb (MNClientSession * session, MNClientSessionPrivate 
 	g_mutex_unlock(priv->self->_priv->idle_session_mutex);
       }
   }}
-#line 1630 "mn-imap-mailbox.c"
+#line 1696 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1050 "mn-imap-mailbox.gob"
+#line 1089 "mn-imap-mailbox.gob"
 static void 
 mn_imap_mailbox_session_set_error_from_arguments (MNClientSessionPrivate * priv, MNClientSessionResponse * response)
-#line 1636 "mn-imap-mailbox.c"
+#line 1702 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::session_set_error_from_arguments"
-#line 1050 "mn-imap-mailbox.gob"
+#line 1089 "mn-imap-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 1050 "mn-imap-mailbox.gob"
+#line 1089 "mn-imap-mailbox.gob"
 	g_return_if_fail (response != NULL);
-#line 1643 "mn-imap-mailbox.c"
+#line 1709 "mn-imap-mailbox.c"
 {
-#line 1053 "mn-imap-mailbox.gob"
+#line 1092 "mn-imap-mailbox.gob"
 	
     if (response->arguments)
       mn_client_session_error(priv->session, "\"%s\"", response->arguments);
     else
       mn_client_session_error(priv->session, _("unknown server error"));
   }}
-#line 1652 "mn-imap-mailbox.c"
+#line 1718 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1060 "mn-imap-mailbox.gob"
+#line 1099 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_session_write (MNClientSessionPrivate * priv, const char * format, ...)
-#line 1658 "mn-imap-mailbox.c"
+#line 1724 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::session_write"
-#line 1060 "mn-imap-mailbox.gob"
+#line 1099 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1060 "mn-imap-mailbox.gob"
+#line 1099 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (format != NULL, (int )0);
-#line 1665 "mn-imap-mailbox.c"
+#line 1731 "mn-imap-mailbox.c"
 {
-#line 1064 "mn-imap-mailbox.gob"
+#line 1103 "mn-imap-mailbox.gob"
 	
     va_list args;
     char *command;
@@ -1682,45 +1748,53 @@ mn_imap_mailbox_session_write (MNClientSessionPrivate * priv, const char * forma
 
     return result;
   }}
-#line 1686 "mn-imap-mailbox.c"
+#line 1752 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1083 "mn-imap-mailbox.gob"
-static void 
+#line 1122 "mn-imap-mailbox.gob"
+static gboolean 
 mn_imap_mailbox_handle_capability_code (MNClientSessionPrivate * priv, MNClientSessionResponse * response)
-#line 1692 "mn-imap-mailbox.c"
+#line 1758 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::handle_capability_code"
-#line 1083 "mn-imap-mailbox.gob"
-	g_return_if_fail (priv != NULL);
-#line 1083 "mn-imap-mailbox.gob"
-	g_return_if_fail (response != NULL);
-#line 1699 "mn-imap-mailbox.c"
+#line 1122 "mn-imap-mailbox.gob"
+	g_return_val_if_fail (priv != NULL, (gboolean )0);
+#line 1122 "mn-imap-mailbox.gob"
+	g_return_val_if_fail (response != NULL, (gboolean )0);
+#line 1765 "mn-imap-mailbox.c"
 {
-#line 1086 "mn-imap-mailbox.gob"
+#line 1125 "mn-imap-mailbox.gob"
 	
     if (response->code)
       {
 	if (! strcmp(response->code, "CAPABILITY"))
-	  self_session_parse_capabilities(priv, NULL);
+	  {
+	    self_session_parse_capabilities(priv, NULL);
+	    return TRUE;
+	  }
 	else if (g_str_has_prefix(response->code, "CAPABILITY "))
-	  self_session_parse_capabilities(priv, response->code + 11);
+	  {
+	    self_session_parse_capabilities(priv, response->code + 11);
+	    return TRUE;
+	  }
       }
+
+    return FALSE;
   }}
-#line 1711 "mn-imap-mailbox.c"
+#line 1785 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1096 "mn-imap-mailbox.gob"
+#line 1143 "mn-imap-mailbox.gob"
 static void 
 mn_imap_mailbox_session_parse_capabilities (MNClientSessionPrivate * priv, const char * capabilities)
-#line 1717 "mn-imap-mailbox.c"
+#line 1791 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::session_parse_capabilities"
-#line 1096 "mn-imap-mailbox.gob"
+#line 1143 "mn-imap-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 1722 "mn-imap-mailbox.c"
+#line 1796 "mn-imap-mailbox.c"
 {
-#line 1099 "mn-imap-mailbox.gob"
+#line 1146 "mn-imap-mailbox.gob"
 	
     g_strfreev(priv->capabilities);
     priv->capabilities = NULL;
@@ -1741,22 +1815,22 @@ mn_imap_mailbox_session_parse_capabilities (MNClientSessionPrivate * priv, const
     else
       priv->capabilities = g_new0(char *, 1);
   }}
-#line 1745 "mn-imap-mailbox.c"
+#line 1819 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1120 "mn-imap-mailbox.gob"
+#line 1167 "mn-imap-mailbox.gob"
 static gboolean 
 mn_imap_mailbox_session_has_capability (MNClientSessionPrivate * priv, const char * capability)
-#line 1751 "mn-imap-mailbox.c"
+#line 1825 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::session_has_capability"
-#line 1120 "mn-imap-mailbox.gob"
+#line 1167 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (gboolean )0);
-#line 1120 "mn-imap-mailbox.gob"
+#line 1167 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (capability != NULL, (gboolean )0);
-#line 1758 "mn-imap-mailbox.c"
+#line 1832 "mn-imap-mailbox.c"
 {
-#line 1123 "mn-imap-mailbox.gob"
+#line 1170 "mn-imap-mailbox.gob"
 	
     int i;
 
@@ -1768,54 +1842,56 @@ mn_imap_mailbox_session_has_capability (MNClientSessionPrivate * priv, const cha
     
     return FALSE;
   }}
-#line 1772 "mn-imap-mailbox.c"
+#line 1846 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1135 "mn-imap-mailbox.gob"
+#line 1182 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_session_after_capability (MNClientSessionPrivate * priv)
-#line 1778 "mn-imap-mailbox.c"
+#line 1852 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::session_after_capability"
-#line 1135 "mn-imap-mailbox.gob"
+#line 1182 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1783 "mn-imap-mailbox.c"
+#line 1857 "mn-imap-mailbox.c"
 {
-#line 1137 "mn-imap-mailbox.gob"
+#line 1184 "mn-imap-mailbox.gob"
 	
-#ifdef WITH_SSL
-    if (MN_URI_IS_INBAND_SSL(priv->mailbox->uri)
-	&& ! MN_URI_IS_SSL(priv->mailbox->uri)
-	&& ! priv->starttls_completed)
+    if (priv->authenticated)
+      return self_session_check_mail(priv);
+    else
       {
-	if (self_session_has_capability(priv, "STARTTLS"))
-	  return STATE_STARTTLS;
-	else
+#ifdef WITH_SSL
+	if (MN_URI_IS_INBAND_SSL(priv->mailbox->uri)
+	    && ! MN_URI_IS_SSL(priv->mailbox->uri)
+	    && ! priv->starttls_completed)
 	  {
-	    mn_client_session_error(priv->session, _("server does not support in-band SSL/TLS"));
-	    return STATE_LOGOUT;
+	    if (self_session_has_capability(priv, "STARTTLS"))
+	      return STATE_STARTTLS;
+	    else
+	      {
+		mn_client_session_error(priv->session, _("server does not support in-band SSL/TLS"));
+		return STATE_LOGOUT;
+	      }
 	  }
-      }
-    else
 #endif /* WITH_SSL */
-      return priv->authenticated
-	? self_session_check_mail(priv)
-	: self_session_authenticate(priv);
+	return self_session_authenticate(priv);
+      }
   }}
-#line 1806 "mn-imap-mailbox.c"
+#line 1882 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1158 "mn-imap-mailbox.gob"
+#line 1207 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_session_authenticate (MNClientSessionPrivate * priv)
-#line 1812 "mn-imap-mailbox.c"
+#line 1888 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::session_authenticate"
-#line 1158 "mn-imap-mailbox.gob"
+#line 1207 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1817 "mn-imap-mailbox.c"
+#line 1893 "mn-imap-mailbox.c"
 {
-#line 1160 "mn-imap-mailbox.gob"
+#line 1209 "mn-imap-mailbox.gob"
 	
     if (priv->mailbox->uri->authmech)
       {
@@ -1844,54 +1920,62 @@ mn_imap_mailbox_session_authenticate (MNClientSessionPrivate * priv)
 	return STATE_LOGIN;
       }
   }}
-#line 1848 "mn-imap-mailbox.c"
+#line 1924 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1189 "mn-imap-mailbox.gob"
+#line 1238 "mn-imap-mailbox.gob"
 static int 
-mn_imap_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv)
-#line 1854 "mn-imap-mailbox.c"
+mn_imap_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv, gboolean tried_login)
+#line 1930 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::session_authenticate_fallback"
-#line 1189 "mn-imap-mailbox.gob"
+#line 1238 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1859 "mn-imap-mailbox.c"
+#line 1935 "mn-imap-mailbox.c"
 {
-#line 1191 "mn-imap-mailbox.gob"
+#line 1241 "mn-imap-mailbox.gob"
 	
     if (! priv->mailbox->uri->authmech)
       {
-	mn_client_session_notice(priv->session, _("falling back to IMAP LOGIN authentication"));
-	return STATE_LOGIN;
+	if (! tried_login)
+	  {
+	    mn_client_session_notice(priv->session, _("falling back to IMAP LOGIN authentication"));
+	    return STATE_LOGIN;
+	  }
       }
 
-    priv->authentication_failed = TRUE;
-    return mn_client_session_error(priv->session, _("authentication failed"));
+    if (! priv->mailbox->uri->password)
+      {
+	mn_authenticated_mailbox_authentication_failed(priv->authenticated_mailbox);
+	return self_session_authenticate(priv);
+      }
+    else
+      return mn_client_session_error(priv->session, _("authentication failed"));
   }}
-#line 1872 "mn-imap-mailbox.c"
+#line 1956 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 1202 "mn-imap-mailbox.gob"
+#line 1260 "mn-imap-mailbox.gob"
 static int 
 mn_imap_mailbox_session_check_mail (MNClientSessionPrivate * priv)
-#line 1878 "mn-imap-mailbox.c"
+#line 1962 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::session_check_mail"
-#line 1202 "mn-imap-mailbox.gob"
+#line 1260 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1883 "mn-imap-mailbox.c"
+#line 1967 "mn-imap-mailbox.c"
 {
-#line 1204 "mn-imap-mailbox.gob"
+#line 1262 "mn-imap-mailbox.gob"
 	
 #ifdef WITH_MIME
     return STATE_EXAMINE;
 #else
-    return self_session_has_capability(priv, "IDLE")
+    return self_session_has_capability(priv, "IDLE") && ! mn_uri_has_query(priv->mailbox->uri, "noidle")
       ? STATE_EXAMINE
       : STATE_STATUS;
 #endif /* WITH_MIME */
   }}
-#line 1895 "mn-imap-mailbox.c"
+#line 1979 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
 
 /**
@@ -1902,17 +1986,17 @@ mn_imap_mailbox_session_check_mail (MNClientSessionPrivate * priv)
  *
  * Return value: the quoted string.
  **/
-#line 1222 "mn-imap-mailbox.gob"
+#line 1280 "mn-imap-mailbox.gob"
 static char * 
 mn_imap_mailbox_quote (const char * str)
-#line 1909 "mn-imap-mailbox.c"
+#line 1993 "mn-imap-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:IMAP:Mailbox::quote"
-#line 1222 "mn-imap-mailbox.gob"
+#line 1280 "mn-imap-mailbox.gob"
 	g_return_val_if_fail (str != NULL, (char * )0);
-#line 1914 "mn-imap-mailbox.c"
+#line 1998 "mn-imap-mailbox.c"
 {
-#line 1224 "mn-imap-mailbox.gob"
+#line 1282 "mn-imap-mailbox.gob"
 	
     GString *quoted;
     int i;
@@ -1927,5 +2011,5 @@ mn_imap_mailbox_quote (const char * str)
 
     return g_string_free(quoted, FALSE);
   }}
-#line 1931 "mn-imap-mailbox.c"
+#line 2015 "mn-imap-mailbox.c"
 #undef __GOB_FUNCTION__
diff --git a/src/mn-imap-mailbox.gob b/src/mn-imap-mailbox.gob
@@ -43,6 +43,7 @@ requires 2.0.10
 #include <libgnomevfs/gnome-vfs-utils.h>
 #include <eel/eel.h>
 #include "mn-mailbox-private.h"
+#include "mn-authenticated-mailbox-private.h"
 #include "mn-util.h"
 #ifdef WITH_MIME
 #include "mn-message-mime.h"
@@ -95,38 +96,38 @@ requires 2.0.10
 
   struct _MNClientSessionPrivate
   {
-    MNMailbox		*mailbox;
-    MNIMAPMailbox	*self;
-    MNClientSession	*session;
+    MNMailbox			*mailbox;
+    MNAuthenticatedMailbox	*authenticated_mailbox;
+    MNIMAPMailbox		*self;
+    MNClientSession		*session;
 
-    int			numeric_tag;
-    char		tag[5];
+    int				numeric_tag;
+    char			tag[5];
 
-    char		**capabilities;
-    GSList		*auth_mechanisms;
-    gboolean		authenticated;
-    gboolean		authentication_failed;
+    char			**capabilities;
+    GSList			*auth_mechanisms;
+    gboolean			authenticated;
 
-    gboolean		search_received;
-    GSList		*fetch_numbers;
-    char		*fetch_set;
+    gboolean			search_received;
+    GSList			*fetch_numbers;
+    char			*fetch_set;
 
 #ifdef WITH_MIME
-    GSList		*received_numbers;
-    GSList		*messages;
+    GSList			*received_numbers;
+    GSList			*messages;
 #else /* WITH_MIME */
-    gboolean		status_received;
+    gboolean			status_received;
 #endif
 
 #ifdef WITH_SSL
-    gboolean		starttls_completed;
+    gboolean			starttls_completed;
 #endif
 #ifdef WITH_SASL
-    const char		*sasl_mechanism;
+    const char			*sasl_mechanism;
 #endif
 
-    IdleState		idle_state;
-    gboolean		could_idle;	/* could idle at least once */
+    IdleState			idle_state;
+    gboolean			could_idle;	/* could idle at least once */
   };
   
   struct _MNClientSessionResponse
@@ -203,15 +204,16 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
       return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
     else if (! response->tag && IS_OK(response))
       {
-	self_handle_capability_code(priv, response);
-	return priv->capabilities
+	return self_handle_capability_code(priv, response)
 	  ? self_session_after_capability(priv)
 	  : STATE_CAPABILITY;
       }
     else if (! response->tag && IS(response, "PREAUTH"))
       {
-	self_handle_capability_code(priv, response);
-	return self_session_check_mail(priv);
+	priv->authenticated = TRUE;
+	return self_handle_capability_code(priv, response)
+	  ? self_session_after_capability(priv)
+	  : STATE_CAPABILITY;
       }
     else if (! response->tag && IS_BYE(response))
       return RESULT_ERROR_END;
@@ -301,25 +303,50 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 #endif /* WITH_SSL */
   }
   
+  private const char *
+    sasl_get_username_cb (MNClientSession *session (check null),
+			  MNClientSessionPrivate *priv (check null))
+  {
+#ifdef WITH_SASL
+    return priv->mailbox->uri->username;
+#else
+    g_return_val_if_reached(NULL);
+#endif /* WITH_SASL */
+  }
+
+  private const char *
+    sasl_get_password_cb (MNClientSession *session (check null),
+			  MNClientSessionPrivate *priv (check null))
+  {
+#ifdef WITH_SASL
+    mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+    return priv->authenticated_mailbox->password;
+#else
+    g_return_val_if_reached(NULL);
+#endif /* WITH_SASL */
+  }
+
   private int
     enter_authenticate_cb (MNClientSession *session (check null),
 			   MNClientSessionPrivate *priv (check null))
   {
 #ifdef WITH_SASL
-    /*
-     * RFC 3501 6.2.2 specifies that the IMAP protocol does not
-     * support the "initial response" feature of SASL, so we set the
-     * initial_response argument to FALSE.
-     */
     if (mn_client_session_sasl_authentication_start(priv->session,
 						    "imap",
 						    priv->auth_mechanisms,
 						    priv->mailbox->uri->authmech,
 						    &priv->sasl_mechanism,
-						    FALSE))
+						    FALSE /* [1] */))
       return self_session_write(priv, "AUTHENTICATE %s", priv->sasl_mechanism);
     else
-      return self_session_authenticate_fallback(priv);
+      return priv->authenticated_mailbox->cancelled
+	? STATE_LOGOUT
+	: self_session_authenticate_fallback(priv, FALSE);
+
+    /*
+     * [1] RFC 3501 6.2.2 specifies that the IMAP protocol does not
+     * support the initial client response feature of SASL.
+     */
 #else
     g_return_val_if_reached(0);
 #endif /* WITH_SASL */
@@ -340,7 +367,6 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 		if (mn_client_session_sasl_authentication_done(session))
 		  {
 		    priv->authenticated = TRUE;
-		    self_handle_capability_code(priv, response);
 
 		    /*
 		     * RFC 3501 2.2.2:
@@ -359,7 +385,7 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 		     * [SASL] requires the client to re-issue a
 		     * CAPABILITY command in this case.
 		     */
-		    return priv->capabilities && mn_client_session_sasl_get_ssf(session)
+		    return self_handle_capability_code(priv, response) && mn_client_session_sasl_get_ssf(session)
 		      ? self_session_check_mail(priv)
 		      : STATE_CAPABILITY;
 		  }
@@ -367,7 +393,9 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 		  return MN_CLIENT_SESSION_RESULT_END;
 	      }
 	    else if (IS_NO(response) || IS_BAD(response))
-	      return self_session_authenticate_fallback(priv);
+	      return priv->authenticated_mailbox->cancelled
+		? STATE_LOGOUT
+		: self_session_authenticate_fallback(priv, FALSE);
 	    else
 	      return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
 	  }
@@ -397,8 +425,12 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 	char *quoted_password;
 	int result;
 
+	mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+	if (! priv->authenticated_mailbox->password)
+	  return STATE_LOGOUT;
+
 	quoted_username = self_quote(priv->mailbox->uri->username);
-	quoted_password = self_quote(MN_AUTHENTICATED_MAILBOX(priv->self)->password);
+	quoted_password = self_quote(priv->authenticated_mailbox->password);
 	result = self_session_write(priv, "LOGIN %s %s", quoted_username, quoted_password);
 	g_free(quoted_username);
 	g_free(quoted_password);
@@ -421,16 +453,12 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 	    if (IS_OK(response))
 	      {
 		priv->authenticated = TRUE;
-		self_handle_capability_code(priv, response);
-		return priv->capabilities
-		  ? STATE_CAPABILITY
-		  : self_session_check_mail(priv);
+		return self_handle_capability_code(priv, response)
+		  ? self_session_check_mail(priv)
+		  : STATE_CAPABILITY;
 	      }
 	    else if (IS_NO(response) || IS_BAD(response))
-	      {
-		priv->authentication_failed = TRUE;
-		return RESULT_ERROR_LOGOUT;
-	      }
+	      return self_session_authenticate_fallback(priv, TRUE);
 	    else
 	      return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
 	  }
@@ -516,6 +544,11 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 			gdk_flush();
 			GDK_THREADS_LEAVE();
 
+			/*
+			 * We are here and not in STATE_STATUS because
+			 * the IDLE capability has already been
+			 * tested, so proceed.
+			 */
 			return STATE_IDLE;
 #endif /* WITH_MIME */
 		      }
@@ -529,7 +562,7 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 			gdk_flush();
 			GDK_THREADS_LEAVE();
 
-			return self_session_has_capability(priv, "IDLE")
+			return self_session_has_capability(priv, "IDLE") && ! mn_uri_has_query(priv->mailbox->uri, "noidle")
 			  ? STATE_IDLE
 			  : STATE_LOGOUT;
 		      }
@@ -623,7 +656,7 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 		gdk_flush();
 		GDK_THREADS_LEAVE();
 		
-		return self_session_has_capability(priv, "IDLE")
+		return self_session_has_capability(priv, "IDLE") && ! mn_uri_has_query(priv->mailbox->uri, "noidle")
 		  ? STATE_IDLE
 		  : STATE_LOGOUT;
 	      }
@@ -842,12 +875,10 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
       return MN_CLIENT_SESSION_RESULT_CONTINUE;
   }
   
-  override (MN:Authenticated:Mailbox) MNAuthenticatedMailboxResult
-    impl_authenticated_check (MN:Authenticated:Mailbox *authenticated_mailbox (check null type),
-			      GError **err)
+  override (MN:Mailbox) void
+    impl_check (MN:Mailbox *mailbox (check null type))
   {
-    MNMailbox *mailbox = MN_MAILBOX(authenticated_mailbox);
-    Self *self = SELF(authenticated_mailbox);
+    Self *self = SELF(mailbox);
     MNClientSessionState states[] = {
       { STATE_GREETING,		NULL,				self_handle_greeting_cb },
       { STATE_CAPABILITY,	self_enter_capability_cb,	self_handle_capability_cb },
@@ -876,15 +907,23 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
       self_response_free_cb,
       self_custom_handler_cb,
       self_pre_read_cb,
-      self_post_read_cb
+      self_post_read_cb,
+#ifdef WITH_SASL
+      self_sasl_get_username_cb,
+      self_sasl_get_password_cb,
+#endif
     };
     MNClientSessionPrivate priv;
     gboolean status;
+    GError *err = NULL;
+
+    PARENT_HANDLER(mailbox);
 
     do
       {
 	memset(&priv, 0, sizeof(priv));
 	priv.mailbox = mailbox;
+	priv.authenticated_mailbox = MN_AUTHENTICATED_MAILBOX(mailbox);
 	priv.self = self;
     
 	status = mn_client_session_run(states,
@@ -894,10 +933,8 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 #endif
 				       mailbox->uri->hostname,
 				       mailbox->uri->port,
-				       mailbox->uri->username,
-				       MN_AUTHENTICATED_MAILBOX(self)->password,
 				       &priv,
-				       err);
+				       &err);
     
 	g_strfreev(priv.capabilities);
 	eel_g_slist_free_deep(priv.auth_mechanisms);
@@ -913,15 +950,17 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
     while (status && priv.could_idle && ! REMOVED(self));
 
     GDK_THREADS_ENTER();
+
     mn_mailbox_set_must_poll(mailbox, TRUE);
+    if (! status)
+      {
+	mn_mailbox_set_error(mailbox, "%s", err->message);
+	g_error_free(err);
+      }
+    mn_mailbox_end_check(mailbox);
+
     gdk_flush();
     GDK_THREADS_LEAVE();
-
-    return status
-      ? MN_AUTHENTICATED_MAILBOX_OK
-      : (priv.authentication_failed
-	 ? MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION
-	 : MN_AUTHENTICATED_MAILBOX_ERROR_OTHER);
   }
   
   private void
@@ -1080,17 +1119,25 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
     return result;
   }
 
-  private void
+  private gboolean
     handle_capability_code (MNClientSessionPrivate *priv (check null),
 			    MNClientSessionResponse *response (check null))
   {
     if (response->code)
       {
 	if (! strcmp(response->code, "CAPABILITY"))
-	  self_session_parse_capabilities(priv, NULL);
+	  {
+	    self_session_parse_capabilities(priv, NULL);
+	    return TRUE;
+	  }
 	else if (g_str_has_prefix(response->code, "CAPABILITY "))
-	  self_session_parse_capabilities(priv, response->code + 11);
+	  {
+	    self_session_parse_capabilities(priv, response->code + 11);
+	    return TRUE;
+	  }
       }
+
+    return FALSE;
   }
   
   private void
@@ -1135,24 +1182,26 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
   private int
     session_after_capability (MNClientSessionPrivate *priv (check null))
   {
-#ifdef WITH_SSL
-    if (MN_URI_IS_INBAND_SSL(priv->mailbox->uri)
-	&& ! MN_URI_IS_SSL(priv->mailbox->uri)
-	&& ! priv->starttls_completed)
+    if (priv->authenticated)
+      return self_session_check_mail(priv);
+    else
       {
-	if (self_session_has_capability(priv, "STARTTLS"))
-	  return STATE_STARTTLS;
-	else
+#ifdef WITH_SSL
+	if (MN_URI_IS_INBAND_SSL(priv->mailbox->uri)
+	    && ! MN_URI_IS_SSL(priv->mailbox->uri)
+	    && ! priv->starttls_completed)
 	  {
-	    mn_client_session_error(priv->session, _("server does not support in-band SSL/TLS"));
-	    return STATE_LOGOUT;
+	    if (self_session_has_capability(priv, "STARTTLS"))
+	      return STATE_STARTTLS;
+	    else
+	      {
+		mn_client_session_error(priv->session, _("server does not support in-band SSL/TLS"));
+		return STATE_LOGOUT;
+	      }
 	  }
-      }
-    else
 #endif /* WITH_SSL */
-      return priv->authenticated
-	? self_session_check_mail(priv)
-	: self_session_authenticate(priv);
+	return self_session_authenticate(priv);
+      }
   }
   
   private int
@@ -1187,16 +1236,25 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
   }
 
   private int
-    session_authenticate_fallback (MNClientSessionPrivate *priv (check null))
+    session_authenticate_fallback (MNClientSessionPrivate *priv (check null),
+				   gboolean tried_login)
   {
     if (! priv->mailbox->uri->authmech)
       {
-	mn_client_session_notice(priv->session, _("falling back to IMAP LOGIN authentication"));
-	return STATE_LOGIN;
+	if (! tried_login)
+	  {
+	    mn_client_session_notice(priv->session, _("falling back to IMAP LOGIN authentication"));
+	    return STATE_LOGIN;
+	  }
       }
 
-    priv->authentication_failed = TRUE;
-    return mn_client_session_error(priv->session, _("authentication failed"));
+    if (! priv->mailbox->uri->password)
+      {
+	mn_authenticated_mailbox_authentication_failed(priv->authenticated_mailbox);
+	return self_session_authenticate(priv);
+      }
+    else
+      return mn_client_session_error(priv->session, _("authentication failed"));
   }
 
   private int
@@ -1205,7 +1263,7 @@ class MN:IMAP:Mailbox from MN:Authenticated:Mailbox
 #ifdef WITH_MIME
     return STATE_EXAMINE;
 #else
-    return self_session_has_capability(priv, "IDLE")
+    return self_session_has_capability(priv, "IDLE") && ! mn_uri_has_query(priv->mailbox->uri, "noidle")
       ? STATE_EXAMINE
       : STATE_STATUS;
 #endif /* WITH_MIME */
diff --git a/src/mn-mail-icon.c b/src/mn-mail-icon.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-mailbox-view.c b/src/mn-mailbox-view.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-mailbox.c b/src/mn-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-mailboxes.c b/src/mn-mailboxes.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-maildir-mailbox.c b/src/mn-maildir-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:09 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-mbox-mailbox.c b/src/mn-mbox-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:09 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-message-box.c b/src/mn-message-box.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-message.c b/src/mn-message.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:11 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-mh-mailbox.c b/src/mn-mh-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:09 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-pending-mailbox.c b/src/mn-pending-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:11 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-pi-mailbox-properties.c b/src/mn-pi-mailbox-properties.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-pop3-mailbox-private.h b/src/mn-pop3-mailbox-private.h
@@ -10,9 +10,9 @@ extern "C" {
 #endif /* __cplusplus */
 
 struct _MNPOP3MailboxPrivate {
-#line 123 "mn-pop3-mailbox.gob"
-	int login_delay;
 #line 124 "mn-pop3-mailbox.gob"
+	int login_delay;
+#line 125 "mn-pop3-mailbox.gob"
 	GTimer * authentication_timer;
 #line 18 "mn-pop3-mailbox-private.h"
 };
diff --git a/src/mn-pop3-mailbox-properties.c b/src/mn-pop3-mailbox-properties.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:09 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-pop3-mailbox.c b/src/mn-pop3-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:09 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
@@ -33,6 +33,7 @@
 #include <libgnomevfs/gnome-vfs-utils.h>
 #include <eel/eel.h>
 #include "mn-mailbox-private.h"
+#include "mn-authenticated-mailbox-private.h"
 #include "mn-client-session.h"
 #include "mn-util.h"
 #include "mn-md5.h"
@@ -70,27 +71,27 @@
 
   struct _MNClientSessionPrivate
   {
-    MNMailbox		*mailbox;
-    MNPOP3Mailbox	*self;
-    MNClientSession	*session;
-    gboolean		in_list;
-    char		*apop_timestamp;
-    GSList		*auth_mechanisms;
+    MNMailbox			*mailbox;
+    MNAuthenticatedMailbox	*authenticated_mailbox;
+    MNPOP3Mailbox		*self;
+    MNClientSession		*session;
+    gboolean			in_list;
+    char			*apop_timestamp;
+    GSList			*auth_mechanisms;
 #ifdef WITH_SSL
-    gboolean		stls_supported;
-    gboolean		stls_completed;
+    gboolean			stls_supported;
+    gboolean			stls_completed;
 #endif
 #ifdef WITH_SASL
-    const char		*sasl_mechanism;
+    const char			*sasl_mechanism;
 #endif
-    gboolean		authentication_failed;
-    gboolean		authenticated;
-    gboolean		login_delay_user;
+    gboolean			authenticated;
+    gboolean			login_delay_user;
 #ifdef WITH_MIME
-    GSList		*message_numbers;
-    GSList		*current_message_number;
-    GSList		*messages;
-    GString		*current_message;
+    GSList			*message_numbers;
+    GSList			*current_message_number;
+    GSList			*messages;
+    GString			*current_message;
 #endif
   };
 
@@ -109,7 +110,7 @@
     char		*arguments;
   };
 
-#line 113 "mn-pop3-mailbox.c"
+#line 114 "mn-pop3-mailbox.c"
 /* self casting macros */
 #define SELF(x) MN_POP3_MAILBOX(x)
 #define SELF_CONST(x) MN_POP3_MAILBOX_CONST(x)
@@ -133,6 +134,8 @@ static int mn_pop3_mailbox_enter_capa_cb (MNClientSession * session, MNClientSes
 static int mn_pop3_mailbox_handle_capa_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_enter_stls_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_handle_stls_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
+static const char * mn_pop3_mailbox_sasl_get_username_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
+static const char * mn_pop3_mailbox_sasl_get_password_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_enter_auth_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_handle_auth_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_enter_apop_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
@@ -149,13 +152,13 @@ static int mn_pop3_mailbox_enter_stat_cb (MNClientSession * session, MNClientSes
 static int mn_pop3_mailbox_handle_stat_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_enter_quit_cb (MNClientSession * session, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_handle_quit_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
-static MNAuthenticatedMailboxResult ___19_mn_pop3_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authenticated_mailbox, GError ** err) G_GNUC_UNUSED;
+static void ___1b_mn_pop3_mailbox_impl_check (MNMailbox * mailbox) G_GNUC_UNUSED;
 static void mn_pop3_mailbox_notice_cb (MNClientSession * session, const char * str, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static MNClientSessionResponse * mn_pop3_mailbox_response_new_cb (MNClientSession * session, const char * input, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static void mn_pop3_mailbox_response_free_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_custom_handler_cb (MNClientSession * session, MNClientSessionResponse * response, int result, MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_session_authenticate (MNClientSessionPrivate * priv) G_GNUC_UNUSED;
-static int mn_pop3_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv, gboolean tried_apop) G_GNUC_UNUSED;
+static int mn_pop3_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv, gboolean tried_apop, gboolean tried_pass) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_session_authenticated (MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static int mn_pop3_mailbox_session_check_mail (MNClientSessionPrivate * priv) G_GNUC_UNUSED;
 static void mn_pop3_mailbox_session_set_error_from_arguments (MNClientSessionPrivate * priv, MNClientSessionResponse * response) G_GNUC_UNUSED;
@@ -170,6 +173,8 @@ static MNAuthenticatedMailboxClass *parent_class = NULL;
 #define self_handle_capa_cb mn_pop3_mailbox_handle_capa_cb
 #define self_enter_stls_cb mn_pop3_mailbox_enter_stls_cb
 #define self_handle_stls_cb mn_pop3_mailbox_handle_stls_cb
+#define self_sasl_get_username_cb mn_pop3_mailbox_sasl_get_username_cb
+#define self_sasl_get_password_cb mn_pop3_mailbox_sasl_get_password_cb
 #define self_enter_auth_cb mn_pop3_mailbox_enter_auth_cb
 #define self_handle_auth_cb mn_pop3_mailbox_handle_auth_cb
 #define self_enter_apop_cb mn_pop3_mailbox_enter_apop_cb
@@ -247,9 +252,9 @@ ___finalize(GObject *obj_self)
 	gpointer priv G_GNUC_UNUSED = self->_priv;
 	if(G_OBJECT_CLASS(parent_class)->finalize) \
 		(* G_OBJECT_CLASS(parent_class)->finalize)(obj_self);
-#line 124 "mn-pop3-mailbox.gob"
+#line 125 "mn-pop3-mailbox.gob"
 	if(self->_priv->authentication_timer) { g_timer_destroy ((gpointer) self->_priv->authentication_timer); self->_priv->authentication_timer = NULL; }
-#line 253 "mn-pop3-mailbox.c"
+#line 258 "mn-pop3-mailbox.c"
 }
 #undef __GOB_FUNCTION__
 
@@ -260,44 +265,43 @@ mn_pop3_mailbox_init (MNPOP3Mailbox * o G_GNUC_UNUSED)
 	o->_priv = G_TYPE_INSTANCE_GET_PRIVATE(o,TYPE_SELF,MNPOP3MailboxPrivate);
 }
 #undef __GOB_FUNCTION__
-#line 126 "mn-pop3-mailbox.gob"
+#line 127 "mn-pop3-mailbox.gob"
 static void 
 mn_pop3_mailbox_class_init (MNPOP3MailboxClass * class G_GNUC_UNUSED)
-#line 267 "mn-pop3-mailbox.c"
+#line 272 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::class_init"
 	GObjectClass *g_object_class G_GNUC_UNUSED = (GObjectClass*) class;
 	MNMailboxClass *mn_mailbox_class = (MNMailboxClass *)class;
-	MNAuthenticatedMailboxClass *mn_authenticated_mailbox_class = (MNAuthenticatedMailboxClass *)class;
 
 	g_type_class_add_private(class,sizeof(MNPOP3MailboxPrivate));
 
 	parent_class = g_type_class_ref (MN_TYPE_AUTHENTICATED_MAILBOX);
 
-#line 131 "mn-pop3-mailbox.gob"
+#line 132 "mn-pop3-mailbox.gob"
 	g_object_class->constructor = ___2_mn_pop3_mailbox_constructor;
-#line 148 "mn-pop3-mailbox.gob"
+#line 149 "mn-pop3-mailbox.gob"
 	mn_mailbox_class->impl_is = ___3_mn_pop3_mailbox_impl_is;
-#line 638 "mn-pop3-mailbox.gob"
-	mn_authenticated_mailbox_class->impl_authenticated_check = ___19_mn_pop3_mailbox_impl_authenticated_check;
-#line 284 "mn-pop3-mailbox.c"
+#line 672 "mn-pop3-mailbox.gob"
+	mn_mailbox_class->impl_check = ___1b_mn_pop3_mailbox_impl_check;
+#line 288 "mn-pop3-mailbox.c"
 	g_object_class->finalize = ___finalize;
  {
-#line 127 "mn-pop3-mailbox.gob"
+#line 128 "mn-pop3-mailbox.gob"
 
     MN_MAILBOX_CLASS(class)->format = "POP3";
   
-#line 291 "mn-pop3-mailbox.c"
+#line 295 "mn-pop3-mailbox.c"
  }
 }
 #undef __GOB_FUNCTION__
 
 
 
-#line 131 "mn-pop3-mailbox.gob"
+#line 132 "mn-pop3-mailbox.gob"
 static GObject * 
 ___2_mn_pop3_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_properties, GObjectConstructParam * construct_params)
-#line 301 "mn-pop3-mailbox.c"
+#line 305 "mn-pop3-mailbox.c"
 #define PARENT_HANDLER(___type,___n_construct_properties,___construct_params) \
 	((G_OBJECT_CLASS(parent_class)->constructor)? \
 		(* G_OBJECT_CLASS(parent_class)->constructor)(___type,___n_construct_properties,___construct_params): \
@@ -305,7 +309,7 @@ ___2_mn_pop3_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_pr
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::constructor"
 {
-#line 133 "mn-pop3-mailbox.gob"
+#line 134 "mn-pop3-mailbox.gob"
 	
     GObject *object;
     MNMailbox *mailbox;
@@ -320,49 +324,49 @@ ___2_mn_pop3_mailbox_constructor (GType type G_GNUC_UNUSED, guint n_construct_pr
   
     return object;
   }}
-#line 324 "mn-pop3-mailbox.c"
+#line 328 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 148 "mn-pop3-mailbox.gob"
+#line 149 "mn-pop3-mailbox.gob"
 static gboolean 
 ___3_mn_pop3_mailbox_impl_is (MNMailbox * dummy G_GNUC_UNUSED, MNURI * uri)
-#line 331 "mn-pop3-mailbox.c"
+#line 335 "mn-pop3-mailbox.c"
 #define PARENT_HANDLER(___dummy,___uri) \
 	((MN_MAILBOX_CLASS(parent_class)->impl_is)? \
 		(* MN_MAILBOX_CLASS(parent_class)->impl_is)(___dummy,___uri): \
 		((gboolean )0))
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::impl_is"
-#line 148 "mn-pop3-mailbox.gob"
+#line 149 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (uri != NULL, (gboolean )0);
-#line 148 "mn-pop3-mailbox.gob"
+#line 149 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (MN_IS_URI (uri), (gboolean )0);
-#line 342 "mn-pop3-mailbox.c"
+#line 346 "mn-pop3-mailbox.c"
 {
-#line 150 "mn-pop3-mailbox.gob"
+#line 151 "mn-pop3-mailbox.gob"
 	
     return MN_URI_IS_POP(uri);
   }}
-#line 348 "mn-pop3-mailbox.c"
+#line 352 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 154 "mn-pop3-mailbox.gob"
+#line 155 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_greeting_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 355 "mn-pop3-mailbox.c"
+#line 359 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_greeting_cb"
-#line 154 "mn-pop3-mailbox.gob"
+#line 155 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 154 "mn-pop3-mailbox.gob"
+#line 155 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 154 "mn-pop3-mailbox.gob"
+#line 155 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 364 "mn-pop3-mailbox.c"
+#line 368 "mn-pop3-mailbox.c"
 {
-#line 158 "mn-pop3-mailbox.gob"
+#line 159 "mn-pop3-mailbox.gob"
 	
     priv->session = session;
     
@@ -389,43 +393,43 @@ mn_pop3_mailbox_handle_greeting_cb (MNClientSession * session, MNClientSessionRe
       default:			return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
       }
   }}
-#line 393 "mn-pop3-mailbox.c"
+#line 397 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 185 "mn-pop3-mailbox.gob"
+#line 186 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_capa_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 399 "mn-pop3-mailbox.c"
+#line 403 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_capa_cb"
-#line 185 "mn-pop3-mailbox.gob"
+#line 186 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 185 "mn-pop3-mailbox.gob"
+#line 186 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 406 "mn-pop3-mailbox.c"
+#line 410 "mn-pop3-mailbox.c"
 {
-#line 188 "mn-pop3-mailbox.gob"
+#line 189 "mn-pop3-mailbox.gob"
 	
     return mn_client_session_write(session, "CAPA");
   }}
-#line 412 "mn-pop3-mailbox.c"
+#line 416 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 192 "mn-pop3-mailbox.gob"
+#line 193 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_capa_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 418 "mn-pop3-mailbox.c"
+#line 422 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_capa_cb"
-#line 192 "mn-pop3-mailbox.gob"
+#line 193 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 192 "mn-pop3-mailbox.gob"
+#line 193 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 192 "mn-pop3-mailbox.gob"
+#line 193 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 427 "mn-pop3-mailbox.c"
+#line 431 "mn-pop3-mailbox.c"
 {
-#line 196 "mn-pop3-mailbox.gob"
+#line 197 "mn-pop3-mailbox.gob"
 	
     self_handle_list_response(priv, response);
 
@@ -510,22 +514,22 @@ mn_pop3_mailbox_handle_capa_cb (MNClientSession * session, MNClientSessionRespon
 	return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
       }
   }}
-#line 514 "mn-pop3-mailbox.c"
+#line 518 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 281 "mn-pop3-mailbox.gob"
+#line 282 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_stls_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 520 "mn-pop3-mailbox.c"
+#line 524 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_stls_cb"
-#line 281 "mn-pop3-mailbox.gob"
+#line 282 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 281 "mn-pop3-mailbox.gob"
+#line 282 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 527 "mn-pop3-mailbox.c"
+#line 531 "mn-pop3-mailbox.c"
 {
-#line 284 "mn-pop3-mailbox.gob"
+#line 285 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_SSL
     return mn_client_session_write(session, "STLS");
@@ -533,24 +537,24 @@ mn_pop3_mailbox_enter_stls_cb (MNClientSession * session, MNClientSessionPrivate
     g_return_val_if_reached(0);
 #endif /* WITH_SSL */
   }}
-#line 537 "mn-pop3-mailbox.c"
+#line 541 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 292 "mn-pop3-mailbox.gob"
+#line 293 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_stls_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 543 "mn-pop3-mailbox.c"
+#line 547 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_stls_cb"
-#line 292 "mn-pop3-mailbox.gob"
+#line 293 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 292 "mn-pop3-mailbox.gob"
+#line 293 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 292 "mn-pop3-mailbox.gob"
+#line 293 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 552 "mn-pop3-mailbox.c"
+#line 556 "mn-pop3-mailbox.c"
 {
-#line 296 "mn-pop3-mailbox.gob"
+#line 297 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_SSL
     switch (response->type)
@@ -571,22 +575,69 @@ mn_pop3_mailbox_handle_stls_cb (MNClientSession * session, MNClientSessionRespon
     g_return_val_if_reached(0);
 #endif /* WITH_SSL */
   }}
-#line 575 "mn-pop3-mailbox.c"
+#line 579 "mn-pop3-mailbox.c"
+#undef __GOB_FUNCTION__
+
+#line 318 "mn-pop3-mailbox.gob"
+static const char * 
+mn_pop3_mailbox_sasl_get_username_cb (MNClientSession * session, MNClientSessionPrivate * priv)
+#line 585 "mn-pop3-mailbox.c"
+{
+#define __GOB_FUNCTION__ "MN:POP3:Mailbox::sasl_get_username_cb"
+#line 318 "mn-pop3-mailbox.gob"
+	g_return_val_if_fail (session != NULL, (const char * )0);
+#line 318 "mn-pop3-mailbox.gob"
+	g_return_val_if_fail (priv != NULL, (const char * )0);
+#line 592 "mn-pop3-mailbox.c"
+{
+#line 321 "mn-pop3-mailbox.gob"
+	
+#ifdef WITH_SASL
+    return priv->mailbox->uri->username;
+#else
+    g_return_val_if_reached(NULL);
+#endif /* WITH_SASL */
+  }}
+#line 602 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 317 "mn-pop3-mailbox.gob"
+#line 329 "mn-pop3-mailbox.gob"
+static const char * 
+mn_pop3_mailbox_sasl_get_password_cb (MNClientSession * session, MNClientSessionPrivate * priv)
+#line 608 "mn-pop3-mailbox.c"
+{
+#define __GOB_FUNCTION__ "MN:POP3:Mailbox::sasl_get_password_cb"
+#line 329 "mn-pop3-mailbox.gob"
+	g_return_val_if_fail (session != NULL, (const char * )0);
+#line 329 "mn-pop3-mailbox.gob"
+	g_return_val_if_fail (priv != NULL, (const char * )0);
+#line 615 "mn-pop3-mailbox.c"
+{
+#line 332 "mn-pop3-mailbox.gob"
+	
+#ifdef WITH_SASL
+    mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+    return priv->authenticated_mailbox->password;
+#else
+    g_return_val_if_reached(NULL);
+#endif /* WITH_SASL */
+  }}
+#line 626 "mn-pop3-mailbox.c"
+#undef __GOB_FUNCTION__
+
+#line 341 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_auth_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 581 "mn-pop3-mailbox.c"
+#line 632 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_auth_cb"
-#line 317 "mn-pop3-mailbox.gob"
+#line 341 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 317 "mn-pop3-mailbox.gob"
+#line 341 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 588 "mn-pop3-mailbox.c"
+#line 639 "mn-pop3-mailbox.c"
 {
-#line 320 "mn-pop3-mailbox.gob"
+#line 344 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_SASL
     if (mn_client_session_sasl_authentication_start(priv->session,
@@ -594,10 +645,12 @@ mn_pop3_mailbox_enter_auth_cb (MNClientSession * session, MNClientSessionPrivate
 						    priv->auth_mechanisms,
 						    priv->mailbox->uri->authmech,
 						    &priv->sasl_mechanism,
-					  /* [1] */ TRUE))
+						    TRUE /* [1] */))
       return mn_client_session_write(session, "AUTH %s", priv->sasl_mechanism);
     else
-      return self_session_authenticate_fallback(priv, FALSE);
+      return priv->authenticated_mailbox->cancelled
+	? STATE_QUIT
+	: self_session_authenticate_fallback(priv, FALSE, FALSE);
 
     /*
      * [1] http://www.ietf.org/internet-drafts/draft-siemborski-rfc1734bis-03.txt
@@ -608,24 +661,24 @@ mn_pop3_mailbox_enter_auth_cb (MNClientSession * session, MNClientSessionPrivate
     g_return_val_if_reached(0);
 #endif /* WITH_SASL */
   }}
-#line 612 "mn-pop3-mailbox.c"
+#line 665 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 342 "mn-pop3-mailbox.gob"
+#line 368 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_auth_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 618 "mn-pop3-mailbox.c"
+#line 671 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_auth_cb"
-#line 342 "mn-pop3-mailbox.gob"
+#line 368 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 342 "mn-pop3-mailbox.gob"
+#line 368 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 342 "mn-pop3-mailbox.gob"
+#line 368 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 627 "mn-pop3-mailbox.c"
+#line 680 "mn-pop3-mailbox.c"
 {
-#line 346 "mn-pop3-mailbox.gob"
+#line 372 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_SASL
     switch (response->type)
@@ -636,7 +689,9 @@ mn_pop3_mailbox_handle_auth_cb (MNClientSession * session, MNClientSessionRespon
 	  : MN_CLIENT_SESSION_RESULT_END;
 	
       case RESPONSE_ERR:
-	return self_session_authenticate_fallback(priv, FALSE);
+	return priv->authenticated_mailbox->cancelled
+	  ? STATE_QUIT
+	  : self_session_authenticate_fallback(priv, FALSE, FALSE);
 	
       case RESPONSE_CONTINUATION:
 	return mn_client_session_sasl_authentication_step(session, response->arguments);
@@ -648,53 +703,57 @@ mn_pop3_mailbox_handle_auth_cb (MNClientSession * session, MNClientSessionRespon
     g_return_val_if_reached(0);
 #endif /* WITH_SASL */
   }}
-#line 652 "mn-pop3-mailbox.c"
+#line 707 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 369 "mn-pop3-mailbox.gob"
+#line 397 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_apop_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 658 "mn-pop3-mailbox.c"
+#line 713 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_apop_cb"
-#line 369 "mn-pop3-mailbox.gob"
+#line 397 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 369 "mn-pop3-mailbox.gob"
+#line 397 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 665 "mn-pop3-mailbox.c"
+#line 720 "mn-pop3-mailbox.c"
 {
-#line 372 "mn-pop3-mailbox.gob"
+#line 400 "mn-pop3-mailbox.gob"
 	
     MNMD5Context context;
     char buf[33];
   
     g_return_val_if_fail(priv->apop_timestamp != NULL, 0);
-    
+
+    mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+    if (! priv->authenticated_mailbox->password)
+      return STATE_QUIT;
+
     mn_md5_init(&context);
     mn_md5_update(&context, priv->apop_timestamp, strlen(priv->apop_timestamp));
-    mn_md5_update(&context, MN_AUTHENTICATED_MAILBOX(priv->self)->password, strlen(MN_AUTHENTICATED_MAILBOX(priv->self)->password));
+    mn_md5_update(&context, priv->authenticated_mailbox->password, strlen(priv->authenticated_mailbox->password));
     mn_md5_end(&context, buf);
 
     return mn_client_session_write(session, "APOP %s %s", priv->mailbox->uri->username, buf);
   }}
-#line 681 "mn-pop3-mailbox.c"
+#line 740 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 386 "mn-pop3-mailbox.gob"
+#line 418 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_apop_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 687 "mn-pop3-mailbox.c"
+#line 746 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_apop_cb"
-#line 386 "mn-pop3-mailbox.gob"
+#line 418 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 386 "mn-pop3-mailbox.gob"
+#line 418 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 386 "mn-pop3-mailbox.gob"
+#line 418 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 696 "mn-pop3-mailbox.c"
+#line 755 "mn-pop3-mailbox.c"
 {
-#line 390 "mn-pop3-mailbox.gob"
+#line 422 "mn-pop3-mailbox.gob"
 	
     switch (response->type)
       {
@@ -702,49 +761,49 @@ mn_pop3_mailbox_handle_apop_cb (MNClientSession * session, MNClientSessionRespon
 	return self_session_authenticated(priv);
 	
       case RESPONSE_ERR:
-	return self_session_authenticate_fallback(priv, TRUE);
+	return self_session_authenticate_fallback(priv, TRUE, FALSE);
 
       default:
 	return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
       }
   }}
-#line 712 "mn-pop3-mailbox.c"
+#line 771 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 404 "mn-pop3-mailbox.gob"
+#line 436 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_user_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 718 "mn-pop3-mailbox.c"
+#line 777 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_user_cb"
-#line 404 "mn-pop3-mailbox.gob"
+#line 436 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 404 "mn-pop3-mailbox.gob"
+#line 436 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 725 "mn-pop3-mailbox.c"
+#line 784 "mn-pop3-mailbox.c"
 {
-#line 407 "mn-pop3-mailbox.gob"
+#line 439 "mn-pop3-mailbox.gob"
 	
     return mn_client_session_write(session, "USER %s", priv->mailbox->uri->username);
   }}
-#line 731 "mn-pop3-mailbox.c"
+#line 790 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 411 "mn-pop3-mailbox.gob"
+#line 443 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_user_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 737 "mn-pop3-mailbox.c"
+#line 796 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_user_cb"
-#line 411 "mn-pop3-mailbox.gob"
+#line 443 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 411 "mn-pop3-mailbox.gob"
+#line 443 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 411 "mn-pop3-mailbox.gob"
+#line 443 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 746 "mn-pop3-mailbox.c"
+#line 805 "mn-pop3-mailbox.c"
 {
-#line 415 "mn-pop3-mailbox.gob"
+#line 447 "mn-pop3-mailbox.gob"
 	
     switch (response->type)
       {
@@ -752,50 +811,53 @@ mn_pop3_mailbox_handle_user_cb (MNClientSession * session, MNClientSessionRespon
 	return STATE_PASS;
 
       case RESPONSE_ERR:
-	priv->authentication_failed = TRUE;
 	return RESULT_ERROR_QUIT;
 
       default:
 	return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
       }
   }}
-#line 763 "mn-pop3-mailbox.c"
+#line 821 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 430 "mn-pop3-mailbox.gob"
+#line 461 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_pass_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 769 "mn-pop3-mailbox.c"
+#line 827 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_pass_cb"
-#line 430 "mn-pop3-mailbox.gob"
+#line 461 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 430 "mn-pop3-mailbox.gob"
+#line 461 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 776 "mn-pop3-mailbox.c"
+#line 834 "mn-pop3-mailbox.c"
 {
-#line 433 "mn-pop3-mailbox.gob"
+#line 464 "mn-pop3-mailbox.gob"
 	
-    return mn_client_session_write(session, "PASS %s", MN_AUTHENTICATED_MAILBOX(priv->self)->password);
+    mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+    if (! priv->authenticated_mailbox->password)
+      return STATE_QUIT;
+
+    return mn_client_session_write(session, "PASS %s", priv->authenticated_mailbox->password);
   }}
-#line 782 "mn-pop3-mailbox.c"
+#line 844 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 437 "mn-pop3-mailbox.gob"
+#line 472 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_pass_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 788 "mn-pop3-mailbox.c"
+#line 850 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_pass_cb"
-#line 437 "mn-pop3-mailbox.gob"
+#line 472 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 437 "mn-pop3-mailbox.gob"
+#line 472 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 437 "mn-pop3-mailbox.gob"
+#line 472 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 797 "mn-pop3-mailbox.c"
+#line 859 "mn-pop3-mailbox.c"
 {
-#line 441 "mn-pop3-mailbox.gob"
+#line 476 "mn-pop3-mailbox.gob"
 	
     switch (response->type)
       {
@@ -803,29 +865,28 @@ mn_pop3_mailbox_handle_pass_cb (MNClientSession * session, MNClientSessionRespon
 	return self_session_authenticated(priv);
 
       case RESPONSE_ERR:
-	priv->authentication_failed = TRUE;
-	return RESULT_ERROR_QUIT;
+	return self_session_authenticate_fallback(priv, TRUE, TRUE);
 
       default:
 	return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
       }
   }}
-#line 814 "mn-pop3-mailbox.c"
+#line 875 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 456 "mn-pop3-mailbox.gob"
+#line 490 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_list_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 820 "mn-pop3-mailbox.c"
+#line 881 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_list_cb"
-#line 456 "mn-pop3-mailbox.gob"
+#line 490 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 456 "mn-pop3-mailbox.gob"
+#line 490 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 827 "mn-pop3-mailbox.c"
+#line 888 "mn-pop3-mailbox.c"
 {
-#line 459 "mn-pop3-mailbox.gob"
+#line 493 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_MIME
     return mn_client_session_write(session, "LIST");
@@ -833,24 +894,24 @@ mn_pop3_mailbox_enter_list_cb (MNClientSession * session, MNClientSessionPrivate
     g_return_val_if_reached(0);
 #endif
   }}
-#line 837 "mn-pop3-mailbox.c"
+#line 898 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 467 "mn-pop3-mailbox.gob"
+#line 501 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_list_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 843 "mn-pop3-mailbox.c"
+#line 904 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_list_cb"
-#line 467 "mn-pop3-mailbox.gob"
+#line 501 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 467 "mn-pop3-mailbox.gob"
+#line 501 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 467 "mn-pop3-mailbox.gob"
+#line 501 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 852 "mn-pop3-mailbox.c"
+#line 913 "mn-pop3-mailbox.c"
 {
-#line 471 "mn-pop3-mailbox.gob"
+#line 505 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_MIME
     self_handle_list_response(priv, response);
@@ -886,22 +947,22 @@ mn_pop3_mailbox_handle_list_cb (MNClientSession * session, MNClientSessionRespon
     g_return_val_if_reached(0);
 #endif
   }}
-#line 890 "mn-pop3-mailbox.c"
+#line 951 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 507 "mn-pop3-mailbox.gob"
+#line 541 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_retr_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 896 "mn-pop3-mailbox.c"
+#line 957 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_retr_cb"
-#line 507 "mn-pop3-mailbox.gob"
+#line 541 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 507 "mn-pop3-mailbox.gob"
+#line 541 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 903 "mn-pop3-mailbox.c"
+#line 964 "mn-pop3-mailbox.c"
 {
-#line 510 "mn-pop3-mailbox.gob"
+#line 544 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_MIME
     if (priv->current_message_number)
@@ -920,24 +981,24 @@ mn_pop3_mailbox_enter_retr_cb (MNClientSession * session, MNClientSessionPrivate
     g_return_val_if_reached(0);
 #endif
   }}
-#line 924 "mn-pop3-mailbox.c"
+#line 985 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 529 "mn-pop3-mailbox.gob"
+#line 563 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_retr_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 930 "mn-pop3-mailbox.c"
+#line 991 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_retr_cb"
-#line 529 "mn-pop3-mailbox.gob"
+#line 563 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 529 "mn-pop3-mailbox.gob"
+#line 563 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 529 "mn-pop3-mailbox.gob"
+#line 563 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 939 "mn-pop3-mailbox.c"
+#line 1000 "mn-pop3-mailbox.c"
 {
-#line 533 "mn-pop3-mailbox.gob"
+#line 567 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_MIME
     self_handle_list_response(priv, response);
@@ -976,22 +1037,22 @@ mn_pop3_mailbox_handle_retr_cb (MNClientSession * session, MNClientSessionRespon
     g_return_val_if_reached(0);
 #endif
   }}
-#line 980 "mn-pop3-mailbox.c"
+#line 1041 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 572 "mn-pop3-mailbox.gob"
+#line 606 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_stat_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 986 "mn-pop3-mailbox.c"
+#line 1047 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_stat_cb"
-#line 572 "mn-pop3-mailbox.gob"
+#line 606 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 572 "mn-pop3-mailbox.gob"
+#line 606 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 993 "mn-pop3-mailbox.c"
+#line 1054 "mn-pop3-mailbox.c"
 {
-#line 575 "mn-pop3-mailbox.gob"
+#line 609 "mn-pop3-mailbox.gob"
 	
 #ifndef WITH_MIME
     return mn_client_session_write(session, "STAT");
@@ -999,24 +1060,24 @@ mn_pop3_mailbox_enter_stat_cb (MNClientSession * session, MNClientSessionPrivate
     g_return_val_if_reached(0);
 #endif
   }}
-#line 1003 "mn-pop3-mailbox.c"
+#line 1064 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 583 "mn-pop3-mailbox.gob"
+#line 617 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_stat_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 1009 "mn-pop3-mailbox.c"
+#line 1070 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_stat_cb"
-#line 583 "mn-pop3-mailbox.gob"
+#line 617 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 583 "mn-pop3-mailbox.gob"
+#line 617 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 583 "mn-pop3-mailbox.gob"
+#line 617 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1018 "mn-pop3-mailbox.c"
+#line 1079 "mn-pop3-mailbox.c"
 {
-#line 587 "mn-pop3-mailbox.gob"
+#line 621 "mn-pop3-mailbox.gob"
 	
 #ifndef WITH_MIME
     switch (response->type)
@@ -1047,43 +1108,43 @@ mn_pop3_mailbox_handle_stat_cb (MNClientSession * session, MNClientSessionRespon
     g_return_val_if_reached(0);
 #endif
   }}
-#line 1051 "mn-pop3-mailbox.c"
+#line 1112 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 618 "mn-pop3-mailbox.gob"
+#line 652 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_enter_quit_cb (MNClientSession * session, MNClientSessionPrivate * priv)
-#line 1057 "mn-pop3-mailbox.c"
+#line 1118 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::enter_quit_cb"
-#line 618 "mn-pop3-mailbox.gob"
+#line 652 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 618 "mn-pop3-mailbox.gob"
+#line 652 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1064 "mn-pop3-mailbox.c"
+#line 1125 "mn-pop3-mailbox.c"
 {
-#line 621 "mn-pop3-mailbox.gob"
+#line 655 "mn-pop3-mailbox.gob"
 	
     return mn_client_session_write(session, "QUIT");
   }}
-#line 1070 "mn-pop3-mailbox.c"
+#line 1131 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 625 "mn-pop3-mailbox.gob"
+#line 659 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_handle_quit_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 1076 "mn-pop3-mailbox.c"
+#line 1137 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_quit_cb"
-#line 625 "mn-pop3-mailbox.gob"
+#line 659 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 625 "mn-pop3-mailbox.gob"
+#line 659 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 625 "mn-pop3-mailbox.gob"
+#line 659 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1085 "mn-pop3-mailbox.c"
+#line 1146 "mn-pop3-mailbox.c"
 {
-#line 629 "mn-pop3-mailbox.gob"
+#line 663 "mn-pop3-mailbox.gob"
 	
     switch (response->type)
       {
@@ -1092,29 +1153,27 @@ mn_pop3_mailbox_handle_quit_cb (MNClientSession * session, MNClientSessionRespon
       default:			return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
       }
   }}
-#line 1096 "mn-pop3-mailbox.c"
+#line 1157 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 638 "mn-pop3-mailbox.gob"
-static MNAuthenticatedMailboxResult 
-___19_mn_pop3_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authenticated_mailbox G_GNUC_UNUSED, GError ** err)
-#line 1102 "mn-pop3-mailbox.c"
-#define PARENT_HANDLER(___authenticated_mailbox,___err) \
-	((MN_AUTHENTICATED_MAILBOX_CLASS(parent_class)->impl_authenticated_check)? \
-		(* MN_AUTHENTICATED_MAILBOX_CLASS(parent_class)->impl_authenticated_check)(___authenticated_mailbox,___err): \
-		((MNAuthenticatedMailboxResult )0))
-{
-#define __GOB_FUNCTION__ "MN:POP3:Mailbox::impl_authenticated_check"
-#line 638 "mn-pop3-mailbox.gob"
-	g_return_val_if_fail (authenticated_mailbox != NULL, (MNAuthenticatedMailboxResult )0);
-#line 638 "mn-pop3-mailbox.gob"
-	g_return_val_if_fail (MN_IS_AUTHENTICATED_MAILBOX (authenticated_mailbox), (MNAuthenticatedMailboxResult )0);
-#line 1113 "mn-pop3-mailbox.c"
-{
-#line 641 "mn-pop3-mailbox.gob"
+#line 672 "mn-pop3-mailbox.gob"
+static void 
+___1b_mn_pop3_mailbox_impl_check (MNMailbox * mailbox G_GNUC_UNUSED)
+#line 1163 "mn-pop3-mailbox.c"
+#define PARENT_HANDLER(___mailbox) \
+	{ if(MN_MAILBOX_CLASS(parent_class)->impl_check) \
+		(* MN_MAILBOX_CLASS(parent_class)->impl_check)(___mailbox); }
+{
+#define __GOB_FUNCTION__ "MN:POP3:Mailbox::impl_check"
+#line 672 "mn-pop3-mailbox.gob"
+	g_return_if_fail (mailbox != NULL);
+#line 672 "mn-pop3-mailbox.gob"
+	g_return_if_fail (MN_IS_MAILBOX (mailbox));
+#line 1173 "mn-pop3-mailbox.c"
+{
+#line 674 "mn-pop3-mailbox.gob"
 	
-    MNMailbox *mailbox = MN_MAILBOX(authenticated_mailbox);
-    Self *self = SELF(authenticated_mailbox);
+    Self *self = SELF(mailbox);
     MNClientSessionState states[] = {
       { STATE_GREETING,		NULL,			self_handle_greeting_cb },
       { STATE_CAPA,		self_enter_capa_cb,	self_handle_capa_cb },
@@ -1143,10 +1202,17 @@ ___19_mn_pop3_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authent
       self_response_free_cb,
       self_custom_handler_cb,
       NULL,			/* pre_read */
-      NULL			/* post_read */
+      NULL,			/* post_read */
+#ifdef WITH_SASL
+      self_sasl_get_username_cb,
+      self_sasl_get_password_cb,
+#endif
     };
     MNClientSessionPrivate priv;
     gboolean status;
+    GError *err = NULL;
+
+    PARENT_HANDLER(mailbox);
 
     if (selfp->login_delay && selfp->authentication_timer)
       {
@@ -1171,6 +1237,7 @@ ___19_mn_pop3_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authent
   
     memset(&priv, 0, sizeof(priv));
     priv.mailbox = mailbox;
+    priv.authenticated_mailbox = MN_AUTHENTICATED_MAILBOX(mailbox);
     priv.self = self;
 
     status = mn_client_session_run(states,
@@ -1180,10 +1247,20 @@ ___19_mn_pop3_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authent
 #endif
 				   mailbox->uri->hostname,
 				   mailbox->uri->port,
-				   mailbox->uri->username,
-				   MN_AUTHENTICATED_MAILBOX(self)->password,
 				   &priv,
-				   err);
+				   &err);
+
+    GDK_THREADS_ENTER();
+
+    if (! status)
+      {
+	mn_mailbox_set_error(mailbox, "%s", err->message);
+	g_error_free(err);
+      }
+    mn_mailbox_end_check(mailbox);
+
+    gdk_flush();
+    GDK_THREADS_LEAVE();
 
     g_free(priv.apop_timestamp);
     eel_g_slist_free_deep(priv.auth_mechanisms);
@@ -1193,53 +1270,47 @@ ___19_mn_pop3_mailbox_impl_authenticated_check (MNAuthenticatedMailbox * authent
     if (priv.current_message)
       g_string_free(priv.current_message, TRUE);
 #endif
-
-    return status
-      ? MN_AUTHENTICATED_MAILBOX_OK
-      : (priv.authentication_failed
-	 ? MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION
-	 : MN_AUTHENTICATED_MAILBOX_ERROR_OTHER);
   }}
-#line 1204 "mn-pop3-mailbox.c"
+#line 1275 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 730 "mn-pop3-mailbox.gob"
+#line 774 "mn-pop3-mailbox.gob"
 static void 
 mn_pop3_mailbox_notice_cb (MNClientSession * session, const char * str, MNClientSessionPrivate * priv)
-#line 1211 "mn-pop3-mailbox.c"
+#line 1282 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::notice_cb"
-#line 730 "mn-pop3-mailbox.gob"
+#line 774 "mn-pop3-mailbox.gob"
 	g_return_if_fail (session != NULL);
-#line 730 "mn-pop3-mailbox.gob"
+#line 774 "mn-pop3-mailbox.gob"
 	g_return_if_fail (str != NULL);
-#line 730 "mn-pop3-mailbox.gob"
+#line 774 "mn-pop3-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 1220 "mn-pop3-mailbox.c"
+#line 1291 "mn-pop3-mailbox.c"
 {
-#line 734 "mn-pop3-mailbox.gob"
+#line 778 "mn-pop3-mailbox.gob"
 	
     mn_mailbox_notice(priv->mailbox, "%s", str);
   }}
-#line 1226 "mn-pop3-mailbox.c"
+#line 1297 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 738 "mn-pop3-mailbox.gob"
+#line 782 "mn-pop3-mailbox.gob"
 static MNClientSessionResponse * 
 mn_pop3_mailbox_response_new_cb (MNClientSession * session, const char * input, MNClientSessionPrivate * priv)
-#line 1232 "mn-pop3-mailbox.c"
+#line 1303 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::response_new_cb"
-#line 738 "mn-pop3-mailbox.gob"
+#line 782 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (MNClientSessionResponse * )0);
-#line 738 "mn-pop3-mailbox.gob"
+#line 782 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (input != NULL, (MNClientSessionResponse * )0);
-#line 738 "mn-pop3-mailbox.gob"
+#line 782 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (MNClientSessionResponse * )0);
-#line 1241 "mn-pop3-mailbox.c"
+#line 1312 "mn-pop3-mailbox.c"
 {
-#line 742 "mn-pop3-mailbox.gob"
+#line 786 "mn-pop3-mailbox.gob"
 	
     MNClientSessionResponse *response = NULL;
 
@@ -1298,46 +1369,46 @@ mn_pop3_mailbox_response_new_cb (MNClientSession * session, const char * input, 
     
     return response;
   }}
-#line 1302 "mn-pop3-mailbox.c"
+#line 1373 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 801 "mn-pop3-mailbox.gob"
+#line 845 "mn-pop3-mailbox.gob"
 static void 
 mn_pop3_mailbox_response_free_cb (MNClientSession * session, MNClientSessionResponse * response, MNClientSessionPrivate * priv)
-#line 1308 "mn-pop3-mailbox.c"
+#line 1379 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::response_free_cb"
-#line 801 "mn-pop3-mailbox.gob"
+#line 845 "mn-pop3-mailbox.gob"
 	g_return_if_fail (session != NULL);
-#line 801 "mn-pop3-mailbox.gob"
+#line 845 "mn-pop3-mailbox.gob"
 	g_return_if_fail (response != NULL);
-#line 801 "mn-pop3-mailbox.gob"
+#line 845 "mn-pop3-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 1317 "mn-pop3-mailbox.c"
+#line 1388 "mn-pop3-mailbox.c"
 {
-#line 805 "mn-pop3-mailbox.gob"
+#line 849 "mn-pop3-mailbox.gob"
 	
     g_free(response->arguments);
     g_free(response);
   }}
-#line 1324 "mn-pop3-mailbox.c"
+#line 1395 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 810 "mn-pop3-mailbox.gob"
+#line 854 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_custom_handler_cb (MNClientSession * session, MNClientSessionResponse * response, int result, MNClientSessionPrivate * priv)
-#line 1330 "mn-pop3-mailbox.c"
+#line 1401 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::custom_handler_cb"
-#line 810 "mn-pop3-mailbox.gob"
+#line 854 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (session != NULL, (int )0);
-#line 810 "mn-pop3-mailbox.gob"
+#line 854 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (response != NULL, (int )0);
-#line 810 "mn-pop3-mailbox.gob"
+#line 854 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1339 "mn-pop3-mailbox.c"
+#line 1410 "mn-pop3-mailbox.c"
 {
-#line 815 "mn-pop3-mailbox.gob"
+#line 859 "mn-pop3-mailbox.gob"
 	
     switch (result)
       {
@@ -1353,20 +1424,20 @@ mn_pop3_mailbox_custom_handler_cb (MNClientSession * session, MNClientSessionRes
       g_return_val_if_reached(0);
       }
   }}
-#line 1357 "mn-pop3-mailbox.c"
+#line 1428 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 831 "mn-pop3-mailbox.gob"
+#line 875 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_session_authenticate (MNClientSessionPrivate * priv)
-#line 1363 "mn-pop3-mailbox.c"
+#line 1434 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::session_authenticate"
-#line 831 "mn-pop3-mailbox.gob"
+#line 875 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1368 "mn-pop3-mailbox.c"
+#line 1439 "mn-pop3-mailbox.c"
 {
-#line 833 "mn-pop3-mailbox.gob"
+#line 877 "mn-pop3-mailbox.gob"
 	
     if (priv->mailbox->uri->authmech)
       {
@@ -1402,20 +1473,20 @@ mn_pop3_mailbox_session_authenticate (MNClientSessionPrivate * priv)
 	  return STATE_USER;
       }
   }}
-#line 1406 "mn-pop3-mailbox.c"
+#line 1477 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 869 "mn-pop3-mailbox.gob"
+#line 913 "mn-pop3-mailbox.gob"
 static int 
-mn_pop3_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv, gboolean tried_apop)
-#line 1412 "mn-pop3-mailbox.c"
+mn_pop3_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv, gboolean tried_apop, gboolean tried_pass)
+#line 1483 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::session_authenticate_fallback"
-#line 869 "mn-pop3-mailbox.gob"
+#line 913 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1417 "mn-pop3-mailbox.c"
+#line 1488 "mn-pop3-mailbox.c"
 {
-#line 872 "mn-pop3-mailbox.gob"
+#line 917 "mn-pop3-mailbox.gob"
 	
     if (! priv->mailbox->uri->authmech)
       {
@@ -1424,30 +1495,35 @@ mn_pop3_mailbox_session_authenticate_fallback (MNClientSessionPrivate * priv, gb
 	    mn_client_session_notice(priv->session, _("falling back to APOP authentication"));
 	    return STATE_APOP;
 	  }
-	else
+	else if (! tried_pass)
 	  {
 	    mn_client_session_notice(priv->session, _("falling back to USER/PASS authentication"));
 	    return STATE_USER;
 	  }
       }
 
-    priv->authentication_failed = TRUE;
-    return mn_client_session_error(priv->session, _("authentication failed"));
+    if (! priv->mailbox->uri->password)
+      {
+	mn_authenticated_mailbox_authentication_failed(priv->authenticated_mailbox);
+	return self_session_authenticate(priv);
+      }
+    else
+      return mn_client_session_error(priv->session, _("authentication failed"));
   }}
-#line 1438 "mn-pop3-mailbox.c"
+#line 1514 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 891 "mn-pop3-mailbox.gob"
+#line 941 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_session_authenticated (MNClientSessionPrivate * priv)
-#line 1444 "mn-pop3-mailbox.c"
+#line 1520 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::session_authenticated"
-#line 891 "mn-pop3-mailbox.gob"
+#line 941 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1449 "mn-pop3-mailbox.c"
+#line 1525 "mn-pop3-mailbox.c"
 {
-#line 893 "mn-pop3-mailbox.gob"
+#line 943 "mn-pop3-mailbox.gob"
 	
     priv->authenticated = TRUE;
     if (priv->self->_priv->login_delay)
@@ -1459,20 +1535,20 @@ mn_pop3_mailbox_session_authenticated (MNClientSessionPrivate * priv)
       }
     return priv->login_delay_user ? STATE_CAPA : self_session_check_mail(priv);
   }}
-#line 1463 "mn-pop3-mailbox.c"
+#line 1539 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 905 "mn-pop3-mailbox.gob"
+#line 955 "mn-pop3-mailbox.gob"
 static int 
 mn_pop3_mailbox_session_check_mail (MNClientSessionPrivate * priv)
-#line 1469 "mn-pop3-mailbox.c"
+#line 1545 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::session_check_mail"
-#line 905 "mn-pop3-mailbox.gob"
+#line 955 "mn-pop3-mailbox.gob"
 	g_return_val_if_fail (priv != NULL, (int )0);
-#line 1474 "mn-pop3-mailbox.c"
+#line 1550 "mn-pop3-mailbox.c"
 {
-#line 907 "mn-pop3-mailbox.gob"
+#line 957 "mn-pop3-mailbox.gob"
 	
 #ifdef WITH_MIME
     return STATE_LIST;
@@ -1480,44 +1556,44 @@ mn_pop3_mailbox_session_check_mail (MNClientSessionPrivate * priv)
     return STATE_STAT;
 #endif
   }}
-#line 1484 "mn-pop3-mailbox.c"
+#line 1560 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 915 "mn-pop3-mailbox.gob"
+#line 965 "mn-pop3-mailbox.gob"
 static void 
 mn_pop3_mailbox_session_set_error_from_arguments (MNClientSessionPrivate * priv, MNClientSessionResponse * response)
-#line 1490 "mn-pop3-mailbox.c"
+#line 1566 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::session_set_error_from_arguments"
-#line 915 "mn-pop3-mailbox.gob"
+#line 965 "mn-pop3-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 915 "mn-pop3-mailbox.gob"
+#line 965 "mn-pop3-mailbox.gob"
 	g_return_if_fail (response != NULL);
-#line 1497 "mn-pop3-mailbox.c"
+#line 1573 "mn-pop3-mailbox.c"
 {
-#line 918 "mn-pop3-mailbox.gob"
+#line 968 "mn-pop3-mailbox.gob"
 	
     if (response->arguments)
       mn_client_session_error(priv->session, "\"%s\"", response->arguments);
     else
       mn_client_session_error(priv->session, _("unknown server error"));
   }}
-#line 1506 "mn-pop3-mailbox.c"
+#line 1582 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
 
-#line 925 "mn-pop3-mailbox.gob"
+#line 975 "mn-pop3-mailbox.gob"
 static void 
 mn_pop3_mailbox_handle_list_response (MNClientSessionPrivate * priv, MNClientSessionResponse * response)
-#line 1512 "mn-pop3-mailbox.c"
+#line 1588 "mn-pop3-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:POP3:Mailbox::handle_list_response"
-#line 925 "mn-pop3-mailbox.gob"
+#line 975 "mn-pop3-mailbox.gob"
 	g_return_if_fail (priv != NULL);
-#line 925 "mn-pop3-mailbox.gob"
+#line 975 "mn-pop3-mailbox.gob"
 	g_return_if_fail (response != NULL);
-#line 1519 "mn-pop3-mailbox.c"
+#line 1595 "mn-pop3-mailbox.c"
 {
-#line 928 "mn-pop3-mailbox.gob"
+#line 978 "mn-pop3-mailbox.gob"
 	
     switch (response->type)
       {
@@ -1533,5 +1609,5 @@ mn_pop3_mailbox_handle_list_response (MNClientSessionPrivate * priv, MNClientSes
 	break;
       }
   }}
-#line 1537 "mn-pop3-mailbox.c"
+#line 1613 "mn-pop3-mailbox.c"
 #undef __GOB_FUNCTION__
diff --git a/src/mn-pop3-mailbox.gob b/src/mn-pop3-mailbox.gob
@@ -41,6 +41,7 @@ requires 2.0.10
 #include <libgnomevfs/gnome-vfs-utils.h>
 #include <eel/eel.h>
 #include "mn-mailbox-private.h"
+#include "mn-authenticated-mailbox-private.h"
 #include "mn-client-session.h"
 #include "mn-util.h"
 #include "mn-md5.h"
@@ -78,27 +79,27 @@ requires 2.0.10
 
   struct _MNClientSessionPrivate
   {
-    MNMailbox		*mailbox;
-    MNPOP3Mailbox	*self;
-    MNClientSession	*session;
-    gboolean		in_list;
-    char		*apop_timestamp;
-    GSList		*auth_mechanisms;
+    MNMailbox			*mailbox;
+    MNAuthenticatedMailbox	*authenticated_mailbox;
+    MNPOP3Mailbox		*self;
+    MNClientSession		*session;
+    gboolean			in_list;
+    char			*apop_timestamp;
+    GSList			*auth_mechanisms;
 #ifdef WITH_SSL
-    gboolean		stls_supported;
-    gboolean		stls_completed;
+    gboolean			stls_supported;
+    gboolean			stls_completed;
 #endif
 #ifdef WITH_SASL
-    const char		*sasl_mechanism;
+    const char			*sasl_mechanism;
 #endif
-    gboolean		authentication_failed;
-    gboolean		authenticated;
-    gboolean		login_delay_user;
+    gboolean			authenticated;
+    gboolean			login_delay_user;
 #ifdef WITH_MIME
-    GSList		*message_numbers;
-    GSList		*current_message_number;
-    GSList		*messages;
-    GString		*current_message;
+    GSList			*message_numbers;
+    GSList			*current_message_number;
+    GSList			*messages;
+    GString			*current_message;
 #endif
   };
 
@@ -314,6 +315,29 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
 #endif /* WITH_SSL */
   }
   
+  private const char *
+    sasl_get_username_cb (MNClientSession *session (check null),
+			  MNClientSessionPrivate *priv (check null))
+  {
+#ifdef WITH_SASL
+    return priv->mailbox->uri->username;
+#else
+    g_return_val_if_reached(NULL);
+#endif /* WITH_SASL */
+  }
+
+  private const char *
+    sasl_get_password_cb (MNClientSession *session (check null),
+			  MNClientSessionPrivate *priv (check null))
+  {
+#ifdef WITH_SASL
+    mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+    return priv->authenticated_mailbox->password;
+#else
+    g_return_val_if_reached(NULL);
+#endif /* WITH_SASL */
+  }
+
   private int
     enter_auth_cb (MNClientSession *session (check null),
 		   MNClientSessionPrivate *priv (check null))
@@ -324,10 +348,12 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
 						    priv->auth_mechanisms,
 						    priv->mailbox->uri->authmech,
 						    &priv->sasl_mechanism,
-					  /* [1] */ TRUE))
+						    TRUE /* [1] */))
       return mn_client_session_write(session, "AUTH %s", priv->sasl_mechanism);
     else
-      return self_session_authenticate_fallback(priv, FALSE);
+      return priv->authenticated_mailbox->cancelled
+	? STATE_QUIT
+	: self_session_authenticate_fallback(priv, FALSE, FALSE);
 
     /*
      * [1] http://www.ietf.org/internet-drafts/draft-siemborski-rfc1734bis-03.txt
@@ -353,7 +379,9 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
 	  : MN_CLIENT_SESSION_RESULT_END;
 	
       case RESPONSE_ERR:
-	return self_session_authenticate_fallback(priv, FALSE);
+	return priv->authenticated_mailbox->cancelled
+	  ? STATE_QUIT
+	  : self_session_authenticate_fallback(priv, FALSE, FALSE);
 	
       case RESPONSE_CONTINUATION:
 	return mn_client_session_sasl_authentication_step(session, response->arguments);
@@ -374,10 +402,14 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
     char buf[33];
   
     g_return_val_if_fail(priv->apop_timestamp != NULL, 0);
-    
+
+    mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+    if (! priv->authenticated_mailbox->password)
+      return STATE_QUIT;
+
     mn_md5_init(&context);
     mn_md5_update(&context, priv->apop_timestamp, strlen(priv->apop_timestamp));
-    mn_md5_update(&context, MN_AUTHENTICATED_MAILBOX(priv->self)->password, strlen(MN_AUTHENTICATED_MAILBOX(priv->self)->password));
+    mn_md5_update(&context, priv->authenticated_mailbox->password, strlen(priv->authenticated_mailbox->password));
     mn_md5_end(&context, buf);
 
     return mn_client_session_write(session, "APOP %s %s", priv->mailbox->uri->username, buf);
@@ -394,7 +426,7 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
 	return self_session_authenticated(priv);
 	
       case RESPONSE_ERR:
-	return self_session_authenticate_fallback(priv, TRUE);
+	return self_session_authenticate_fallback(priv, TRUE, FALSE);
 
       default:
 	return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
@@ -419,7 +451,6 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
 	return STATE_PASS;
 
       case RESPONSE_ERR:
-	priv->authentication_failed = TRUE;
 	return RESULT_ERROR_QUIT;
 
       default:
@@ -431,7 +462,11 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
     enter_pass_cb (MNClientSession *session (check null),
 		   MNClientSessionPrivate *priv (check null))
   {
-    return mn_client_session_write(session, "PASS %s", MN_AUTHENTICATED_MAILBOX(priv->self)->password);
+    mn_authenticated_mailbox_fill_password(priv->authenticated_mailbox);
+    if (! priv->authenticated_mailbox->password)
+      return STATE_QUIT;
+
+    return mn_client_session_write(session, "PASS %s", priv->authenticated_mailbox->password);
   }
 
   private int
@@ -445,8 +480,7 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
 	return self_session_authenticated(priv);
 
       case RESPONSE_ERR:
-	priv->authentication_failed = TRUE;
-	return RESULT_ERROR_QUIT;
+	return self_session_authenticate_fallback(priv, TRUE, TRUE);
 
       default:
 	return MN_CLIENT_SESSION_RESULT_BAD_RESPONSE_FOR_CONTEXT;
@@ -635,12 +669,10 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
       }
   }
   
-  override (MN:Authenticated:Mailbox) MNAuthenticatedMailboxResult
-    impl_authenticated_check (MN:Authenticated:Mailbox *authenticated_mailbox (check null type),
-			      GError **err)
+  override (MN:Mailbox) void
+    impl_check (MN:Mailbox *mailbox (check null type))
   {
-    MNMailbox *mailbox = MN_MAILBOX(authenticated_mailbox);
-    Self *self = SELF(authenticated_mailbox);
+    Self *self = SELF(mailbox);
     MNClientSessionState states[] = {
       { STATE_GREETING,		NULL,			self_handle_greeting_cb },
       { STATE_CAPA,		self_enter_capa_cb,	self_handle_capa_cb },
@@ -669,10 +701,17 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
       self_response_free_cb,
       self_custom_handler_cb,
       NULL,			/* pre_read */
-      NULL			/* post_read */
+      NULL,			/* post_read */
+#ifdef WITH_SASL
+      self_sasl_get_username_cb,
+      self_sasl_get_password_cb,
+#endif
     };
     MNClientSessionPrivate priv;
     gboolean status;
+    GError *err = NULL;
+
+    PARENT_HANDLER(mailbox);
 
     if (selfp->login_delay && selfp->authentication_timer)
       {
@@ -697,6 +736,7 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
   
     memset(&priv, 0, sizeof(priv));
     priv.mailbox = mailbox;
+    priv.authenticated_mailbox = MN_AUTHENTICATED_MAILBOX(mailbox);
     priv.self = self;
 
     status = mn_client_session_run(states,
@@ -706,10 +746,20 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
 #endif
 				   mailbox->uri->hostname,
 				   mailbox->uri->port,
-				   mailbox->uri->username,
-				   MN_AUTHENTICATED_MAILBOX(self)->password,
 				   &priv,
-				   err);
+				   &err);
+
+    GDK_THREADS_ENTER();
+
+    if (! status)
+      {
+	mn_mailbox_set_error(mailbox, "%s", err->message);
+	g_error_free(err);
+      }
+    mn_mailbox_end_check(mailbox);
+
+    gdk_flush();
+    GDK_THREADS_LEAVE();
 
     g_free(priv.apop_timestamp);
     eel_g_slist_free_deep(priv.auth_mechanisms);
@@ -719,12 +769,6 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
     if (priv.current_message)
       g_string_free(priv.current_message, TRUE);
 #endif
-
-    return status
-      ? MN_AUTHENTICATED_MAILBOX_OK
-      : (priv.authentication_failed
-	 ? MN_AUTHENTICATED_MAILBOX_ERROR_AUTHENTICATION
-	 : MN_AUTHENTICATED_MAILBOX_ERROR_OTHER);
   }
   
   private void
@@ -868,7 +912,8 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
   
   private int
     session_authenticate_fallback (MNClientSessionPrivate *priv (check null),
-				   gboolean tried_apop)
+				   gboolean tried_apop,
+				   gboolean tried_pass)
   {
     if (! priv->mailbox->uri->authmech)
       {
@@ -877,15 +922,20 @@ class MN:POP3:Mailbox from MN:Authenticated:Mailbox
 	    mn_client_session_notice(priv->session, _("falling back to APOP authentication"));
 	    return STATE_APOP;
 	  }
-	else
+	else if (! tried_pass)
 	  {
 	    mn_client_session_notice(priv->session, _("falling back to USER/PASS authentication"));
 	    return STATE_USER;
 	  }
       }
 
-    priv->authentication_failed = TRUE;
-    return mn_client_session_error(priv->session, _("authentication failed"));
+    if (! priv->mailbox->uri->password)
+      {
+	mn_authenticated_mailbox_authentication_failed(priv->authenticated_mailbox);
+	return self_session_authenticate(priv);
+      }
+    else
+      return mn_client_session_error(priv->session, _("authentication failed"));
   }
   
   private int
diff --git a/src/mn-shell.c b/src/mn-shell.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:11 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-sylpheed-mailbox.c b/src/mn-sylpheed-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:35 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:10 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
@@ -247,17 +247,14 @@ ___4_mn_sylpheed_mailbox_impl_check (MNMailbox * self G_GNUC_UNUSED)
     GnomeVFSResult close_result;
     GnomeVFSDirectoryHandle *handle;
     GnomeVFSFileInfo *file_info;
-#ifdef WITH_MIME
     GHashTable *seen_numbers;
+#ifdef WITH_MIME
     GSList *messages = NULL;
-#else /* WITH_MIME */
-    int total_count = 0;
-    int mark_count = 0;
-#endif /* WITH_MIME */
+#else
+    gboolean has_new = FALSE;
+#endif
 
-#ifdef WITH_MIME
     seen_numbers = self_get_seen_numbers(SELF(self));
-#endif
 
     result = gnome_vfs_directory_open_from_uri(&handle, self->uri->vfs, GNOME_VFS_FILE_INFO_FOLLOW_LINKS);
     if (result != GNOME_VFS_OK)
@@ -275,42 +272,30 @@ ___4_mn_sylpheed_mailbox_impl_check (MNMailbox * self G_GNUC_UNUSED)
 
     file_info = gnome_vfs_file_info_new();
     while ((result = gnome_vfs_directory_read_next(handle, file_info)) == GNOME_VFS_OK)
-      {
-	if (file_info->name[0] != '.')
-	  {
-	    if (mn_str_isnumeric(file_info->name))
-	      {
-#ifdef WITH_MIME
-		int num = atoi(file_info->name);
+      if (mn_str_isnumeric(file_info->name))
+	{
+	  int num = atoi(file_info->name);
 		
-		if (! g_hash_table_lookup(seen_numbers, GINT_TO_POINTER(num)))
-		  {
-		    GnomeVFSURI *message_uri;
-
-		    message_uri = gnome_vfs_uri_append_file_name(self->uri->vfs, file_info->name);
-		    messages = g_slist_append(messages, mn_message_new_from_uri(self->uri, message_uri));
-		    gnome_vfs_uri_unref(message_uri);
-		  }
+	  if (! g_hash_table_lookup(seen_numbers, GINT_TO_POINTER(num)))
+	    {
+#ifdef WITH_MIME
+	      GnomeVFSURI *message_uri;
+
+	      message_uri = gnome_vfs_uri_append_file_name(self->uri->vfs, file_info->name);
+	      messages = g_slist_append(messages, mn_message_new_from_uri(self->uri, message_uri));
+	      gnome_vfs_uri_unref(message_uri);
 #else /* WITH_MIME */
-		total_count++;
-#endif
-	      }
-	  }
-#ifndef WITH_MIME
-	else if (! strcmp(file_info->name, SYLPHEED_MARK_FILE) && file_info->valid_fields & GNOME_VFS_FILE_INFO_FIELDS_SIZE)
-	  /*
-	   * Format of a Sylpheed markfile:
-	   * int version, int num, guint32 flags, int num, guint32 flags, ...
-	   */
-	  mark_count = (file_info->size - sizeof(int)) / (sizeof(int) + sizeof(guint32));
-#endif /* ! WITH_MIME */
-      }
+	      has_new = TRUE;
+	      break;
+#endif /* WITH_MIME */
+	    }
+	}
     gnome_vfs_file_info_unref(file_info);
     close_result = gnome_vfs_directory_close(handle);
     
     GDK_THREADS_ENTER();
     
-    if (result == GNOME_VFS_ERROR_EOF)
+    if (result == GNOME_VFS_ERROR_EOF || result == GNOME_VFS_OK)
       {
 	if (close_result == GNOME_VFS_OK)
 	  {
@@ -318,7 +303,7 @@ ___4_mn_sylpheed_mailbox_impl_check (MNMailbox * self G_GNUC_UNUSED)
 	    mn_mailbox_set_has_new(self, messages != NULL);
 	    mn_mailbox_set_messages(self, messages);
 #else /* WITH_MIME */
-	    mn_mailbox_set_has_new(self, total_count != mark_count);
+	    mn_mailbox_set_has_new(self, has_new);
 #endif
 	  }
 	else
@@ -331,30 +316,30 @@ ___4_mn_sylpheed_mailbox_impl_check (MNMailbox * self G_GNUC_UNUSED)
     gdk_flush();
     GDK_THREADS_LEAVE();
 
-#ifdef WITH_MIME
     g_hash_table_destroy(seen_numbers);
+
+#ifdef WITH_MIME
     mn_g_object_slist_free(messages);
 #endif
   }}
-#line 340 "mn-sylpheed-mailbox.c"
+#line 326 "mn-sylpheed-mailbox.c"
 #undef __GOB_FUNCTION__
 #undef PARENT_HANDLER
 
-#line 195 "mn-sylpheed-mailbox.gob"
+#line 181 "mn-sylpheed-mailbox.gob"
 static GHashTable * 
 mn_sylpheed_mailbox_get_seen_numbers (MNSylpheedMailbox * self)
-#line 347 "mn-sylpheed-mailbox.c"
+#line 333 "mn-sylpheed-mailbox.c"
 {
 #define __GOB_FUNCTION__ "MN:Sylpheed:Mailbox::get_seen_numbers"
-#line 195 "mn-sylpheed-mailbox.gob"
+#line 181 "mn-sylpheed-mailbox.gob"
 	g_return_val_if_fail (self != NULL, (GHashTable * )0);
-#line 195 "mn-sylpheed-mailbox.gob"
+#line 181 "mn-sylpheed-mailbox.gob"
 	g_return_val_if_fail (MN_IS_SYLPHEED_MAILBOX (self), (GHashTable * )0);
-#line 354 "mn-sylpheed-mailbox.c"
+#line 340 "mn-sylpheed-mailbox.c"
 {
-#line 197 "mn-sylpheed-mailbox.gob"
+#line 183 "mn-sylpheed-mailbox.gob"
 	
-#ifdef WITH_MIME
     GHashTable *seen_numbers;
     char *uri;
     int file_size;
@@ -385,9 +370,6 @@ mn_sylpheed_mailbox_get_seen_numbers (MNSylpheedMailbox * self)
     g_free(uri);
     
     return seen_numbers;
-#else /* WITH_MIME */
-    g_return_val_if_reached(NULL);
-#endif
   }}
-#line 393 "mn-sylpheed-mailbox.c"
+#line 375 "mn-sylpheed-mailbox.c"
 #undef __GOB_FUNCTION__
diff --git a/src/mn-sylpheed-mailbox.gob b/src/mn-sylpheed-mailbox.gob
@@ -102,17 +102,14 @@ class MN:Sylpheed:Mailbox from MN:Mailbox
     GnomeVFSResult close_result;
     GnomeVFSDirectoryHandle *handle;
     GnomeVFSFileInfo *file_info;
-#ifdef WITH_MIME
     GHashTable *seen_numbers;
+#ifdef WITH_MIME
     GSList *messages = NULL;
-#else /* WITH_MIME */
-    int total_count = 0;
-    int mark_count = 0;
-#endif /* WITH_MIME */
+#else
+    gboolean has_new = FALSE;
+#endif
 
-#ifdef WITH_MIME
     seen_numbers = self_get_seen_numbers(SELF(self));
-#endif
 
     result = gnome_vfs_directory_open_from_uri(&handle, self->uri->vfs, GNOME_VFS_FILE_INFO_FOLLOW_LINKS);
     if (result != GNOME_VFS_OK)
@@ -130,42 +127,30 @@ class MN:Sylpheed:Mailbox from MN:Mailbox
 
     file_info = gnome_vfs_file_info_new();
     while ((result = gnome_vfs_directory_read_next(handle, file_info)) == GNOME_VFS_OK)
-      {
-	if (file_info->name[0] != '.')
-	  {
-	    if (mn_str_isnumeric(file_info->name))
-	      {
-#ifdef WITH_MIME
-		int num = atoi(file_info->name);
+      if (mn_str_isnumeric(file_info->name))
+	{
+	  int num = atoi(file_info->name);
 		
-		if (! g_hash_table_lookup(seen_numbers, GINT_TO_POINTER(num)))
-		  {
-		    GnomeVFSURI *message_uri;
-
-		    message_uri = gnome_vfs_uri_append_file_name(self->uri->vfs, file_info->name);
-		    messages = g_slist_append(messages, mn_message_new_from_uri(self->uri, message_uri));
-		    gnome_vfs_uri_unref(message_uri);
-		  }
+	  if (! g_hash_table_lookup(seen_numbers, GINT_TO_POINTER(num)))
+	    {
+#ifdef WITH_MIME
+	      GnomeVFSURI *message_uri;
+
+	      message_uri = gnome_vfs_uri_append_file_name(self->uri->vfs, file_info->name);
+	      messages = g_slist_append(messages, mn_message_new_from_uri(self->uri, message_uri));
+	      gnome_vfs_uri_unref(message_uri);
 #else /* WITH_MIME */
-		total_count++;
-#endif
-	      }
-	  }
-#ifndef WITH_MIME
-	else if (! strcmp(file_info->name, SYLPHEED_MARK_FILE) && file_info->valid_fields & GNOME_VFS_FILE_INFO_FIELDS_SIZE)
-	  /*
-	   * Format of a Sylpheed markfile:
-	   * int version, int num, guint32 flags, int num, guint32 flags, ...
-	   */
-	  mark_count = (file_info->size - sizeof(int)) / (sizeof(int) + sizeof(guint32));
-#endif /* ! WITH_MIME */
-      }
+	      has_new = TRUE;
+	      break;
+#endif /* WITH_MIME */
+	    }
+	}
     gnome_vfs_file_info_unref(file_info);
     close_result = gnome_vfs_directory_close(handle);
     
     GDK_THREADS_ENTER();
     
-    if (result == GNOME_VFS_ERROR_EOF)
+    if (result == GNOME_VFS_ERROR_EOF || result == GNOME_VFS_OK)
       {
 	if (close_result == GNOME_VFS_OK)
 	  {
@@ -173,7 +158,7 @@ class MN:Sylpheed:Mailbox from MN:Mailbox
 	    mn_mailbox_set_has_new(self, messages != NULL);
 	    mn_mailbox_set_messages(self, messages);
 #else /* WITH_MIME */
-	    mn_mailbox_set_has_new(self, total_count != mark_count);
+	    mn_mailbox_set_has_new(self, has_new);
 #endif
 	  }
 	else
@@ -186,8 +171,9 @@ class MN:Sylpheed:Mailbox from MN:Mailbox
     gdk_flush();
     GDK_THREADS_LEAVE();
 
-#ifdef WITH_MIME
     g_hash_table_destroy(seen_numbers);
+
+#ifdef WITH_MIME
     mn_g_object_slist_free(messages);
 #endif
   }
@@ -195,7 +181,6 @@ class MN:Sylpheed:Mailbox from MN:Mailbox
   private GHashTable *
     get_seen_numbers (self)
   {
-#ifdef WITH_MIME
     GHashTable *seen_numbers;
     char *uri;
     int file_size;
@@ -226,8 +211,5 @@ class MN:Sylpheed:Mailbox from MN:Mailbox
     g_free(uri);
     
     return seen_numbers;
-#else /* WITH_MIME */
-    g_return_val_if_reached(NULL);
-#endif
   }
 }
diff --git a/src/mn-system-mailbox-properties.c b/src/mn-system-mailbox-properties.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:11 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-tooltips.c b/src/mn-tooltips.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:11 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-unsupported-mailbox.c b/src/mn-unsupported-mailbox.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:11 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
diff --git a/src/mn-uri.c b/src/mn-uri.c
@@ -1,4 +1,4 @@
-/* Generated by GOB (v2.0.11) on Mon Nov 15 16:14:36 2004
+/* Generated by GOB (v2.0.11) on Thu Nov 25 01:42:11 2004
    (do not edit directly) */
 
 /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
@@ -792,31 +792,36 @@ mn_uri_new_pop (gboolean ssl, gboolean stls, const char * username, const char *
     self->hostname = g_strdup(hostname);
     self->port = port;
     if (stls)
-      self->queries = g_strsplit("STLS", " ", 0);
+      {
+	self->queries = g_new(char *, 2);
+	self->queries[0] = g_strdup("STLS");
+	self->queries[1] = NULL;
+      }
     
     self_post_init(self);
     return self;
   }}
-#line 801 "mn-uri.c"
+#line 805 "mn-uri.c"
 #undef __GOB_FUNCTION__
 
-#line 524 "mn-uri.gob"
+#line 528 "mn-uri.gob"
 MNURI * 
-mn_uri_new_imap (gboolean ssl, gboolean starttls, const char * username, const char * password, const char * authmech, const char * hostname, int port, const char * mailbox)
-#line 807 "mn-uri.c"
+mn_uri_new_imap (gboolean ssl, gboolean starttls, const char * username, const char * password, const char * authmech, const char * hostname, int port, const char * mailbox, gboolean disable_idle)
+#line 811 "mn-uri.c"
 {
 #define __GOB_FUNCTION__ "MN:URI::new_imap"
-#line 524 "mn-uri.gob"
+#line 528 "mn-uri.gob"
 	g_return_val_if_fail (username != NULL, (MNURI * )0);
-#line 524 "mn-uri.gob"
+#line 528 "mn-uri.gob"
 	g_return_val_if_fail (hostname != NULL, (MNURI * )0);
-#line 524 "mn-uri.gob"
+#line 528 "mn-uri.gob"
 	g_return_val_if_fail (mailbox != NULL, (MNURI * )0);
-#line 816 "mn-uri.c"
+#line 820 "mn-uri.c"
 {
-#line 533 "mn-uri.gob"
+#line 538 "mn-uri.gob"
 	
     Self *self;
+    GSList *queries = NULL;
 
     self = GET_NEW;
 
@@ -828,25 +833,39 @@ mn_uri_new_imap (gboolean ssl, gboolean starttls, const char * username, const c
     self->port = port;
     self->path = g_strdup(mailbox);
     if (starttls)
-      self->queries = g_strsplit("STARTTLS", " ", 0);
+      queries = g_slist_append(queries, "STARTTLS");
+    if (disable_idle)
+      queries = g_slist_append(queries, "noidle");
+
+    if (queries)
+      {
+	int i = 0;
+	GSList *l;
+
+	self->queries = g_new(char *, g_slist_length(queries) + 1);
+	MN_LIST_FOREACH(l, queries)
+	  self->queries[i++] = g_strdup(l->data);
+	self->queries[i] = NULL;
+	g_slist_free(queries);
+      }
     
     self_post_init(self);
     return self;
   }}
-#line 837 "mn-uri.c"
+#line 856 "mn-uri.c"
 #undef __GOB_FUNCTION__
 
-#line 552 "mn-uri.gob"
+#line 572 "mn-uri.gob"
 MNURI * 
 mn_uri_new_gmail (const char * username, const char * password)
-#line 843 "mn-uri.c"
+#line 862 "mn-uri.c"
 {
 #define __GOB_FUNCTION__ "MN:URI::new_gmail"
-#line 552 "mn-uri.gob"
+#line 572 "mn-uri.gob"
 	g_return_val_if_fail (username != NULL, (MNURI * )0);
-#line 848 "mn-uri.c"
+#line 867 "mn-uri.c"
 {
-#line 555 "mn-uri.gob"
+#line 575 "mn-uri.gob"
 	
     Self *self;
 
@@ -859,5 +878,5 @@ mn_uri_new_gmail (const char * username, const char * password)
     self_post_init(self);
     return self;
   }}
-#line 863 "mn-uri.c"
+#line 882 "mn-uri.c"
 #undef __GOB_FUNCTION__
diff --git a/src/mn-uri.gob b/src/mn-uri.gob
@@ -515,7 +515,11 @@ class MN:URI from G:Object
     self->hostname = g_strdup(hostname);
     self->port = port;
     if (stls)
-      self->queries = g_strsplit("STLS", " ", 0);
+      {
+	self->queries = g_new(char *, 2);
+	self->queries[0] = g_strdup("STLS");
+	self->queries[1] = NULL;
+      }
     
     self_post_init(self);
     return self;
@@ -529,9 +533,11 @@ class MN:URI from G:Object
 	      const char *authmech,
 	      const char *hostname (check null),
 	      int port,
-	      const char *mailbox (check null))
+	      const char *mailbox (check null),
+	      gboolean disable_idle)
   {
     Self *self;
+    GSList *queries = NULL;
 
     self = GET_NEW;
 
@@ -543,7 +549,21 @@ class MN:URI from G:Object
     self->port = port;
     self->path = g_strdup(mailbox);
     if (starttls)
-      self->queries = g_strsplit("STARTTLS", " ", 0);
+      queries = g_slist_append(queries, "STARTTLS");
+    if (disable_idle)
+      queries = g_slist_append(queries, "noidle");
+
+    if (queries)
+      {
+	int i = 0;
+	GSList *l;
+
+	self->queries = g_new(char *, g_slist_length(queries) + 1);
+	MN_LIST_FOREACH(l, queries)
+	  self->queries[i++] = g_strdup(l->data);
+	self->queries[i] = NULL;
+	g_slist_free(queries);
+      }
     
     self_post_init(self);
     return self;
diff --git a/src/mn-uri.h b/src/mn-uri.h
@@ -112,7 +112,8 @@ MNURI * 	mn_uri_new_imap	(gboolean ssl,
 					const char * authmech,
 					const char * hostname,
 					int port,
-					const char * mailbox);
+					const char * mailbox,
+					gboolean disable_idle);
 MNURI * 	mn_uri_new_gmail	(const char * username,
 					const char * password);
 
diff --git a/src/mn-util.c b/src/mn-util.c
@@ -511,7 +511,7 @@ mn_display_help (GtkWindow *parent, const char *link_id)
 
   if (! gnome_help_display("mail-notification.xml", link_id, &err))
     {
-      mn_error_dialog(parent, NULL, _("Unable to display help"), "%s", err->message);
+      mn_error_dialog(parent, NULL, NULL, _("Unable to display help"), "%s", err->message);
       g_error_free(err);
     }
 }
diff --git a/tests/test-uri.c b/tests/test-uri.c
@@ -123,7 +123,7 @@ main (int argc, char **argv)
   const char *hostnames[] = { NULL, "hostname", "[::1]" };
   int ports[] = { -1, 110, 995, 143, 993, 555 };
   const char *paths[] = { NULL, "INBOX", "foo-path" };
-  const char *queries[] = { NULL, "STARTTLS", "STLS", "foo-query" };
+  const char *queries[] = { NULL, "STARTTLS", "STLS", "foo-query", "noidle" };
   int n_uri = 0;
   int n_canonical = 0;