# The &kontact; Handbook

Cornelius
Schumacher

    &Cornelius.Schumacher.mail;

Antonio
Salazar

    savedfastcool@gmail.com

Daniel
Molkentin

    &Daniel.Molkentin.mail;

2003-2005
&Cornelius.Schumacher;
&FDLNotice;
2016-12-08
5.4.40 (Applications 16.12)

&kontact; is the integrated solution to your personal information management (&PIM;) needs. It combines well-known &kde; applications such as &kmail;, &korganizer; and &kaddressbook; into a single interface to provide easy access to mail, scheduling, address book and other &PIM; functionality.

KDE
kdepim
KMail
Organizer
KAddressBook
KNotes
Akregator
PIM
groupware
Outlook
Evolution

## Introduction

&kontact; is the integrated solution for personal information management. It combines the well-known &kde; applications for email, scheduling, address book, and notes (&kmail;, &korganizer;, &kaddressbook;, and &knotes;) into a single interface. Being based on a true component framework &kontact; provides exactly the same functionality as the stand-alone applications, and adds more features, by making use of the integrated way &kontact; runs the applications as components. Users still retain the choice of which applications are run within &kontact; and which are run stand-alone.

In addition to the functionality of the individual applications &kontact; provides a summary view and advanced drag & drop features between components.

## &kontact; Components

&kontact; integrates the following applications. See the individual application manuals for details on how to use them. These apply to running them as components inside &kontact; just as well as running them stand-alone.

&kmail;

  The &kde; mail client.

&korganizer;

  The &kde; calendar and scheduling application.

&kaddressbook;

  The &kde; contact manager.

&knotes;

  The &kde; sticky notes application.

&akregator;

  The &kde; RSS feed reader.

## The &kontact; Main Window

The Main Window consists of a side pane on the left showing the icons of the available components, a main view on the right which contains the main window of the active component and the usual menu, tool and status bars.

### Side Pane

The Side Pane serves multiple purposes. It allows for switching between components, shows which component is active and serves as the target for drag & drop operations to the different applications.

&kontact;'s Side Pane
&kontact;'s Side Pane

&kontact;'s Side Pane

For switching between components simply click on the corresponding icon. The main window of the component is shown and the menu, tool and status bars are adapted to reflect the functionality of the active component. If you activate a component for the first time there might be a small delay until the main view is changed, because components are loaded on demand. This means you don't waste memory for components not in use.

The icons in the Side Pane can also be used as targets for drag & drop operations. For example, you can drag a mail message from the mail part and drop it on the icon of the to-do list or the calendar to create a to-do or event associated with this mail.

Finally, you can change the size of the icons in the Side Pane. Right-clicking on the Side Pane will give you the option to use Large, Normal, or Small icons, as well as the option to use text only instead of icons.

If you dislike the Side Pane, you can simply hide it by dragging the splitter. An alternative navigation between parts is provided by the Navigator toolbar, which can be freely positioned. See for more on the Navigator toolbar.

### Main View

The view on the right which takes up most of the area of the &kontact; main window shows the active component. This exactly corresponds to the main window the component uses when run as a stand-alone application. The highlighted icon in the Side Pane indicates to which application the Main View belongs. &kontact; remembers the active component when exiting, so the next time &kontact; starts it initially displays that component in the Main View.

&kontact;'s Main View
&kontact;'s Main View

&kontact;'s Main View

In addition, there are two ways of overriding the component that &kontact; starts with. The first is supplying an argument to the &kontact; program call (see ). The second is a setting in the &kontact; Settings dialog that will allow you to always start &kontact; in a certain mode.

To get to it, go to Settings Configure Kontact and click on Kontact in the list.

&kontact; Starting Component Setting
&kontact; Starting Component Setting

&kontact; Starting Component Setting

### Menu, Tool and Status Bars

The menu, tool and status bars are adapted to the active component. That means that, in addition to some common functions like the help menu which are shown for all components, there are actions which are switched when the active component is switched. These actions available for each component are the same as those available when running the application stand-alone.

Views of &kontact;'s menubars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menubars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menubars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menubars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menubars in the Summary View, Mail View, and Calendar View
Views of &kontact;'s menubars in the Summary View, Mail View, and Calendar View

Views of &kontact;'s menubars in the Summary View, Mail View, and Calendar View.

