29#include <QInputDialog>
35QString TabManagerPlugin::s_settingsPath;
39 , m_controller(nullptr)
40 , m_tabManagerWidget(nullptr)
41 , m_viewType(Undefined)
43 , m_asTabBarReplacement(false)
54 connect(
mApp->plugins(), SIGNAL(webPageCreated(
WebPage*)), m_controller, SIGNAL(requestRefreshTree()));
55 connect(
mApp->plugins(), SIGNAL(webPageDeleted(
WebPage*)), m_controller, SIGNAL(requestRefreshTree(
WebPage*)));
61 QSettings settings(s_settingsPath +
QL1S(
"/tabmanager.ini"), QSettings::IniFormat);
62 settings.beginGroup(
"View");
65 m_asTabBarReplacement = settings.value(
"AsTabBarReplacement",
false).toBool();
76 setTabBarVisible(
true);
84 return (QString::fromLatin1(
Qz::VERSION) == QLatin1String(FALKON_VERSION));
97 showAction->setCheckable(
false);
98 connect(showAction, SIGNAL(triggered()), m_controller, SLOT(raiseTabManager()));
99 menu->addAction(showAction);
109 if (!m_tabManagerWidget) {
111 m_tabManagerWidget->setWindowFlags(Qt::Window);
116 const auto windows =
mApp->windows();
118 mainWindowCreated(window,
false);
124void TabManagerPlugin::mainWindowCreated(
BrowserWindow* window,
bool refresh)
133 connect(window->
tabWidget(), SIGNAL(currentChanged(
int)), m_controller, SIGNAL(requestRefreshTree()));
134 connect(window->
tabWidget(), SIGNAL(pinStateChanged(
int,
bool)), m_controller, SIGNAL(requestRefreshTree()));
142void TabManagerPlugin::setTabBarVisible(
bool visible)
144 const auto windows =
mApp->windows();
157 const auto windows =
mApp->windows();
162 m_tabManagerWidget->close();
163 delete m_tabManagerWidget;
164 m_tabManagerWidget =
nullptr;
176 if (m_viewType != type) {
183 mApp->getWindow()->sideBarManager()->showSideBar(QStringLiteral(
"TabManager"));
187 const auto windows =
mApp->windows();
198 return s_settingsPath;
203 QSettings settings(s_settingsPath +
QL1S(
"/tabmanager.ini"), QSettings::IniFormat);
204 settings.beginGroup(
"View");
205 settings.setValue(
"GroupType", m_controller->
groupType());
206 settings.setValue(
"ViewType",
viewType());
213 return m_asTabBarReplacement;
218 m_asTabBarReplacement = yes;
219 setTabBarVisible(!m_asTabBarReplacement);
TabWidget * tabWidget() const
static void removeSidebar(SideBarInterface *interface)
static void addSidebar(const QString &id, SideBarInterface *interface)
void setForceHidden(bool hidden)
void init(InitState state, const QString &settingsPath) override
void setViewType(ViewType type)
static QString settingsPath()
void insertManagerWidget()
bool asTabBarReplacement() const
bool testPlugin() override
void showSettings(QWidget *parent) override
void populateExtensionsMenu(QMenu *menu) override
void removeManagerWidget()
void setAsTabBarReplacement(bool yes)
FALKON_EXPORT const char * VERSION