Fixing password prompts in Trojita

This patch replaces old two dialog boxes with a single prompt one.
Huge thanks to Thomas Lübking for suggesting margin fix!

BUG: 337801
Change-Id: I601c7c9fb718aeb21509a9e755c88b27b8c2a393
Adding proper credits for Illya

Change-Id: Ifc71d93f10c79aec1953c68a8fdc3c5535490cf8
Gui: Window: Add method showMainWindow which use also setVisible

This method is needed for IPC

Change-Id: I1eaf885416f280e44128516b5af316562cb487b1
Gui: Window: Make slotComposeMailUrl, slotComposeMail and invokeContactEditor public

These methods are needed for IPC

Change-Id: Idf08795fe36b1ce57ca09b3b547c701e107cc1eb
Add support for IPC

Change-Id: Ie22cc52666621affe990efdacfb66162643f9b78
Add IPC & help support to main.cpp

Change-Id: I8395e056cf2f7b046e7d6acf823ddbcc1facf900
update desktop file to support mailto

Change-Id: I84db3f16f225efc2220f80dc25b7c984200ef019
Debugging: track item moves as well, not just insertions/removals

Change-Id: I87282746fdf776be41601d11a2c204b512c832d5
Include QtGlobal for Q_ASSERT

Fixes build when building with WITH_DBUS=OFF.

I noticed because the Windows builds are currently broken because of
this. I tested it on my machine and indeed the build was broken when
not using DBus.

Change-Id: I74a0cef2e7fced727478f9f149cab9ba391bad89
Coding style: killing extra semicolons

Seems that I finally managed to notice QtCreator's underlines on that
part of that source file.

Change-Id: I6e0f6af4aed99239fb0c9052493235dd2e11bb0a
Fix header inclusion order

Change-Id: I9218f9cd5428b347da4388b3ee7e6c0298b4536e
Merge "Include QtGlobal for Q_ASSERT"
Fix plugin detection order to be able to depend on QtDBus

Previously, if the QtDBus package wasn't found (maybe if filtered
through the -DCMAKE_DISABLE_FIND_PACKAGE_QTDBUS=true option), the
QtKeychain plugin would not be prevented from being enabled and built.

Change-Id: I6059a5f51fe7e9942dc2caf235bf93c5cd7533e5
Make sure that a required package is properly marked as required

Seems that set_package_properties is not enough, at least not on my
cmake 2.8.12.2.

Change-Id: I00af2e5b32b4ee7fc204324328ff9607d4eed051
Fix disabling of individual modules on Qt5

The WITH_* variables weren't getting updated without this patch, and the
build would therefore fail later on.

Change-Id: I7c7d7bbd3d50b4dd8669c5e8e9ca7c7b30b5a074
Fix Qt5 builds when D-Bus is disabled

Change-Id: I559cff81cd14d03dc956c21cc37b441a239b82e4
Fix IPC code to work with --profile option

Change-Id: Ie76291e407062d872adad00d08cd01d4d811a86d
Remove dead code

The STARTTLS failure handling was changed when I rewrote the state
machine in:

  commit fa009c90ac12f984711d30c01cfaea154bb4974a
  Author: Jan Kundrát <jkt@flaska.net>
  Date:   Tue Mar 27 21:20:22 2012 +0200

    Refactor the connection establishing process

    This change brings us better IMAP compliance through requesting capabilities
    after a LOGIN.

That commit switched from using custom exceptions into using boring
ImapTask-based event signalling. A STARTTLS failure lost its special
status and was instead used as yet another error condition which results
in connection dropping.

Change-Id: Ib0d4df3bdf9a61476163931ebfa251dab21bad29
Remove unused exceptions

These are handled by emitting signals from the various *Socket class
implementations.

Change-Id: Ic90d415210249792ddacccb720d9af4afeab0144
tests: infrastructure for whole-stack item fetching

Change-Id: I27dbff15a885c2838e88a28e5fa1f8cb85e723ad