summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/tab-widgets/maintab.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'desktop-widgets/tab-widgets/maintab.cpp')
-rw-r--r--desktop-widgets/tab-widgets/maintab.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/desktop-widgets/tab-widgets/maintab.cpp b/desktop-widgets/tab-widgets/maintab.cpp
index 613398109..5c6e5104c 100644
--- a/desktop-widgets/tab-widgets/maintab.cpp
+++ b/desktop-widgets/tab-widgets/maintab.cpp
@@ -369,11 +369,15 @@ bool MainTab::isEditing()
return editMode != NONE;
}
+static bool isHtml(const QString &s)
+{
+ return s.contains("<div", Qt::CaseInsensitive) || s.contains("<table", Qt::CaseInsensitive);
+}
+
void MainTab::updateNotes(const struct dive *d)
{
QString tmp(d->notes);
- if (tmp.indexOf("<div") != -1) {
- tmp.replace(QString("\n"), QString("<br>"));
+ if (isHtml(tmp)) {
ui.notes->setHtml(tmp);
} else {
ui.notes->setPlainText(tmp);
@@ -881,8 +885,8 @@ void MainTab::on_notes_editingFinished()
if (!currentTrip && !current_dive)
return;
- QString notes = ui.notes->toHtml().indexOf("<div") != -1 ?
- ui.notes->toHtml() : ui.notes->toPlainText();
+ QString html = ui.notes->toHtml();
+ QString notes = isHtml(html) ? html : ui.notes->toPlainText();
if (currentTrip)
Command::editTripNotes(currentTrip, notes);