A message part that is not an email by itself is "view"ed. When reply or forward actions are triggered, KMail crashes.
It also hides the main toolbar and menu for non-message viewers.
BUG: 123316
GUI: Remove menu and toolbar for e-mail parts that are not e-mails themselves.
svn path=/branches/KDE/3.5/kdepim/; revision=518656
an email is in.
This means for example, no 'move to trash' for mail in the trash folder, and
no 'reply' on an email in your sent-mail folder.
BUG: 76395
svn path=/trunk/KDE/kdepim/; revision=424437
- Pass around the encoding name instead of a QTextCodec and determine the codec on demand.
- Make the local override encoding (set via the menu entry) independent of the global override encoding (set in the configuration dialog). This means that changes of the local override encoding won't affect the global override encoding. OTOH, if the global override encoding is changed then the local override encoding in all reader windows will be changed to the new global override encoding.
- Fix call of KMPrintCommand (the override codec pointer was passed instead of the isFixedFont() bool value).
svn path=/trunk/KDE/kdepim/; revision=419087
dialog and include it in the RMB menu of the foldertree. To make the check if the menu
should be shown a bit easier the folderstorage got a new "isMoveable()" function.
I noticed that moving of imap folders crashes again when the messages are moved (sigh)
but this is not related so I'll fix it afterwards.
svn path=/trunk/kdepim/; revision=385541
More consistent with Key_F - although this was vetoed as an argument for getting this into HEAD :(
and necessary for the customer here, since forward-inline breaks crypto signatures
[and currently forgets attachments, too]
svn path=/branches/proko2/kdepim/; revision=367853
external references in html mails and a link to enable them for a single
mail, if they are disabled for the folder and globally. Thanks a lot, Ingo,
many people have been asking for this. :)
FEATURE: 34857
GUI:
svn path=/trunk/kdepim/; revision=365026
BUG: 77515
Allow "Mark Message" when in drafts folder
BUG: 81711
Show "Copy" and "Select All" when text selected in message view.
BUG: 84248
Make header popup and message popup more consistent. Move delete options to bottom of menu.
svn path=/trunk/kdepim/; revision=362800
The previous toolbar button with a tooltip of just "Inline..." was confusing
(https://intevation.de/roundup/kolab/issue97)
svn path=/branches/KDE_3_3_BRANCH/kdepim/; revision=360055
CVS commit by tilladam:
Use the override codec for printing from the main readerwindow and from a
standalone readerwindow if one is set.
svn path=/branches/KDE_3_3_BRANCH/kdepim/; revision=347724
attachment viewer. Enable it when a message is set for the window. FixeÑ
a crash with trying to forward a 0 mail.
CCMAIL: 78786-done@bugs.kde.org
svn path=/trunk/kdepim/; revision=316121
Good bye, KMTopLevelWidget (which wasn't needed anymore independently of this fix), and welcome KMail::SecondaryWindow which is the new super class for KMComposer and KMReaderMainWin and which reimplements KMainWindow::closeEvent() in order to fix this bug.
svn path=/trunk/kdepim/; revision=284023
o readding the action to the menu
o making sure there is an actual slot behind the action
o preventing the command from being prematurely deleted
o making sure the KMMessage object used has a size and a serial number
CCMAIL: 71385-done@bugs.kde.org
svn path=/trunk/kdepim/; revision=275585
the 3.2 release as it's currently broken.
CCMAIL:71385@bugs.kde.org
CCMAIL:Till Adam <adam@kde.org>
Till any chance this bug was introduced by your commit on the 2003/09/08
with description "Allow the user to place the message preview pane..."
A "cvs diff -dub -r 1.696 -r 1.697 kmreaderwin.cpp" shows that the
KMReaderWin::slotSaveMsg() was removed. I tried putting it back but
then a konqueror style progress dialog was used when I tried to save the
message.
No review, trivial commit.
svn path=/trunk/kdepim/; revision=275536
Please excuse the addition of the new strings i18n("Message->","&Reply") and i18n("Reply to A&uthor..."). I hope it doesn't cause too much inconvenience for the translators.
CCMAIL:kde-i18n-doc@kde.org
svn path=/trunk/kdepim/; revision=272991
by a clean signal/slot solution to notify the single components of a change
in the config dialog.
That fixes also #67484.
CCMAIL:67484-done@bugs.kde.org
svn path=/trunk/kdepim/; revision=269130
#define kernel KMKernel::self()
to
#define kmkernel KMKernel::self()
because 'kernel' was a much to general term. We really shouldn't repeat the mistakes of the X developers.
I noticed this problem when I played around with KImageEffects. kimageeffects.h contains 'kernel' as parameter of some methods and so the compilation had to fail. We won't need KImageEffects in the near future, but at least we are now prepared and a clash with another 'kernel' can't happen anymore.
svn path=/trunk/kdepim/; revision=252621
list as before or to the right of it or hide it completely. When the reader
window is disabled, messages that are selected are not downloaded (for
imap) and are not marked as read.
CCMAIL: 63647-done@bugs.kde.org
CCMAIL: 16345-done@bugs.kde.org
CCMAIL: 43176-done@bugs.kde.org
svn path=/trunk/kdepim/; revision=249504
This patch mostly concerns itself with the following two things:
1. Move code out from kmreaderwin (see new class CSSHelper, whose files
have already been committed).
Into this category fall the simplification and readability
enhancements of the HTML code (adding some newlines, simplifying the
HTML in favour of complicating the CSS a bit, using @media print)
2. Change the semantics of the mCodec member of KMMessage and
KMReaderWin.
To make it short: mCodec is not mOverrideCodec and only ever set to a
non-NULL value iff the codec is forced by the user selecting an
encoding from the Message menu. In all other cases, it's now
calculated from the message(parts). For that, the codec() and
setBodyFromUnicode() and bodyToUnicode() methods have been duplicated
in KMMessage from KMMsgPart (don't you just hate that?).
Walkthrough of the patch:
kmreaderwin.{h,cpp}
- Replace all c* and m*Font members by a single CSSHelper instance.
- readColorConfig(), parts of readConfg(), quoteFontTag() and htmlHead()
were moved from here to CSSHelper
- rename codec()/setCodec() to overrideCodec()/setOverrideCodec()
and provide an autoDetectEncoding() convenience method.
- Remove the QTextCodec parameter from setMsgPart. It now uses
overrideCodec() or the msgPart's own codec.
- s/isfixedFont/isFixedFont/
- split parseMsg( KMMessage*, bool ) into one for
onlyProcessHeaders=false (called again parseMsg(KMMessage*)) and one
for oPH=true (called parseMsgHeader()). The latter then reduces to
writeMsgHeader(), provided one accepts the minor regression that the
[vPart] link is not shown _for *nested*_ messages. This can be readded
later, once KMReaderWin is void of formatting code and OTP is
independent of a KMReaderWin parent. I've left the commented
parseMsgHeader in the momnt of it's death in commented out, so you can
see what I how I came to kill it off for an explicit writeMsgHeader().
- In the old new parseMsg(KMMessage*), there also happened significant
code simplification, mostly by realizing that the the colorbar and tmp
file handling belongs into parseMsg(void) and by removing the oPH=true
case. There's also an instance of simplifying code by using
bodyToUnicode(). At last, the <div id="header"></div> around
writeMsgHeader is superfluous (and wrong, since there is and never was
a div#header CSS selector), since the HeaderStyle's add that already.
- Apply "Inline Method" to writeHTMLStr()
- remove the QTextCodec param from showVCard(). This method is now a
nice one and uses bodyToUnicode()
- rename all fooCodec to fooOverrideCodec
- currently, mCSSHelper is destroyed and re-created whenever it the
config changes. I intend to make CSSHelper a fully functional
ConfigManager later.
- setOverrideCodec now calls update(true) only if the codec was actually
changed.
- In setMsgPart, there's code that "forgets" to strip off <head>, <body>
and <html> tags from HTML parts. I didn't do anything about that yet,
only added a triple-hash.
- Simplify slotAtmSave() by using more guard clauses and esp. by using
QString::section() and QString::replace(QChar,QChar) instead of
rolling our owns.
objecttreeparser.{h,cpp}:
- Use CSShelper
- Create a new CSS class "htmlWarn" for the HTML warning frame to get
rid of the embedded style information.
- simplify quotedHTML() by using new nonQuotedFontTag().
headerstyle.cpp:
- We begin by inserting some newlines to ease the reading of the
resultant HTML code.
- In the fancy header department, we remove almost all class attributes
from the HTML tags. Instead (see csshelper.cpp), we use CSS Selectors
to address the inner tags of the enclosing <div class="fancy header">
Note how that tag matches both the div.header (setting the margin) and
div.fancy.header selectors in csshelper.cpp
- We end with removing the workaround for the apparently long-standing
khtml bug that makes it ignore "padding" on <table>, viz. another
<div></div> pair around the table.
kmfldsearch.cpp:
- Reap fruits of (2).
kmmainwin.cpp:
- Consequence of setCodec -> setOverrideCodec() renaming
- move an #include up to the top
kmmessage.{h,cpp}:
- Copy setBodyFromUnicode(), bodyToUnicode() and rename fooCodec to
fooOverrideCodec.
- Note how the double housekeeping (mAutoDetectEncoding) goes away with
this.
- In html2source(), don't emit <br />, but <br> (we're using HTML 4.01,
not XHTML) and quote ' with ' (well, that's more XHTML-like)
kmreadermainwin.{h,cpp}:
- Since the QTextCodec* parameter was removed from
KMReaderWin::setMsgPart(), use now the explicit setOverrideCodec()
method to set the user-defined codec.
- Remove unused mCodec member
svn path=/trunk/kdepim/; revision=236540
- Fix FIXME added by me in the separate reader window when viewing
text/plain attachments.
- Comment out mShowCompleteMessage from reader win. The only usage of
it is in the ObjectTreeParser, and I don't see any regressions with
simply assuming it to always be true. It certainly doesn't break the
claimed usage of this hack.
- group fonts/color member variables together.
- Refactor HTML head composition from parseMsg() into htmlHead()
- Use new htmlHead() to fix#60688
CCMAIL:60688-done@bugs.kde.org
ObjectTreeParser:
- Moved mIsFirstTextPart member variable from readerwin to here
- Removed the hack that maps app/pgp to text/plain. Instead, just call
the t/p method from the app/pgp case.
- At the end of parseObjectTree(), change the last
htmlWriter()->write() to htmlWriter()->queue(), since everything
that is called in between uses queue(), too (see below)
KHtmlHtmlWriter:
- Keep state to be able to warn about incorrect usage patterns
- Move html view init/finish to begin() and end() from kmreaderwin
and objecttreeparser
svn path=/trunk/kdepim/; revision=235256
has it's own cursor stack.
I added kcursorsaver, that makes sure that the cursor is restored when the object
gets out of scope (just as KConfigGroupSaver)
Now kmkernel doesn't has to cope with cursors anymore
svn path=/trunk/kdepim/; revision=221747