mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-08-01 05:39:11 +00:00
Ladybird: Allow browser tabs to be closed
This is a small patch which wires up the tab close button.
This commit is contained in:
parent
8af5b49cba
commit
67ab6dd2e6
Notes:
sideshowbarker
2024-07-17 08:45:34 +09:00
Author: https://github.com/ucosty
Commit: 67ab6dd2e6
Pull-request: https://github.com/SerenityOS/serenity/pull/16583
Reviewed-by: https://github.com/ADKaster
Reviewed-by: https://github.com/awesomekling ✅
Reviewed-by: https://github.com/linusg
2 changed files with 14 additions and 2 deletions
|
@ -29,6 +29,7 @@ BrowserWindow::BrowserWindow(Core::EventLoop& event_loop)
|
|||
setWindowTitle(m_tabs_container->tabText(index));
|
||||
setWindowIcon(m_tabs_container->tabIcon(index));
|
||||
});
|
||||
QObject::connect(m_tabs_container, &QTabWidget::tabCloseRequested, this, &BrowserWindow::close_tab);
|
||||
|
||||
new_tab();
|
||||
|
||||
|
@ -46,11 +47,21 @@ void BrowserWindow::new_tab()
|
|||
}
|
||||
|
||||
m_tabs_container->addTab(tab_ptr, "New Tab");
|
||||
m_tabs_container->setCurrentWidget(tab_ptr);
|
||||
|
||||
QObject::connect(tab_ptr, &Tab::title_changed, this, &BrowserWindow::tab_title_changed);
|
||||
QObject::connect(tab_ptr, &Tab::favicon_changed, this, &BrowserWindow::tab_favicon_changed);
|
||||
}
|
||||
|
||||
void BrowserWindow::close_tab(int index)
|
||||
{
|
||||
auto* tab = m_tabs_container->widget(index);
|
||||
m_tabs_container->removeTab(index);
|
||||
m_tabs.remove_first_matching([&](auto& entry) {
|
||||
return entry == tab;
|
||||
});
|
||||
}
|
||||
|
||||
int BrowserWindow::tab_index(Tab* tab)
|
||||
{
|
||||
return m_tabs_container->indexOf(tab);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue