From 8b2871ec42807268aee352af16cf0cf300898017 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Thu, 21 Jan 2016 17:47:15 +0100 Subject: HTML mails for everyone! --- .../kube-mail/package/contents/ui/MailViewer.qml | 33 ++++++++++++++++++++++ .../package/contents/ui/SingleMailView.qml | 16 ++++++----- 2 files changed, 42 insertions(+), 7 deletions(-) create mode 100644 applications/kube-mail/package/contents/ui/MailViewer.qml (limited to 'applications') diff --git a/applications/kube-mail/package/contents/ui/MailViewer.qml b/applications/kube-mail/package/contents/ui/MailViewer.qml new file mode 100644 index 00000000..f70004da --- /dev/null +++ b/applications/kube-mail/package/contents/ui/MailViewer.qml @@ -0,0 +1,33 @@ +import QtQuick 2.4 +import QtQuick.Controls 1.3 +import QtQuick.Layouts 1.1 +import QtWebKit 3.0 + +Item { + id: root + property string html; + + WebView { + id: webview + anchors.fill: parent + onNavigationRequested: { + // detect URL scheme prefix, most likely an external link + var schemaRE = /^\w+:/; + if (schemaRE.test(request.url)) { + request.action = WebView.AcceptRequest; + } else { + request.action = WebView.IgnoreRequest; + // delegate request.url here + } + } + onLoadingChanged: { + console.warn("Error is ", loadRequest.errorString); + console.warn("Status is ", loadRequest.status); + } + } + + onHtmlChanged: { + // console.warn("HTML is ", html); + webview.loadHtml(html); + } +} diff --git a/applications/kube-mail/package/contents/ui/SingleMailView.qml b/applications/kube-mail/package/contents/ui/SingleMailView.qml index b6163798..e9563f1e 100644 --- a/applications/kube-mail/package/contents/ui/SingleMailView.qml +++ b/applications/kube-mail/package/contents/ui/SingleMailView.qml @@ -41,17 +41,19 @@ Item { } delegate: Item { - height: root.height - width: root.widht + anchors.fill: parent ColumnLayout { + anchors.fill: parent Label { text: model.id } + Label { text: model.sender } + Label { text: model.senderName } @@ -60,12 +62,12 @@ Item { text: model.subject } - /*Label { - text: model.mimeMessage - }*/ - Label { - text: model.renderedMessage + MailViewer { + html: model.renderedMessage + Layout.fillHeight: true + Layout.fillWidth: true } + } } } -- cgit v1.2.3