diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2018-07-05 00:22:10 +0200 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2018-07-05 00:24:00 +0200 |
commit | b4c08c7ed8dcaf46e0966f5d940b75a6e1d8f165 (patch) | |
tree | f733f8b1d01cec5262d8647ef49e062bcd8bef84 | |
parent | 82de61470c0e43e228bdb3b3f1afc84afc6bbdc8 (diff) | |
download | kube-b4c08c7ed8dcaf46e0966f5d940b75a6e1d8f165.tar.gz kube-b4c08c7ed8dcaf46e0966f5d940b75a6e1d8f165.zip |
Avoid binding loop on initialText
which broke html -> plain conversion
-rw-r--r-- | framework/src/domain/composercontroller.cpp | 1 | ||||
-rw-r--r-- | framework/src/domain/composercontroller.h | 3 | ||||
-rw-r--r-- | framework/src/domain/controller.cpp | 1 | ||||
-rw-r--r-- | framework/src/domain/controller.h | 1 | ||||
-rw-r--r-- | views/composer/qml/View.qml | 3 |
5 files changed, 8 insertions, 1 deletions
diff --git a/framework/src/domain/composercontroller.cpp b/framework/src/domain/composercontroller.cpp index 88c0c839..80fab809 100644 --- a/framework/src/domain/composercontroller.cpp +++ b/framework/src/domain/composercontroller.cpp | |||
@@ -353,6 +353,7 @@ void ComposerController::setMessage(const KMime::Message::Ptr &msg) | |||
353 | } | 353 | } |
354 | 354 | ||
355 | setExistingMessage(msg); | 355 | setExistingMessage(msg); |
356 | emit messageLoaded(body); | ||
356 | } | 357 | } |
357 | 358 | ||
358 | void ComposerController::loadDraft(const QVariant &message) { | 359 | void ComposerController::loadDraft(const QVariant &message) { |
diff --git a/framework/src/domain/composercontroller.h b/framework/src/domain/composercontroller.h index 0d12fcce..425054d8 100644 --- a/framework/src/domain/composercontroller.h +++ b/framework/src/domain/composercontroller.h | |||
@@ -96,6 +96,9 @@ public: | |||
96 | Q_INVOKABLE void loadReply(const QVariant &message); | 96 | Q_INVOKABLE void loadReply(const QVariant &message); |
97 | Q_INVOKABLE void loadForward(const QVariant &message); | 97 | Q_INVOKABLE void loadForward(const QVariant &message); |
98 | 98 | ||
99 | signals: | ||
100 | void messageLoaded(const QString &body); | ||
101 | |||
99 | public slots: | 102 | public slots: |
100 | virtual void clear() Q_DECL_OVERRIDE; | 103 | virtual void clear() Q_DECL_OVERRIDE; |
101 | 104 | ||
diff --git a/framework/src/domain/controller.cpp b/framework/src/domain/controller.cpp index 09fe0b9d..7a2996b8 100644 --- a/framework/src/domain/controller.cpp +++ b/framework/src/domain/controller.cpp | |||
@@ -54,6 +54,7 @@ void Controller::clear() | |||
54 | for (const auto &p : dynamicPropertyNames()) { | 54 | for (const auto &p : dynamicPropertyNames()) { |
55 | setProperty(p, QVariant()); | 55 | setProperty(p, QVariant()); |
56 | } | 56 | } |
57 | emit cleared(); | ||
57 | } | 58 | } |
58 | 59 | ||
59 | void Controller::run(const KAsync::Job<void> &job) | 60 | void Controller::run(const KAsync::Job<void> &job) |
diff --git a/framework/src/domain/controller.h b/framework/src/domain/controller.h index d3c1075f..83dbb51f 100644 --- a/framework/src/domain/controller.h +++ b/framework/src/domain/controller.h | |||
@@ -100,6 +100,7 @@ public slots: | |||
100 | signals: | 100 | signals: |
101 | void done(); | 101 | void done(); |
102 | void error(); | 102 | void error(); |
103 | void cleared(); | ||
103 | 104 | ||
104 | protected: | 105 | protected: |
105 | void run(const KAsync::Job<void> &job); | 106 | void run(const KAsync::Job<void> &job); |
diff --git a/views/composer/qml/View.qml b/views/composer/qml/View.qml index 3b7f0bf4..c6b09a7e 100644 --- a/views/composer/qml/View.qml +++ b/views/composer/qml/View.qml | |||
@@ -44,6 +44,8 @@ Kube.View { | |||
44 | 44 | ||
45 | sendAction.enabled: composerController.accountId && composerController.subject && (!composerController.encrypt || composerController.foundAllKeys) && (!composerController.sign && !composerController.encrypt || composerController.foundPersonalKeys) && !composerController.to.empty | 45 | sendAction.enabled: composerController.accountId && composerController.subject && (!composerController.encrypt || composerController.foundAllKeys) && (!composerController.sign && !composerController.encrypt || composerController.foundPersonalKeys) && !composerController.to.empty |
46 | saveAsDraftAction.enabled: composerController.accountId | 46 | saveAsDraftAction.enabled: composerController.accountId |
47 | onMessageLoaded: { textEditor.initialText = body } | ||
48 | onCleared: { textEditor.initialText = "" } | ||
47 | } | 49 | } |
48 | ] | 50 | ] |
49 | 51 | ||
@@ -380,7 +382,6 @@ Kube.View { | |||
380 | 382 | ||
381 | onActiveFocusChanged: closeFirstSplitIfNecessary() | 383 | onActiveFocusChanged: closeFirstSplitIfNecessary() |
382 | Keys.onEscapePressed: recipients.forceActiveFocus() | 384 | Keys.onEscapePressed: recipients.forceActiveFocus() |
383 | initialText: composerController.body | ||
384 | onTextChanged: { | 385 | onTextChanged: { |
385 | composerController.body = text; | 386 | composerController.body = text; |
386 | } | 387 | } |