In addition, &kontact; can show the Navigator toolbar, which allows you access to the &kontact; components very much as the Side Pane does. However, unlike the Side Pane, buttons in the Navigator toolbar cannot be used for drag & drop operations to other components.

To activate the toolbar, select Settings Toolbars Shown Navigator.

&kontact;'s Navigator toolbar.
&kontact;'s Navigator toolbar.

&kontact;'s Navigator toolbar.

A special action common to all components is the New action. It allows creation of new objects including emails, contacts, appointments and to-dos independently of which component is active. The component responsible for processing the selected object is started, if required, and takes over the created object.

&kontact;'s New Menu
&kontact;'s New Menu

&kontact;'s New Menu

### Drag and Drop Functionality

&kontact; provides advanced drag and drop functionality between the programs it contains. Following is a brief description of each of the specific drag and drop operations that can be used and the result of each.

#### &kmail; -> &korganizer; To-do List

Dragging a message from &kmail;'s Headers pane to the icon for &korganizer;'s To-do list ( ) will create a new To-do with Mail: Subject as the title and From: Sender To: Receiver Subject: Subject as the contents (where text that looks like this is information from the message itself), as well as the email message itself as an attachment.

#### &kmail; -> &korganizer; Calendar

Dragging a message from &kmail;'s Headers pane to the icon for &korganizer;'s Calendar ( ) will create a new Event with Mail: Subject as the title and From: Sender To: Receiver Subject: Subject as the contents (where text that looks like this is information from the message itself), as well as the email message itself as an attachment.

Note that dragging onto the To-do button creates a To-do, whereas dragging onto the Calendar creates an Event. More on this distinction is available in the &korganizer; documentation

#### &kmail; -> &kaddressbook;

Dragging a message from &kmail;'s Headers pane to the icon for &kaddressbook; ( ) will create a contact from the email address of the sender, unless a contact with that name already exists. A dialog box notifies you of this action.

#### &kaddressbook; -> &korganizer; To-do List

Dragging any number of entries from &kaddressbook;'s main window to the icon for &korganizer;'s To-do List ( ) will create a new To-do with "Meeting" as the title and the selected contacts as attendees.

Note that dragging onto the To-do button creates a To-do, whereas dragging onto the Calendar creates an Event. More on this distinction is available in the &korganizer; documentation

#### &kaddressbook; -> &korganizer; Calendar

Dragging any number of entries from &kaddressbook;'s main window to the icon for &korganizer;'s Calendar ( ) will create a new Event with "Meeting" as the title and the selected contacts as attendees.

Note that dragging onto the To-do button creates a To-do, whereas dragging onto the Calendar creates an Event. More on this distinction is available in the &korganizer; documentation

## The Summary View

The default view when starting &kontact; for the first time is the Summary View. It shows an overview of the most relevant information provided by the selected &kontact; components. These can be notes, imminent appointments or birthdays, due to-dos, new messages &etc; Which information is shown is configurable by selecting the corresponding components in the &kontact; configuration dialog.

&kontact;'s Summary View
&kontact;'s Summary View

&kontact;'s Summary View

### Repositioning Summary View Components

The Summary View allows you to change where the components are in the view itself. So, if you prefer to have your Special Dates in the lower left and your To-dos in the upper right, you can rearrange the Summary View to reflect that.

Repositioning components in the Summary View is as simple as dragging them to the new location you want them to be in. Hold down the &Ctrl; key, click and hold on the gray title area of the component and drag the component to wherever you want it to be. Note that this positioning is done compared to other components. So you can move the Mail component to be below the To-do component in the view, but you cannot place it in a specific position. If you have only one component in your Summary View, the only option is to move it between the two columns of the view; two components can either be two in one column or one in each column; and so on and so forth. Whenever you are dragging a component, you will see a small preview box following your mouse around showing you the component.

Rearranging &kontact;'s Summary View
Rearranging &kontact;'s Summary View

Rearranging &kontact;'s Summary View

## Configuring &kontact;

### &kontact; Configuration Window

When selecting the Configure &kontact; action from the Settings menu, the &kontact; configuration dialog is shown. It provides a list of the configurations for all the active components of &kontact;. You can click the > symbol next to the component name to expand the tree so that you can view the options for that component. Selecting one of the configuration options under a heading will bring up that configuration section on the right.

