From e80a9bbb932c552b030d082060a32bc81d33eefe Mon Sep 17 00:00:00 2001 From: Haojian Wu Date: Sat, 1 Apr 2017 14:56:51 +0200 Subject: [PATCH] Move title_ to InspectableWebContentsViewVies to get rid of cast. --- .../views/inspectable_web_contents_view_views.cc | 14 +++++--------- .../views/inspectable_web_contents_view_views.h | 3 +++ 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/brightray/browser/views/inspectable_web_contents_view_views.cc b/brightray/browser/views/inspectable_web_contents_view_views.cc index 073da870e564..8f52ca569952 100644 --- a/brightray/browser/views/inspectable_web_contents_view_views.cc +++ b/brightray/browser/views/inspectable_web_contents_view_views.cc @@ -24,8 +24,7 @@ class DevToolsWindowDelegate : public views::ClientView, : views::ClientView(widget, view), shell_(shell), view_(view), - widget_(widget), - title_(base::ASCIIToUTF16("Developer Tools")) { + widget_(widget) { // A WidgetDelegate should be deleted on DeleteDelegate. set_owned_by_client(); @@ -34,15 +33,13 @@ class DevToolsWindowDelegate : public views::ClientView, } virtual ~DevToolsWindowDelegate() {} - void SetWindowTitle(const base::string16& title) { title_ = title; } - // views::WidgetDelegate: void DeleteDelegate() override { delete this; } views::View* GetInitiallyFocusedView() override { return view_; } bool CanResize() const override { return true; } bool CanMaximize() const override { return true; } bool CanMinimize() const override { return true; } - base::string16 GetWindowTitle() const override { return title_; } + base::string16 GetWindowTitle() const override { return shell_->GetTitle(); } gfx::ImageSkia GetWindowAppIcon() override { return GetWindowIcon(); } gfx::ImageSkia GetWindowIcon() override { return icon_; } views::Widget* GetWidget() override { return widget_; } @@ -62,7 +59,6 @@ class DevToolsWindowDelegate : public views::ClientView, InspectableWebContentsViewViews* shell_; views::View* view_; views::Widget* widget_; - base::string16 title_; gfx::ImageSkia icon_; DISALLOW_COPY_AND_ASSIGN(DevToolsWindowDelegate); @@ -82,7 +78,8 @@ InspectableWebContentsViewViews::InspectableWebContentsViewViews( contents_web_view_(nullptr), devtools_web_view_(new views::WebView(nullptr)), devtools_visible_(false), - devtools_window_delegate_(nullptr) { + devtools_window_delegate_(nullptr), + title_(base::ASCIIToUTF16("Developer Tools")) { set_owned_by_client(); if (inspectable_web_contents_->GetWebContents()->GetNativeView()) { @@ -203,8 +200,7 @@ void InspectableWebContentsViewViews::SetContentsResizingStrategy( void InspectableWebContentsViewViews::SetTitle(const base::string16& title) { if (devtools_window_) { - static_cast(devtools_window_delegate_) - ->SetWindowTitle(title); + title_ = title; devtools_window_->UpdateWindowTitle(); } } diff --git a/brightray/browser/views/inspectable_web_contents_view_views.h b/brightray/browser/views/inspectable_web_contents_view_views.h index 1d2963fd19e7..9094b9f35dc9 100644 --- a/brightray/browser/views/inspectable_web_contents_view_views.h +++ b/brightray/browser/views/inspectable_web_contents_view_views.h @@ -40,6 +40,8 @@ class InspectableWebContentsViewViews : public InspectableWebContentsView, return inspectable_web_contents_; } + const base::string16& GetTitle() const { return title_; } + private: // views::View: void Layout() override; @@ -55,6 +57,7 @@ class InspectableWebContentsViewViews : public InspectableWebContentsView, DevToolsContentsResizingStrategy strategy_; bool devtools_visible_; views::WidgetDelegate* devtools_window_delegate_; + base::string16 title_; DISALLOW_COPY_AND_ASSIGN(InspectableWebContentsViewViews); };