From f34336d87567e376d856f742880acdb5fb307b81 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Thu, 26 Apr 2018 22:30:54 +0200 Subject: Remove showOnlyOneMimepart from the public interface. That makes it much more obvious where we actually rely on it. --- .../mime/mimetreeparser/applicationpgpencrypted.cpp | 2 +- .../src/domain/mime/mimetreeparser/messagepart.cpp | 6 +++--- .../src/domain/mime/mimetreeparser/messagepart.h | 4 ++-- .../mime/mimetreeparser/multipartalternative.cpp | 2 +- .../mime/mimetreeparser/multipartencrypted.cpp | 2 +- .../domain/mime/mimetreeparser/multipartsigned.cpp | 4 ++-- .../domain/mime/mimetreeparser/objecttreeparser.cpp | 21 ++++----------------- .../domain/mime/mimetreeparser/objecttreeparser.h | 19 +------------------ framework/src/domain/mime/mimetreeparser/utils.cpp | 2 +- 9 files changed, 16 insertions(+), 46 deletions(-) diff --git a/framework/src/domain/mime/mimetreeparser/applicationpgpencrypted.cpp b/framework/src/domain/mime/mimetreeparser/applicationpgpencrypted.cpp index a912c9c9..f862cd69 100644 --- a/framework/src/domain/mime/mimetreeparser/applicationpgpencrypted.cpp +++ b/framework/src/domain/mime/mimetreeparser/applicationpgpencrypted.cpp @@ -55,7 +55,7 @@ MessagePart::Ptr ApplicationPGPEncryptedBodyPartFormatter::process(Interface::Bo KMime::Content *data = findTypeInDirectChilds(part.content()->parent(), "application/octet-stream"); if (!data) { - return MessagePart::Ptr(); //new MimeMessagePart(part.objectTreeParser(), node, false)); + return MessagePart::Ptr(); //new MimeMessagePart(part.objectTreeParser(), node)); } EncryptedMessagePart::Ptr mp(new EncryptedMessagePart(part.objectTreeParser(), diff --git a/framework/src/domain/mime/mimetreeparser/messagepart.cpp b/framework/src/domain/mime/mimetreeparser/messagepart.cpp index 9f0df7f7..2fd4f496 100644 --- a/framework/src/domain/mime/mimetreeparser/messagepart.cpp +++ b/framework/src/domain/mime/mimetreeparser/messagepart.cpp @@ -344,7 +344,7 @@ void MessagePart::parseInternal(const QByteArray &data) tempNode->contentDescription()->from7BitString("temporary node"); } - parseInternal(tempNode, false); + parseInternal(tempNode); } QString MessagePart::renderInternalText() const @@ -920,7 +920,7 @@ void SignedMessagePart::startVerificationDetached(const QByteArray &text, KMime: mMetaData.isDecryptable = false; if (textNode) { - parseInternal(textNode, false); + parseInternal(textNode); } mMetaData.isSigned = false; @@ -1189,7 +1189,7 @@ EncapsulatedRfc822MessagePart::EncapsulatedRfc822MessagePart(ObjectTreeParser *o return; } - parseInternal(message.data(), false); + parseInternal(message.data()); } EncapsulatedRfc822MessagePart::~EncapsulatedRfc822MessagePart() diff --git a/framework/src/domain/mime/mimetreeparser/messagepart.h b/framework/src/domain/mime/mimetreeparser/messagepart.h index 37f8f168..3c07ca88 100644 --- a/framework/src/domain/mime/mimetreeparser/messagepart.h +++ b/framework/src/domain/mime/mimetreeparser/messagepart.h @@ -128,7 +128,7 @@ public: void bindLifetime(KMime::Content *); protected: - void parseInternal(KMime::Content *node, bool onlyOneMimePart); + void parseInternal(KMime::Content *node, bool onlyOneMimePart = false); void parseInternal(const QByteArray &data); QString renderInternalText() const; @@ -150,7 +150,7 @@ class MimeMessagePart : public MessagePart Q_OBJECT public: typedef QSharedPointer Ptr; - MimeMessagePart(MimeTreeParser::ObjectTreeParser *otp, KMime::Content *node, bool onlyOneMimePart); + MimeMessagePart(MimeTreeParser::ObjectTreeParser *otp, KMime::Content *node, bool onlyOneMimePart = false); virtual ~MimeMessagePart(); QString text() const Q_DECL_OVERRIDE; diff --git a/framework/src/domain/mime/mimetreeparser/multipartalternative.cpp b/framework/src/domain/mime/mimetreeparser/multipartalternative.cpp index 9b7954b5..d0657edb 100644 --- a/framework/src/domain/mime/mimetreeparser/multipartalternative.cpp +++ b/framework/src/domain/mime/mimetreeparser/multipartalternative.cpp @@ -51,7 +51,7 @@ MessagePart::Ptr MultiPartAlternativeBodyPartFormatter::process(Interface::BodyP auto preferredMode = MimeTreeParser::Util::Html; AlternativeMessagePart::Ptr mp(new AlternativeMessagePart(part.objectTreeParser(), node)); if (mp->mChildNodes.isEmpty()) { - return MimeMessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), node->contents().at(0), false)); + return MimeMessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), node->contents().at(0))); } KMime::Content *dataIcal = mp->mChildNodes.contains(Util::MultipartIcal) ? mp->mChildNodes[Util::MultipartIcal] : nullptr; diff --git a/framework/src/domain/mime/mimetreeparser/multipartencrypted.cpp b/framework/src/domain/mime/mimetreeparser/multipartencrypted.cpp index 2e36366c..b1288119 100644 --- a/framework/src/domain/mime/mimetreeparser/multipartencrypted.cpp +++ b/framework/src/domain/mime/mimetreeparser/multipartencrypted.cpp @@ -68,7 +68,7 @@ MessagePart::Ptr MultiPartEncryptedBodyPartFormatter::process(Interface::BodyPar */ if (!data) { - return MessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), node->contents().at(0), false)); + return MessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), node->contents().at(0))); } EncryptedMessagePart::Ptr mp(new EncryptedMessagePart(part.objectTreeParser(), diff --git a/framework/src/domain/mime/mimetreeparser/multipartsigned.cpp b/framework/src/domain/mime/mimetreeparser/multipartsigned.cpp index b511afce..6b38b60e 100644 --- a/framework/src/domain/mime/mimetreeparser/multipartsigned.cpp +++ b/framework/src/domain/mime/mimetreeparser/multipartsigned.cpp @@ -46,7 +46,7 @@ MessagePart::Ptr MultiPartSignedBodyPartFormatter::process(Interface::BodyPart & qCDebug(MIMETREEPARSER_LOG) << "mulitpart/signed must have exactly two child parts!" << endl << "processing as multipart/mixed"; if (!node->contents().isEmpty()) { - return MessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), node->contents().at(0), false)); + return MessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), node->contents().at(0))); } else { return MessagePart::Ptr(); } @@ -75,7 +75,7 @@ MessagePart::Ptr MultiPartSignedBodyPartFormatter::process(Interface::BodyPart & } if (protocol == UnknownProtocol) { - return MessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), signedData, false)); + return MessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), signedData)); } part.nodeHelper()->setNodeProcessed(signature, true); diff --git a/framework/src/domain/mime/mimetreeparser/objecttreeparser.cpp b/framework/src/domain/mime/mimetreeparser/objecttreeparser.cpp index e86f138b..0149f388 100644 --- a/framework/src/domain/mime/mimetreeparser/objecttreeparser.cpp +++ b/framework/src/domain/mime/mimetreeparser/objecttreeparser.cpp @@ -90,17 +90,14 @@ static QVector collect(MessagePart::Ptr start, const std::func ObjectTreeParser::ObjectTreeParser() : mNodeHelper(nullptr), - mTopLevelContent(nullptr), - mShowOnlyOneMimePart(false) + mTopLevelContent(nullptr) { init(); } -ObjectTreeParser::ObjectTreeParser(MimeTreeParser::NodeHelper *nodeHelper, - bool showOnlyOneMimePart) +ObjectTreeParser::ObjectTreeParser(MimeTreeParser::NodeHelper *nodeHelper) : mNodeHelper(nodeHelper), - mTopLevelContent(nullptr), - mShowOnlyOneMimePart(showOnlyOneMimePart) + mTopLevelContent(nullptr) { init(); } @@ -387,7 +384,7 @@ void ObjectTreeParser::parseObjectTree(const QByteArray &mimeMessage) void ObjectTreeParser::parseObjectTree(KMime::Content *node) { mTopLevelContent = node; - mParsedPart = parseObjectTreeInternal(node, showOnlyOneMimePart()); + mParsedPart = parseObjectTreeInternal(node, false); } MessagePartPtr ObjectTreeParser::parsedPart() const @@ -495,16 +492,6 @@ const QTextCodec *ObjectTreeParser::codecFor(KMime::Content *node) const return mNodeHelper->codec(node); } -bool ObjectTreeParser::showOnlyOneMimePart() const -{ - return mShowOnlyOneMimePart; -} - -void ObjectTreeParser::setShowOnlyOneMimePart(bool show) -{ - mShowOnlyOneMimePart = show; -} - MimeTreeParser::NodeHelper *ObjectTreeParser::nodeHelper() const { return mNodeHelper; diff --git a/framework/src/domain/mime/mimetreeparser/objecttreeparser.h b/framework/src/domain/mime/mimetreeparser/objecttreeparser.h index ad67205b..02f94700 100644 --- a/framework/src/domain/mime/mimetreeparser/objecttreeparser.h +++ b/framework/src/domain/mime/mimetreeparser/objecttreeparser.h @@ -236,9 +236,7 @@ class ObjectTreeParser public: explicit ObjectTreeParser(); - explicit ObjectTreeParser(NodeHelper *nodeHelper, - bool showOneMimePart = false - ); + explicit ObjectTreeParser(NodeHelper *nodeHelper); virtual ~ObjectTreeParser(); @@ -256,9 +254,6 @@ public: */ QString htmlContent(); - bool showOnlyOneMimePart() const; - void setShowOnlyOneMimePart(bool show); - NodeHelper *nodeHelper() const; /** Parse beginning at a given node and recursively parsing @@ -305,18 +300,6 @@ private: KMime::Content *mTopLevelContent; MessagePartPtr mParsedPart; - /// Show only one mime part means that the user has selected some node in the message structure - /// viewer that is not the root, which means the user wants to only see the selected node and its - /// children. If that is the case, this variable is set to true. - /// The code needs to behave differently if this is set. For example, it should not process the - /// siblings. Also, consider inline images: Normally, those nodes are completely hidden, as the - /// HTML node embedds them. However, when showing only the node of the image, one has to show them, - /// as their is no HTML node in which they are displayed. There are many more cases where this - /// variable needs to be obeyed. - /// This variable is set to false again when processing the children in stdChildHandling(), as - /// the children can be completely displayed again. - bool mShowOnlyOneMimePart; - bool mDeleteNodeHelper; KMime::Message::Ptr mMsg; diff --git a/framework/src/domain/mime/mimetreeparser/utils.cpp b/framework/src/domain/mime/mimetreeparser/utils.cpp index 5b9aa55a..b7a9b8de 100644 --- a/framework/src/domain/mime/mimetreeparser/utils.cpp +++ b/framework/src/domain/mime/mimetreeparser/utils.cpp @@ -32,7 +32,7 @@ MimeMessagePart::Ptr MimeTreeParser::createAndParseTempNode(Interface::BodyPart newNode->contentDescription()->from7BitString(cntDesc); } - auto mp = MimeMessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), newNode, false)); + auto mp = MimeMessagePart::Ptr(new MimeMessagePart(part.objectTreeParser(), newNode)); mp->bindLifetime(newNode); return mp; } -- cgit v1.2.3