[PATCH] Fix KMail mailto url handling / new KURL method

Marc Mutz mutz at kde.org
Sat Dec 21 17:07:13 GMT 2002


I've attached two patches. One for kdecore/kurl.* implementing
  QMap< QString, QString >
  KURL::queryItems(bool caseInsensitiveKeys=false) const;
and the second for fixing mailto URL handling in KMMailtoComposeCommand 
and KMUrlClickedCommand.

The details:
- kdecore:
  - KURL has a new method queryItems that returns the query parsed into
    key/value pairs, optionally normalizing the keys to lowercase.
- kmail:
  - new method KMMessage::setFieldsAndBodyFromMailtoUrl() which sets the
    information encoded in the mailto url. Since it uses
    KURL::queryItems(true), it is robust against case in header names
    (as reported on ietf-822 at imc.org).

    Expl.: mailto:mutz at kde.org?Subject=is+not+shown

  - new config key [General]HeadersAllowedForMailtoUrls that contains a
    list of header fields that are interpreted in mailto urls (in
    addition to To and Body, both of which are special).

  - KMMainWin::slotUrlClicked() dispatches mailto urls to
    KMMailtoComposeCommand instead of KMUrlClickedCommand, thus
    eleminating a bit of code duplication.

I'd like to commit both to KDE_3_1_BRANCH. For reference, the reported 
URL was:

mailto:%3D%3fiso-8859-1%3FQ%3fJ%3dFCrgen%3F%3d%20%3cj at foo.com%3E?Subject=list


"Similia similibus curentur"
           -- Bush's new motto in fighting terrorism.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kurl.diff
Type: text/x-diff
Size: 3659 bytes
Desc: Apply in kdelibs/kdecore
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20021221/9a56a31e/attachment.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kmail-mailto-url-handling.diff
Type: text/x-diff
Size: 7811 bytes
Desc: Apply in kdenetwork/kmail
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20021221/9a56a31e/attachment-0001.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: signature
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20021221/9a56a31e/attachment.sig>

More information about the kde-core-devel mailing list