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

Side by Side Diff: chrome/browser/views/frame/browser_view.cc

Issue 1594003: A patch to fix a couple of issues in interactive_ui_tests on ChromeOS (Closed)
Patch Set: Created 10 years, 8 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
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "chrome/browser/views/frame/browser_view.h" 5 #include "chrome/browser/views/frame/browser_view.h"
6 6
7 #if defined(OS_LINUX) 7 #if defined(OS_LINUX)
8 #include <gtk/gtk.h> 8 #include <gtk/gtk.h>
9 #endif 9 #endif
10 10
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 #include "chrome/browser/jumplist.h" 86 #include "chrome/browser/jumplist.h"
87 #elif defined(OS_LINUX) 87 #elif defined(OS_LINUX)
88 #include "chrome/browser/views/accelerator_table_gtk.h" 88 #include "chrome/browser/views/accelerator_table_gtk.h"
89 #include "views/window/hit_test.h" 89 #include "views/window/hit_test.h"
90 #endif 90 #endif
91 91
92 using base::TimeDelta; 92 using base::TimeDelta;
93 using views::ColumnSet; 93 using views::ColumnSet;
94 using views::GridLayout; 94 using views::GridLayout;
95 95
96 // static
97 SkBitmap BrowserView::default_favicon_;
98 SkBitmap BrowserView::otr_avatar_;
99 // The height of the status bubble. 96 // The height of the status bubble.
100 static const int kStatusBubbleHeight = 20; 97 static const int kStatusBubbleHeight = 20;
101 // The name of a key to store on the window handle so that other code can 98 // The name of a key to store on the window handle so that other code can
102 // locate this object using just the handle. 99 // locate this object using just the handle.
103 #if defined(OS_WIN) 100 #if defined(OS_WIN)
104 static const wchar_t* kBrowserViewKey = L"__BROWSER_VIEW__"; 101 static const wchar_t* kBrowserViewKey = L"__BROWSER_VIEW__";
105 #else 102 #else
106 static const char* kBrowserViewKey = "__BROWSER_VIEW__"; 103 static const char* kBrowserViewKey = "__BROWSER_VIEW__";
107 #endif 104 #endif
108 // How frequently we check for hung plugin windows. 105 // How frequently we check for hung plugin windows.
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 contents_split_(NULL), 410 contents_split_(NULL),
414 initialized_(false), 411 initialized_(false),
415 ignore_layout_(false), 412 ignore_layout_(false),
416 #if defined(OS_WIN) 413 #if defined(OS_WIN)
417 hung_window_detector_(&hung_plugin_action_), 414 hung_window_detector_(&hung_plugin_action_),
418 ticker_(0), 415 ticker_(0),
419 #endif 416 #endif
420 extension_shelf_(NULL), 417 extension_shelf_(NULL),
421 last_focused_view_storage_id_( 418 last_focused_view_storage_id_(
422 views::ViewStorage::GetSharedInstance()->CreateStorageID()) { 419 views::ViewStorage::GetSharedInstance()->CreateStorageID()) {
423 InitClass();
424 browser_->tabstrip_model()->AddObserver(this); 420 browser_->tabstrip_model()->AddObserver(this);
425 } 421 }
426 422
427 BrowserView::~BrowserView() { 423 BrowserView::~BrowserView() {
428 browser_->tabstrip_model()->RemoveObserver(this); 424 browser_->tabstrip_model()->RemoveObserver(this);
429 425
430 #if defined(OS_WIN) 426 #if defined(OS_WIN)
431 // Remove this observer. 427 // Remove this observer.
432 if (aeropeek_manager_.get()) 428 if (aeropeek_manager_.get())
433 browser_->tabstrip_model()->RemoveObserver(aeropeek_manager_.get()); 429 browser_->tabstrip_model()->RemoveObserver(aeropeek_manager_.get());
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
614 void BrowserView::ActivationChanged(bool activated) { 610 void BrowserView::ActivationChanged(bool activated) {
615 if (activated) 611 if (activated)
616 BrowserList::SetLastActive(browser_.get()); 612 BrowserList::SetLastActive(browser_.get());
617 } 613 }
618 614
619 TabContents* BrowserView::GetSelectedTabContents() const { 615 TabContents* BrowserView::GetSelectedTabContents() const {
620 return browser_->GetSelectedTabContents(); 616 return browser_->GetSelectedTabContents();
621 } 617 }
622 618
623 SkBitmap BrowserView::GetOTRAvatarIcon() { 619 SkBitmap BrowserView::GetOTRAvatarIcon() {
624 if (otr_avatar_.isNull()) { 620 static SkBitmap* otr_avatar_ = new SkBitmap();
621
622 if (otr_avatar_->isNull()) {
625 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); 623 ResourceBundle& rb = ResourceBundle::GetSharedInstance();
626 otr_avatar_ = *rb.GetBitmapNamed(IDR_OTR_ICON); 624 *otr_avatar_ = *rb.GetBitmapNamed(IDR_OTR_ICON);
627 } 625 }
628 return otr_avatar_; 626 return *otr_avatar_;
629 } 627 }
630 628
631 #if defined(OS_WIN) 629 #if defined(OS_WIN)
632 void BrowserView::PrepareToRunSystemMenu(HMENU menu) { 630 void BrowserView::PrepareToRunSystemMenu(HMENU menu) {
633 system_menu_->UpdateStates(); 631 system_menu_->UpdateStates();
634 } 632 }
635 #endif 633 #endif
636 634
637 void BrowserView::TraverseNextAccessibleToolbar(bool forward) { 635 void BrowserView::TraverseNextAccessibleToolbar(bool forward) {
638 // TODO(mohamed) This needs to be smart, that applies to all toolbars. 636 // TODO(mohamed) This needs to be smart, that applies to all toolbars.
(...skipping 1502 matching lines...) Expand 10 before | Expand all | Expand 10 after
2141 ticker_.Start(); 2139 ticker_.Start();
2142 2140
2143 pref_service->SetInteger(prefs::kPluginMessageResponseTimeout, 2141 pref_service->SetInteger(prefs::kPluginMessageResponseTimeout,
2144 plugin_message_response_timeout); 2142 plugin_message_response_timeout);
2145 pref_service->SetInteger(prefs::kHungPluginDetectFrequency, 2143 pref_service->SetInteger(prefs::kHungPluginDetectFrequency,
2146 hung_plugin_detect_freq); 2144 hung_plugin_detect_freq);
2147 } 2145 }
2148 #endif 2146 #endif
2149 } 2147 }
2150 2148
2151 // static
2152 void BrowserView::InitClass() {
2153 static bool initialized = false;
2154 if (!initialized) {
2155 ResourceBundle& rb = ResourceBundle::GetSharedInstance();
2156 default_favicon_ = *rb.GetBitmapNamed(IDR_DEFAULT_FAVICON);
2157 initialized = true;
2158 }
2159 }
2160
2161 #if !defined(OS_CHROMEOS) 2149 #if !defined(OS_CHROMEOS)
2162 // static 2150 // static
2163 BrowserWindow* BrowserWindow::CreateBrowserWindow(Browser* browser) { 2151 BrowserWindow* BrowserWindow::CreateBrowserWindow(Browser* browser) {
2164 // Create the view and the frame. The frame will attach itself via the view 2152 // Create the view and the frame. The frame will attach itself via the view
2165 // so we don't need to do anything with the pointer. 2153 // so we don't need to do anything with the pointer.
2166 BrowserView* view = new BrowserView(browser); 2154 BrowserView* view = new BrowserView(browser);
2167 BrowserFrame::Create(view, browser->profile()); 2155 BrowserFrame::Create(view, browser->profile());
2168 2156
2169 view->GetWindow()->GetNonClientView()-> 2157 view->GetWindow()->GetNonClientView()->
2170 SetAccessibleName(l10n_util::GetString(IDS_PRODUCT_NAME)); 2158 SetAccessibleName(l10n_util::GetString(IDS_PRODUCT_NAME));
2171 2159
2172 return view; 2160 return view;
2173 } 2161 }
2174 #endif 2162 #endif
2175 2163
2176 // static 2164 // static
2177 FindBar* BrowserWindow::CreateFindBar(Browser* browser) { 2165 FindBar* BrowserWindow::CreateFindBar(Browser* browser) {
2178 return browser::CreateFindBar(static_cast<BrowserView*>(browser->window())); 2166 return browser::CreateFindBar(static_cast<BrowserView*>(browser->window()));
2179 } 2167 }
OLDNEW
« no previous file with comments | « chrome/browser/views/frame/browser_view.h ('k') | chrome/browser/views/tab_contents/native_tab_contents_container_gtk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698