diff options
author | Shawn Rutledge <shawn.rutledge@qt.io> | 2022-05-20 09:23:28 +0200 |
---|---|---|
committer | Shawn Rutledge <shawn.rutledge@qt.io> | 2022-06-24 22:42:28 +0200 |
commit | 56f0ebfe860e440dcbba8997f44836debc901119 (patch) | |
tree | 87cce44b0d2cf34a3dca418d4c126874300be5bb /tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp | |
parent | ec0ecedf2ae6f467674bd4e8bc38680669012a08 (diff) |
Support markdown in QTextEditMimeData; fix pasting trailing newlines
- Since 4edcea762d9ce334c4c1a78234c90c118b81da87 the dropsite example
shows markdown if available; and now it shows that when we do DnD
of a selection from the richtext example, text/markdown is available.
- If we artificially make html unavailable, copying and pasting between
widget-based rich text editors uses markdown.
In case markdown writer output contains unnecessary backticks due to
monospace fonts getting used, the workaround from
1ad456c908467212bc30223a69eb7524b64b86e1 is applied.
Pick-to: 6.4
Task-number: QTBUG-76105
Task-number: QTBUG-103484
Change-Id: Ie6ca4dbb450dbc36b3d09fd0df1ae5909aaebca7
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp')
-rw-r--r-- | tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp b/tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp index 16d5c5308e..03b07c41ec 100644 --- a/tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp +++ b/tests/auto/corelib/kernel/qmimedata/tst_qmimedata.cpp @@ -72,12 +72,19 @@ void tst_QMimeData::data() const mimeData.setData("text/plain", "pirates"); QCOMPARE(mimeData.data("text/plain"), QByteArray("pirates")); QCOMPARE(mimeData.data("text/html").length(), 0); + QCOMPARE(mimeData.data("text/markdown").length(), 0); // html time mimeData.setData("text/html", "ninjas"); QCOMPARE(mimeData.data("text/html"), QByteArray("ninjas")); QCOMPARE(mimeData.data("text/plain"), QByteArray("pirates")); // make sure text not damaged QCOMPARE(mimeData.data("text/html"), mimeData.html().toLatin1()); + + // markdown time + mimeData.setData("text/markdown", "vikings"); + QCOMPARE(mimeData.data("text/markdown"), QByteArray("vikings")); + QCOMPARE(mimeData.data("text/html"), QByteArray("ninjas")); + QCOMPARE(mimeData.data("text/plain"), QByteArray("pirates")); } void tst_QMimeData::formats() const @@ -92,6 +99,10 @@ void tst_QMimeData::formats() const mimeData.setData("text/html", "ninjas"); QCOMPARE(mimeData.formats(), QStringList() << "text/plain" << "text/html"); + // set markdown, verify + mimeData.setData("text/markdown", "vikings"); + QCOMPARE(mimeData.formats(), QStringList() << "text/plain" << "text/html" << "text/markdown"); + // clear, verify mimeData.clear(); QCOMPARE(mimeData.formats(), QStringList()); |