diff --git a/src/librssguard/gui/messagepreviewer.cpp b/src/librssguard/gui/messagepreviewer.cpp index 8e67c7331..1384fe6aa 100644 --- a/src/librssguard/gui/messagepreviewer.cpp +++ b/src/librssguard/gui/messagepreviewer.cpp @@ -2,6 +2,7 @@ #include "gui/messagepreviewer.h" +#include "3rd-party/boolinq/boolinq.h" #include "database/databasequeries.h" #include "gui/dialogs/formmain.h" #include "gui/itemdetails.h" @@ -282,6 +283,10 @@ void MessagePreviewer::updateLabels(bool only_clear) { m_separator = m_toolBar->addSeparator(); auto lbls = m_root.data()->getParentServiceRoot()->labelsNode()->labels(); + std::sort(lbls.begin(), lbls.end(), [](Label* lhs, Label* rhs) { + return lhs->title().compare(rhs->title(), Qt::CaseSensitivity::CaseInsensitive) < 0; + }); + for (auto* label : lbls) { LabelToolbarAction* act_label = new LabelToolbarAction(this);