Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(679)

Side by Side Diff: mash/browser/browser.cc

Issue 2038143003: Support link hovering. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@clean
Patch Set: . Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | mash/webtest/webtest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "mash/browser/browser.h" 5 #include "mash/browser/browser.h"
6 6
7 #include "base/macros.h" 7 #include "base/macros.h"
8 #include "base/memory/weak_ptr.h" 8 #include "base/memory/weak_ptr.h"
9 #include "base/message_loop/message_loop.h" 9 #include "base/message_loop/message_loop.h"
10 #include "base/strings/string16.h" 10 #include "base/strings/string16.h"
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 reload_button_->set_request_focus_on_press(false); 145 reload_button_->set_request_focus_on_press(false);
146 AddChildView(back_button_); 146 AddChildView(back_button_);
147 AddChildView(forward_button_); 147 AddChildView(forward_button_);
148 AddChildView(reload_button_); 148 AddChildView(reload_button_);
149 AddChildView(prompt_); 149 AddChildView(prompt_);
150 AddChildView(debug_button_); 150 AddChildView(debug_button_);
151 AddChildView(throbber_); 151 AddChildView(throbber_);
152 AddChildView(progress_bar_); 152 AddChildView(progress_bar_);
153 AddChildView(debug_view_); 153 AddChildView(debug_view_);
154 debug_view_->set_view(view_.get()); 154 debug_view_->set_view(view_.get());
155 view_->SetResizerSize(gfx::Size(16, 16));
155 } 156 }
156 ~UI() override { browser_->RemoveWindow(GetWidget()); } 157 ~UI() override { browser_->RemoveWindow(GetWidget()); }
157 158
158 void NavigateTo(const GURL& url) { view_->NavigateTo(url); } 159 void NavigateTo(const GURL& url) { view_->NavigateTo(url); }
159 160
160 private: 161 private:
161 // Overridden from views::WidgetDelegate: 162 // Overridden from views::WidgetDelegate:
162 views::View* GetContentsView() override { return this; } 163 views::View* GetContentsView() override { return this; }
163 base::string16 GetWindowTitle() const override { 164 base::string16 GetWindowTitle() const override {
164 // TODO(beng): use resources. 165 // TODO(beng): use resources.
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 throbber_->Stop(); 287 throbber_->Stop();
287 progress_bar_->SetProgress(0.f); 288 progress_bar_->SetProgress(0.f);
288 } 289 }
289 } 290 }
290 void NavigationStateChanged(const GURL& url, 291 void NavigationStateChanged(const GURL& url,
291 const mojo::String& title, 292 const mojo::String& title,
292 bool can_go_back, 293 bool can_go_back,
293 bool can_go_forward) override { 294 bool can_go_forward) override {
294 EnableButton(back_button_, can_go_back); 295 EnableButton(back_button_, can_go_back);
295 EnableButton(forward_button_, can_go_forward); 296 EnableButton(forward_button_, can_go_forward);
296 prompt_->SetText(base::UTF8ToUTF16(url.spec())); 297 current_url_ = url;
298 prompt_->SetText(base::UTF8ToUTF16(current_url_.spec()));
297 current_title_ = base::UTF8ToUTF16(title.get()); 299 current_title_ = base::UTF8ToUTF16(title.get());
298 GetWidget()->UpdateWindowTitle(); 300 GetWidget()->UpdateWindowTitle();
299 } 301 }
300 void LoadProgressChanged(double progress) override { 302 void LoadProgressChanged(double progress) override {
301 progress_bar_->SetProgress(progress); 303 progress_bar_->SetProgress(progress);
302 } 304 }
305 void UpdateHoverURL(const GURL& url) override {
306 if (url.is_valid())
307 prompt_->SetText(base::UTF8ToUTF16(url.spec()));
308 else
309 prompt_->SetText(base::UTF8ToUTF16(current_url_.spec()));
310 }
303 void ViewCreated(navigation::mojom::ViewPtr view, 311 void ViewCreated(navigation::mojom::ViewPtr view,
304 navigation::mojom::ViewClientRequest request, 312 navigation::mojom::ViewClientRequest request,
305 bool is_popup, 313 bool is_popup,
306 const gfx::Rect& initial_rect, 314 const gfx::Rect& initial_rect,
307 bool user_gesture) override { 315 bool user_gesture) override {
308 views::Widget* window = views::Widget::CreateWindowWithContextAndBounds( 316 views::Widget* window = views::Widget::CreateWindowWithContextAndBounds(
309 new UI(browser_, is_popup ? UI::Type::POPUP : UI::Type::WINDOW, 317 new UI(browser_, is_popup ? UI::Type::POPUP : UI::Type::WINDOW,
310 std::move(view), std::move(request)), 318 std::move(view), std::move(request)),
311 nullptr, initial_rect); 319 nullptr, initial_rect);
312 window->Show(); 320 window->Show();
(...skipping 20 matching lines...) Expand all
333 341
334 mus::Window* content_area_ = nullptr; 342 mus::Window* content_area_ = nullptr;
335 343
336 DebugView* debug_view_; 344 DebugView* debug_view_;
337 345
338 navigation::mojom::ViewPtr view_; 346 navigation::mojom::ViewPtr view_;
339 mojo::Binding<navigation::mojom::ViewClient> view_client_binding_; 347 mojo::Binding<navigation::mojom::ViewClient> view_client_binding_;
340 348
341 bool is_loading_ = false; 349 bool is_loading_ = false;
342 base::string16 current_title_; 350 base::string16 current_title_;
351 GURL current_url_;
343 352
344 bool showing_debug_view_ = false; 353 bool showing_debug_view_ = false;
345 354
346 DISALLOW_COPY_AND_ASSIGN(UI); 355 DISALLOW_COPY_AND_ASSIGN(UI);
347 }; 356 };
348 357
349 Browser::Browser() {} 358 Browser::Browser() {}
350 Browser::~Browser() {} 359 Browser::~Browser() {}
351 360
352 void Browser::AddWindow(views::Widget* window) { 361 void Browser::AddWindow(views::Widget* window) {
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
400 AddWindow(window); 409 AddWindow(window);
401 } 410 }
402 411
403 void Browser::Create(shell::Connection* connection, 412 void Browser::Create(shell::Connection* connection,
404 mojom::LaunchableRequest request) { 413 mojom::LaunchableRequest request) {
405 bindings_.AddBinding(this, std::move(request)); 414 bindings_.AddBinding(this, std::move(request));
406 } 415 }
407 416
408 } // namespace browser 417 } // namespace browser
409 } // namespace mash 418 } // namespace mash
OLDNEW
« no previous file with comments | « no previous file | mash/webtest/webtest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698