&kontact;'s Configuration Window
&kontact;'s Configuration Window

&kontact;'s Configuration Window

By checking the box next to the component title you select the component to be visible in the Side Pane and the Summary View. The component is loaded and shown in the Main Window when clicking on its icon in the Side Pane. By unchecking the check box the component is removed from the Side Pane and Summary View. Changes become effective by clicking the Apply or OK buttons.

You can also configure individual components by clicking on the corresponding icon in the Side Pane and then selecting the menu item Configure application name from the Settings menu.

&kontact; Settings Menu When &kmail; is Selected
&kontact; Settings Menu When &kmail; is Selected

&kontact; Settings Menu When &kmail; is Selected

### Configuring &kontact;'s Summary View

When you select Summaries in the &kontact; settings dialog, a page is displayed that allows you to select which summary plugins &kontact; should show in its summary view. Here is a brief list of the currently available plugins and what they do:

Summary Selection
Summary Selection

Summary Selection

#### &kontact; Summary Plugins: Calendar

The Calendar plugin for &kontact;'s Summary View adds an area in the view labeled Upcoming Events. This will display any events that currently apply.

&kontact; Calendar Summary Plugin
&kontact; Calendar Summary Plugin

&kontact; Calendar Summary Plugin

#### &kontact; Summary Plugins: Mail

The Mail plugin for &kontact;'s Summary View adds an area in the view labeled New Messages. This area is updated every time you receive new messages to inform you how many of these messages there are and which folder they are in.

&kontact; Mail Summary Plugin
&kontact; Mail Summary Plugin

&kontact; Mail Summary Plugin

#### &kontact; Summary Plugins: Notes

The Notes plugin for &kontact;'s Summary View adds an area in the view labeled Popup Notes. This area displays all current notes' titles (titles default to the date/time the note was created). Clicking on the title of a note will bring up the Notes area.

&kontact; Notes Summary Plugin
&kontact; Notes Summary Plugin

&kontact; Notes Summary Plugin

#### &kontact; Summary Plugins: To-do List

The To-do List plugin for &kontact;'s Summary View adds an area in the view labeled Pending To-dos. This area contains all current to-dos, including ones that have been completed. It displays the title of the to-do, the percentage of completion, and the current status of the to-do. Note that you can purge all completed to-dos via the &kontact; To-do List. Clicking on a to-do's title will currently do nothing.

&kontact; To-do List Summary Plugin
&kontact; To-do List Summary Plugin

&kontact; To-do List Summary Plugin

#### &kontact; Summary Plugins: Special Dates

The Special Dates plugin for &kontact;'s Summary View adds an area in the view labeled Upcoming Special Dates. This area contains information based on the criteria selected in the configuration area of the plugin in &kontact;'s Summary View configuration. The Special Dates plugin is especially useful because it can display birthdays, anniversaries, holidays, and special occasions from both the calendar and the contact list in one place.

&kontact; Special Dates Plugin
&kontact; Special Dates Plugin

&kontact; Special Dates Plugin

## &kontact; On the Command Line

&kontact; has several command line arguments that can be used for certain actions.

First of all, &kontact; supports command line arguments that all &kf5;/&Qt; applications support, see the man pages qt5options and kf5options.

&kontact; also supports several command line arguments specific to it.

### Command Line Arguments

#### Module-related Arguments

To get a list of available &kontact; modules, you can type:

&percnt; `kontact --list`

Then, to start &kontact; with a module active, type:

&percnt; `kontact --module moduleName`

Where moduleName is one of the modules obtained using the previous command.

#### Startup-related Arguments

To start &kontact; in iconified mode Iconified mode is also called minimized; it is when the application window is hidden and the application is available only in the taskbar., you can type:

&percnt; `kontact --iconify`

## Under The Hood

&kontact; makes extensive use of several &kde; key technologies, most notably KParts and &DBus;.

The &GUI; integration of the components is done by plugins providing KParts versions of the applications. This only needs a thin additional layer on top of the already existing code of the stand-alone applications.

For communication between the components &DBus; is used. This has the nice characteristic that it is completely transparent to whether the application is run stand-alone or embedded as KPart into &kontact;. When running inside of &kontact; an efficient in-process mode of &DBus; is used.

