feat: Online search button

- MailListView: new '🌐 Online' button in search bar
- Clicking button emits onlineSearchRequested(query)
- If search box empty, shows QInputDialog for query entry
- MainMainWindow::onOnlineSearchRequested() handler:
  - Validates current folder selected
  - Gets account for folder
  - Shows status message
  - Shows info dialog with query/folder/account (placeholder for IMAP SEARCH)
- Signal: onlineSearchRequested(const QString& query)
- Button styled in blue (online theme)
This commit is contained in:
2026-08-26 04:45:10 +02:00
parent 6d1feabfc5
commit 6f348b17f0
14 changed files with 6066 additions and 7566 deletions
@@ -88,6 +88,8 @@ template <> constexpr inline auto MainMainWindow::qt_create_metaobjectdata<qt_me
"onReplyRequested",
"onForwardRequested",
"onMarkUnreadRequested",
"onOnlineSearchRequested",
"query",
"onEmbeddedSendRequested",
"to",
"cc",
@@ -222,16 +224,20 @@ template <> constexpr inline auto MainMainWindow::qt_create_metaobjectdata<qt_me
QtMocHelpers::SlotData<void(int)>(47, 2, QMC::AccessPrivate, QMetaType::Void, {{
{ QMetaType::Int, 7 },
}}),
// Slot 'onOnlineSearchRequested'
QtMocHelpers::SlotData<void(const QString &)>(48, 2, QMC::AccessPrivate, QMetaType::Void, {{
{ QMetaType::QString, 49 },
}}),
// Slot 'onEmbeddedSendRequested'
QtMocHelpers::SlotData<void(const QString &, const QString &, const QString &, const QString &, const QString &, const QDateTime &, const QString &, const QStringList &)>(48, 2, QMC::AccessPrivate, QMetaType::Void, {{
{ QMetaType::QString, 49 }, { QMetaType::QString, 50 }, { QMetaType::QString, 51 }, { QMetaType::QString, 52 },
{ QMetaType::QString, 53 }, { QMetaType::QDateTime, 54 }, { QMetaType::QString, 55 }, { QMetaType::QStringList, 56 },
QtMocHelpers::SlotData<void(const QString &, const QString &, const QString &, const QString &, const QString &, const QDateTime &, const QString &, const QStringList &)>(50, 2, QMC::AccessPrivate, QMetaType::Void, {{
{ QMetaType::QString, 51 }, { QMetaType::QString, 52 }, { QMetaType::QString, 53 }, { QMetaType::QString, 54 },
{ QMetaType::QString, 55 }, { QMetaType::QDateTime, 56 }, { QMetaType::QString, 57 }, { QMetaType::QStringList, 58 },
}}),
// Slot 'onEmbeddedDiscardRequested'
QtMocHelpers::SlotData<void()>(57, 2, QMC::AccessPrivate, QMetaType::Void),
QtMocHelpers::SlotData<void()>(59, 2, QMC::AccessPrivate, QMetaType::Void),
// Slot 'onEmbeddedDetachRequested'
QtMocHelpers::SlotData<void(QWidget *)>(58, 2, QMC::AccessPrivate, QMetaType::Void, {{
{ 0x80000000 | 59, 60 },
QtMocHelpers::SlotData<void(QWidget *)>(60, 2, QMC::AccessPrivate, QMetaType::Void, {{
{ 0x80000000 | 61, 62 },
}}),
};
QtMocHelpers::UintData qt_properties {
@@ -291,16 +297,17 @@ void MainMainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _
case 32: _t->onReplyRequested((*reinterpret_cast<std::add_pointer_t<int>>(_a[1]))); break;
case 33: _t->onForwardRequested((*reinterpret_cast<std::add_pointer_t<int>>(_a[1]))); break;
case 34: _t->onMarkUnreadRequested((*reinterpret_cast<std::add_pointer_t<int>>(_a[1]))); break;
case 35: _t->onEmbeddedSendRequested((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[5])),(*reinterpret_cast<std::add_pointer_t<QDateTime>>(_a[6])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[7])),(*reinterpret_cast<std::add_pointer_t<QStringList>>(_a[8]))); break;
case 36: _t->onEmbeddedDiscardRequested(); break;
case 37: _t->onEmbeddedDetachRequested((*reinterpret_cast<std::add_pointer_t<QWidget*>>(_a[1]))); break;
case 35: _t->onOnlineSearchRequested((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
case 36: _t->onEmbeddedSendRequested((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[5])),(*reinterpret_cast<std::add_pointer_t<QDateTime>>(_a[6])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[7])),(*reinterpret_cast<std::add_pointer_t<QStringList>>(_a[8]))); break;
case 37: _t->onEmbeddedDiscardRequested(); break;
case 38: _t->onEmbeddedDetachRequested((*reinterpret_cast<std::add_pointer_t<QWidget*>>(_a[1]))); break;
default: ;
}
}
if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
switch (_id) {
default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
case 37:
case 38:
switch (*reinterpret_cast<int*>(_a[1])) {
default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
case 0:
@@ -330,14 +337,14 @@ int MainMainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 38)
if (_id < 39)
qt_static_metacall(this, _c, _id, _a);
_id -= 38;
_id -= 39;
}
if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 38)
if (_id < 39)
qt_static_metacall(this, _c, _id, _a);
_id -= 38;
_id -= 39;
}
return _id;
}