diff options
Diffstat (limited to 'Userland')
-rw-r--r-- | Userland/Applications/Browser/InspectorWidget.cpp | 7 | ||||
-rw-r--r-- | Userland/Applications/Browser/InspectorWidget.h | 1 | ||||
-rw-r--r-- | Userland/Applications/Browser/Tab.cpp | 10 |
3 files changed, 17 insertions, 1 deletions
diff --git a/Userland/Applications/Browser/InspectorWidget.cpp b/Userland/Applications/Browser/InspectorWidget.cpp index eaac3ae982..fb7ddd997a 100644 --- a/Userland/Applications/Browser/InspectorWidget.cpp +++ b/Userland/Applications/Browser/InspectorWidget.cpp @@ -117,6 +117,13 @@ void InspectorWidget::set_dom_json(String json) } } +void InspectorWidget::clear_dom_json() +{ + m_dom_json.clear(); + m_dom_tree_view->set_model(nullptr); + clear_style_json(); +} + void InspectorWidget::set_dom_node_properties_json(i32 node_id, String specified_values_json, String computed_values_json) { if (node_id != m_inspected_node_id) { diff --git a/Userland/Applications/Browser/InspectorWidget.h b/Userland/Applications/Browser/InspectorWidget.h index 5c36d27ae5..58e1464ccc 100644 --- a/Userland/Applications/Browser/InspectorWidget.h +++ b/Userland/Applications/Browser/InspectorWidget.h @@ -19,6 +19,7 @@ public: void set_web_view(NonnullRefPtr<Web::OutOfProcessWebView> web_view) { m_web_view = web_view; } void set_dom_json(String); + void clear_dom_json(); void set_dom_node_properties_json(i32 node_id, String specified_values_json, String computed_values_json); void set_inspected_node(i32 node_id); diff --git a/Userland/Applications/Browser/Tab.cpp b/Userland/Applications/Browser/Tab.cpp index cee913d7c4..570d7a82b6 100644 --- a/Userland/Applications/Browser/Tab.cpp +++ b/Userland/Applications/Browser/Tab.cpp @@ -175,6 +175,14 @@ Tab::Tab(BrowserWindow& window) update_actions(); update_bookmark_button(url.to_string()); + + if (m_dom_inspector_widget) + m_dom_inspector_widget->clear_dom_json(); + }; + + hooks().on_load_finish = [this](auto&) { + if (m_dom_inspector_widget) + m_web_content_view->inspect_dom_tree(); }; hooks().on_link_click = [this](auto& url, auto& target, unsigned modifiers) { @@ -478,8 +486,8 @@ void Tab::show_inspector_window(Browser::Tab::InspectorTarget inspector_target) }; m_dom_inspector_widget = window->set_main_widget<InspectorWidget>(); m_dom_inspector_widget->set_web_view(*m_web_content_view); + m_web_content_view->inspect_dom_tree(); } - m_web_content_view->inspect_dom_tree(); if (inspector_target == InspectorTarget::HoveredElement) { Optional<i32> hovered_node = m_web_content_view->get_hovered_node_id(); |