## Credits and License

&kontact;

Program copyright 2004-2005, The &kde; Developers

Contributors:

- &Cornelius.Schumacher; &Cornelius.Schumacher.mail;

- &Daniel.Molkentin; &Daniel.Molkentin.mail;

- &Don.Sanders; &Don.Sanders.mail;

- &Tobias.Koenig; &Tobias.Koenig.mail;

- Allen Winter winter@kde.org

- Matthis Hölzer-Klüpfel mhk@kde.org, the original author of the &kontact; framework.

- All the valued developers of the applications &kontact; is integrating. They did almost all the work.

Documentation copyright 2004-2005

Contributors:

- &Cornelius.Schumacher; &Cornelius.Schumacher.mail;

- Antonio Salazar savedfastcool@gmail.com

- &Daniel.Molkentin; &Daniel.Molkentin.mail;

- All the members of the &kde; documentation list who assisted with markup and style issues.

&underFDL; &underGPL;

## Administrator's Guide

### Compatibility Issues

This section provides help with how to make &kontact; communicate effectively with various groupware solutions.

#### Outlook and Exchange

In the &kontact; configuration dialog, under Mail Misc on the Invitations page you will find the following options that will help the user communicate with Microsoft Outlook(tm) running in a Kolab environment or in a Microsoft Exchange(tm) environment.

Mangle From:/To: headers in replies to invitations

  Enable this option to make Microsoft Outlook(tm) understand your answers to invitation replies.

  Microsoft Outlook has a number of shortcomings in its implementation of the iCalendar standard; this option works around one of them. If you have problems with Outlook users not being able to get your replies, try setting this option.

  Details: When mailing an iCal invitation this makes the message have the From: header the same as the To: header. It also sets header X-KMail-Identity to the To:'s UIOD and makes sure the BCC: is blank. Outlook will only understand the reply if the From: header is the same as the To: header of the invitation message.

Send invitations in the mail body

  Invitations are normally sent as attachments to a mail. This switch changes the invitation to be sent in the text of the mail instead; this is necessary to send invitations and replies to Microsoft Outlook. But, when you do this, you no longer get descriptive text that mail programs can read; so, to people who have email programs that do not understand the invitations, the resulting messages look very odd. People that have email programs that do understand invitations will still be able to work with this.

  Details: When mailing an iCal invitation this option makes the message body from the attachment data and sets the Content-Type header to 'text/calendar; method=something; charset="utf-8"'.

  Auto-sending is also turned on so there is no human intervention required for composing.

  Encryption and self-signing are disabled.

Exchange-compatible invitation naming

  Microsoft Outlook, when used in combination with a Microsoft Exchange(tm) server, has a problem understanding standards-compliant groupware email. Enable this option to send groupware invitations in a way that Microsoft Exchange(tm) understands. The invitation will be sent as an attachment with name `ical.ics`.

  Details: When mailing an iCal invitation this makes the message have the subject "(Declined|Tentative|Accepted|Delegated): subject". The invitation will be sent as an attachment with name `ical.ics`.

Outlook-compatible attachment naming

  Turn this option on to make Outlook(tm) understand attachment names containing non-English characters.

### Behavioral Issues

This section provides instructions on how to make &kontact; behave more like other groupware clients.

#### Composing Messages

Outlook users are accustomed to typing a list of addresses in the To:, CC: or BCC: fields separated by a semicolon (';') character in addition to a comma (','). By default, &kontact; only allows the comma as an address separator character. To also allow the semicolon, change the `AllowSemicolonAsAddressSeparator` from false to true in the installed `share/config.kcfg/messagecomposer.kcfg` file.

### RFC Compromises

&kontact; is designed to interoperate as well as is possible with a wide variety of groupware solutions. To that end, we sometimes make design compromises with respect to the various Internet RFCs that provide the basis for low-level libraries on which &kontact; relies heavily.

We never knowingly violate any RFC.

The following list of RFC compromises is made by &kontact; or the low-levels libraries used by &kontact;:

- When writing duration values into iCalendar files, &kontact; never writes the DURATION property in terms of weeks (i.e., 1*DIGIT "W"); instead, the integer number of weeks is always multiplied by 7 and written in terms of days (i.e. 1*DIGIT "D").

&documentation.index;