Correctly delete the moved search tab

PR #21687.
Closes #21675.
This commit is contained in:
Vladimir Golovnev 2024-10-28 09:41:09 +03:00 committed by GitHub
parent 91b2687032
commit 84d895231c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 9 additions and 2 deletions

View file

@ -1,7 +1,7 @@
/* /*
* Bittorrent Client using Qt and libtorrent. * Bittorrent Client using Qt and libtorrent.
* Copyright (C) 2015-2024 Vladimir Golovnev <glassez@yandex.ru>
* Copyright (C) 2020, Will Da Silva <will@willdasilva.xyz> * Copyright (C) 2020, Will Da Silva <will@willdasilva.xyz>
* Copyright (C) 2015, 2018 Vladimir Golovnev <glassez@yandex.ru>
* Copyright (C) 2006 Christophe Dumez <chris@qbittorrent.org> * Copyright (C) 2006 Christophe Dumez <chris@qbittorrent.org>
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
@ -120,6 +120,7 @@ SearchWidget::SearchWidget(IGUIApplication *app, MainWindow *mainWindow)
#endif #endif
connect(m_ui->tabWidget, &QTabWidget::tabCloseRequested, this, &SearchWidget::closeTab); connect(m_ui->tabWidget, &QTabWidget::tabCloseRequested, this, &SearchWidget::closeTab);
connect(m_ui->tabWidget, &QTabWidget::currentChanged, this, &SearchWidget::tabChanged); connect(m_ui->tabWidget, &QTabWidget::currentChanged, this, &SearchWidget::tabChanged);
connect(m_ui->tabWidget->tabBar(), &QTabBar::tabMoved, this, &SearchWidget::tabMoved);
const auto *searchManager = SearchPluginManager::instance(); const auto *searchManager = SearchPluginManager::instance();
const auto onPluginChanged = [this]() const auto onPluginChanged = [this]()
@ -262,6 +263,11 @@ void SearchWidget::tabChanged(const int index)
m_currentSearchTab = ((index < 0) ? nullptr : m_allTabs.at(m_ui->tabWidget->currentIndex())); m_currentSearchTab = ((index < 0) ? nullptr : m_allTabs.at(m_ui->tabWidget->currentIndex()));
} }
void SearchWidget::tabMoved(const int from, const int to)
{
m_allTabs.move(from, to);
}
void SearchWidget::selectMultipleBox([[maybe_unused]] const int index) void SearchWidget::selectMultipleBox([[maybe_unused]] const int index)
{ {
if (selectedPlugin() == u"multi") if (selectedPlugin() == u"multi")

View file

@ -1,7 +1,7 @@
/* /*
* Bittorrent Client using Qt and libtorrent. * Bittorrent Client using Qt and libtorrent.
* Copyright (C) 2015-2024 Vladimir Golovnev <glassez@yandex.ru>
* Copyright (C) 2020, Will Da Silva <will@willdasilva.xyz> * Copyright (C) 2020, Will Da Silva <will@willdasilva.xyz>
* Copyright (C) 2015, 2018 Vladimir Golovnev <glassez@yandex.ru>
* Copyright (C) 2006 Christophe Dumez <chris@qbittorrent.org> * Copyright (C) 2006 Christophe Dumez <chris@qbittorrent.org>
* *
* This program is free software; you can redistribute it and/or * This program is free software; you can redistribute it and/or
@ -66,6 +66,7 @@ private slots:
private: private:
bool eventFilter(QObject *object, QEvent *event) override; bool eventFilter(QObject *object, QEvent *event) override;
void tabChanged(int index); void tabChanged(int index);
void tabMoved(int from, int to);
void closeTab(int index); void closeTab(int index);
void closeAllTabs(); void closeAllTabs();
void tabStatusChanged(QWidget *tab); void tabStatusChanged(QWidget *tab);