summaryrefslogtreecommitdiffstats
path: root/framework/src/domain/documenthandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/domain/documenthandler.cpp')
-rw-r--r--framework/src/domain/documenthandler.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/framework/src/domain/documenthandler.cpp b/framework/src/domain/documenthandler.cpp
index 0f949da8..3589fc9f 100644
--- a/framework/src/domain/documenthandler.cpp
+++ b/framework/src/domain/documenthandler.cpp
@@ -79,10 +79,36 @@ void DocumentHandler::setDocument(QQuickTextDocument *document)
79{ 79{
80 if (document != m_document) { 80 if (document != m_document) {
81 m_document = document; 81 m_document = document;
82 connect(m_document->textDocument(), &QTextDocument::contentsChanged, this, [this] () {
83 emit textChanged();
84 });
82 emit documentChanged(); 85 emit documentChanged();
83 } 86 }
84} 87}
85 88
89static QString stripInvisibleChars(const QString &s)
90{
91 auto text = s;
92 text.replace("\u2063", "");
93 return text;
94}
95
96QString DocumentHandler::plainText() const
97{
98 if (m_document) {
99 return stripInvisibleChars(m_document->textDocument()->toPlainText());
100 }
101 return {};
102}
103
104QString DocumentHandler::htmlText() const
105{
106 if (m_document) {
107 return stripInvisibleChars(m_document->textDocument()->toHtml());
108 }
109 return {};
110}
111
86int DocumentHandler::cursorPosition() const 112int DocumentHandler::cursorPosition() const
87{ 113{
88 return m_cursorPosition; 114 return m_cursorPosition;