1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 15:28:11 +00:00

Browser: Set all cookies at once instead adding them separately

This commit is contained in:
Rafał Babiarz 2022-05-04 21:53:01 +02:00 committed by Linus Groh
parent dc66d16dc2
commit ac991b0a89
5 changed files with 9 additions and 8 deletions

View file

@ -6,12 +6,14 @@
#include "CookiesModel.h"
#include <utility>
namespace Browser {
void CookiesModel::add_item(Web::Cookie::Cookie const& item)
void CookiesModel::set_items(AK::Vector<Web::Cookie::Cookie> items)
{
begin_insert_rows({}, m_cookies.size(), m_cookies.size());
m_cookies.append(item);
m_cookies = move(items);
end_insert_rows();
did_update(DontInvalidateIndices);

View file

@ -25,7 +25,7 @@ public:
__Count,
};
void add_item(Web::Cookie::Cookie const& item);
void set_items(AK::Vector<Web::Cookie::Cookie> items);
void clear_items();
virtual int row_count(GUI::ModelIndex const&) const override { return m_cookies.size(); }
virtual int column_count(GUI::ModelIndex const& = GUI::ModelIndex()) const override { return Column::__Count; }

View file

@ -48,9 +48,9 @@ StorageWidget::StorageWidget()
m_local_storage_table_view->set_alternating_row_colors(true);
}
void StorageWidget::add_cookie(Web::Cookie::Cookie const& cookie)
void StorageWidget::set_cookies_entries(Vector<Web::Cookie::Cookie> entries)
{
m_cookies_model->add_item(cookie);
m_cookies_model->set_items(entries);
}
void StorageWidget::clear_cookies()

View file

@ -20,7 +20,7 @@ class StorageWidget final : public GUI::Widget {
public:
virtual ~StorageWidget() override = default;
void add_cookie(Web::Cookie::Cookie const& cookie);
void set_cookies_entries(Vector<Web::Cookie::Cookie> entries);
void clear_cookies();
void set_local_storage_entries(OrderedHashMap<String, String> entries);

View file

@ -606,8 +606,7 @@ void Tab::show_storage_inspector()
if (on_get_cookies_entries) {
auto cookies = on_get_cookies_entries();
m_storage_widget->clear_cookies();
for (auto cookie : cookies)
m_storage_widget->add_cookie(cookie);
m_storage_widget->set_cookies_entries(cookies);
}
if (on_get_local_storage_entries) {