Projects/PIM/KMail Junior Jobs

< Projects‎ | PIM
Revision as of 15:40, 20 March 2009 by TMG (Talk | contribs)

Jump to: navigation, search

Contents

KMail Junior Jobs

On this page, you'll find small coding jobs for a beginner to work on. All these problems are relatively easy, some of them might even be one-liners. Of course, it is always a good idea to find your own thing to fix, the best motivation is scratching your own itch.

These tasks are intended for beginners with little or no experience programming with KDE. For those beginners, the biggest challenges are not actually the coding problems, but setting the development environment up, finding the correct place of code where the bug happens (in the jungle of all those source files) and interacting with the community, with the final step being sending the patch.

The knowledge prerequisite for those jobs are not that big. You should be familiar in C++, and knowing Qt a bit would help. Knowing kdelibs or KMail internals is not required, that can usually be picked up during coding.

For more general information, visit the following places:

  • KDE Techbase: Contains a lot of information about developing KDE, in particular a section on how to build KDE from source
  • KMail's HACKING file: Some KMail specific information.

The steps for your first coding contribution are roughly like this:

  1. Build KDE trunk from sources, including KDEPIM
  2. Set up your development environment, i.e. your editor or IDE
  3. Pick something to work on, like some of the things suggested below
  4. Start coding and fix the problem!
  5. Send in a patch

Should you need help, feel free to ask us in the #kontact IRC channel.

If you find some information missing, feel free to add it to this page after you learn it.

Below follows a list of junior jobs. It always includes a rough location where in the KMail sources to start.

noframe
 
This section needs improvements: Please help us to

cleanup confusing sections and fix sections which contain a todo


As you can see, the section below is not yet filled out. I'll try my best to fill it out. --TMG 23:33, 19 March 2009 (UTC)

Folder quick search should have "Search" as initial search text

Starting point: kmmainwidget.cpp

Difficulty: Easy

Description:


Pressing enter in the filter dialog opens the help by default

Starting point: kmfilterdlg.cpp

Difficulty: Easy

Description:


The default column sizes of the message structure viewer are too small

Starting point: kmmimeparttree.cpp

Difficulty: Easy

Description:


Add an indicator to the composer's toolbar whether the mail is in plain text or HTML

Starting point: kmcomposewin.cpp

Difficulty: Easy

Description:


Move aggregation, theme and sorting options to the menubar

Starting point: kmmainwidget.cpp, messagelistview.cpp/core/widgetbase.cpp, configuredialog.cpp, kmmainwin.cpp/kmail_part.rc

Difficulty: Medium

Description:


Unify options to enable or disable the tooltips in the folder and message list

Starting point: configuredialog.cpp, folderview.cpp, messagelistview/core/view.cpp

Difficulty: Medium

Description:


Better handling of empty column titles in the message list

Starting point: messagelistview/core/themeeditor.cpp, messagelistview/core/view.cpp

Difficulty: Medium

Description:


Bug 187041: Folder filter persistent after restart

Starting point: kmmainwidget.cpp

Difficulty: Easy

Description:


Bug 186803: Missing newline in folder tooltip

Starting point: folderview.cpp

Difficulty: Dead Easy (although you need an IMAP account with quota support to test the problem)

Description:


Bug 185069: After renaming a SMTP account, the identities are not updated

Starting point: configuredialog.cpp, identitydialog.cpp

Difficulty: Easy to Medium

Description:


Bug 182581: KMail should warn when creating a filter without a filter action

Starting point: kmfilterdlg.cpp

Difficulty: Medium

Description:


Bug 156653: Changing the font size has no effect on the separate reader window

Starting point: kmreaderwin.cpp, kmreadermainwin.cpp

Difficulty: Medium

Description:


Bug 71945: Refresh IMAP cache even enabled when action can't be used

Starting point: kmmainwidget.cpp

Difficulty: Easy

Description:


Bug 89446: Convert more settings to KConfigXT

Starting point: kmail.kcfg

Difficulty: Easy (but possibly boring)

Description:


KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal