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

Side by Side Diff: chrome/browser/views/toolbar_view.cc

Issue 27317: Support DWM switching.... (Closed) Base URL: svn://chrome-svn.corp.google.com/chrome/trunk/src/
Patch Set: '' Created 11 years, 9 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 | « chrome/browser/views/toolbar_view.h ('k') | chrome/views/custom_frame_view.h » ('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 (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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/toolbar_view.h" 5 #include "chrome/browser/views/toolbar_view.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 28 matching lines...) Expand all
39 #include "chrome/common/win_util.h" 39 #include "chrome/common/win_util.h"
40 #ifdef CHROME_PERSONALIZATION 40 #ifdef CHROME_PERSONALIZATION
41 #include "chrome/personalization/personalization.h" 41 #include "chrome/personalization/personalization.h"
42 #endif 42 #endif
43 #include "chrome/views/background.h" 43 #include "chrome/views/background.h"
44 #include "chrome/views/button_dropdown.h" 44 #include "chrome/views/button_dropdown.h"
45 #include "chrome/views/hwnd_view.h" 45 #include "chrome/views/hwnd_view.h"
46 #include "chrome/views/label.h" 46 #include "chrome/views/label.h"
47 #include "chrome/views/non_client_view.h" 47 #include "chrome/views/non_client_view.h"
48 #include "chrome/views/tooltip_manager.h" 48 #include "chrome/views/tooltip_manager.h"
49 #include "chrome/views/widget.h" 49 #include "chrome/views/window.h"
50 #include "grit/chromium_strings.h" 50 #include "grit/chromium_strings.h"
51 #include "grit/generated_resources.h" 51 #include "grit/generated_resources.h"
52 #include "grit/theme_resources.h" 52 #include "grit/theme_resources.h"
53 #include "net/base/net_util.h" 53 #include "net/base/net_util.h"
54 54
55 static const int kControlHorizOffset = 4; 55 static const int kControlHorizOffset = 4;
56 static const int kControlVertOffset = 6; 56 static const int kControlVertOffset = 6;
57 static const int kControlIndent = 3; 57 static const int kControlIndent = 3;
58 static const int kStatusBubbleWidth = 480; 58 static const int kStatusBubbleWidth = 480;
59 59
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after
346 if (!browser_->window() || !browser_->window()->IsMaximized()) { 346 if (!browser_->window() || !browser_->window()->IsMaximized()) {
347 int top_spacing = PopupTopSpacing(); 347 int top_spacing = PopupTopSpacing();
348 canvas->DrawBitmapInt(*kPopupBackgroundEdge, 0, top_spacing); 348 canvas->DrawBitmapInt(*kPopupBackgroundEdge, 0, top_spacing);
349 canvas->DrawBitmapInt(*kPopupBackgroundEdge, 349 canvas->DrawBitmapInt(*kPopupBackgroundEdge,
350 width() - kPopupBackgroundEdge->width(), top_spacing); 350 width() - kPopupBackgroundEdge->width(), top_spacing);
351 } 351 }
352 352
353 // For glass, we need to draw a black line below the location bar to separate 353 // For glass, we need to draw a black line below the location bar to separate
354 // it from the content area. For non-glass, the NonClientView draws the 354 // it from the content area. For non-glass, the NonClientView draws the
355 // toolbar background below the location bar for us. 355 // toolbar background below the location bar for us.
356 if (win_util::ShouldUseVistaFrame()) 356 if (GetWidget()->AsWindow()->UseNativeFrame())
357 canvas->FillRectInt(SK_ColorBLACK, 0, height() - 1, width(), 1); 357 canvas->FillRectInt(SK_ColorBLACK, 0, height() - 1, width(), 1);
358 } 358 }
359 359
360 void BrowserToolbarView::DidGainFocus() { 360 void BrowserToolbarView::DidGainFocus() {
361 // Check to see if MSAA focus should be restored to previously focused button, 361 // Check to see if MSAA focus should be restored to previously focused button,
362 // and if button is an enabled, visibled child of toolbar. 362 // and if button is an enabled, visibled child of toolbar.
363 if (!acc_focused_view_ || 363 if (!acc_focused_view_ ||
364 (acc_focused_view_->GetParent()->GetID() != VIEW_ID_TOOLBAR) || 364 (acc_focused_view_->GetParent()->GetID() != VIEW_ID_TOOLBAR) ||
365 !acc_focused_view_->IsEnabled() || 365 !acc_focused_view_->IsEnabled() ||
366 !acc_focused_view_->IsVisible()) { 366 !acc_focused_view_->IsVisible()) {
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
489 gfx::Size BrowserToolbarView::GetPreferredSize() { 489 gfx::Size BrowserToolbarView::GetPreferredSize() {
490 if (IsDisplayModeNormal()) { 490 if (IsDisplayModeNormal()) {
491 static SkBitmap normal_background; 491 static SkBitmap normal_background;
492 if (normal_background.isNull()) { 492 if (normal_background.isNull()) {
493 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); 493 ResourceBundle& rb = ResourceBundle::GetSharedInstance();
494 normal_background = *rb.GetBitmapNamed(IDR_CONTENT_TOP_CENTER); 494 normal_background = *rb.GetBitmapNamed(IDR_CONTENT_TOP_CENTER);
495 } 495 }
496 return gfx::Size(0, normal_background.height()); 496 return gfx::Size(0, normal_background.height());
497 } 497 }
498 498
499 int vertical_spacing = PopupTopSpacing() + (win_util::ShouldUseVistaFrame() ? 499 int vertical_spacing = PopupTopSpacing() +
500 kPopupBottomSpacingGlass : kPopupBottomSpacingNonGlass); 500 (GetWidget()->AsWindow()->UseNativeFrame() ? kPopupBottomSpacingGlass
501 : kPopupBottomSpacingNonGlass);
501 return gfx::Size(0, location_bar_->GetPreferredSize().height() + 502 return gfx::Size(0, location_bar_->GetPreferredSize().height() +
502 vertical_spacing); 503 vertical_spacing);
503 } 504 }
504 505
505 void BrowserToolbarView::RunPageMenu(const CPoint& pt, HWND hwnd) { 506 void BrowserToolbarView::RunPageMenu(const CPoint& pt, HWND hwnd) {
506 Menu::AnchorPoint anchor = Menu::TOPRIGHT; 507 Menu::AnchorPoint anchor = Menu::TOPRIGHT;
507 if (UILayoutIsRightToLeft()) 508 if (UILayoutIsRightToLeft())
508 anchor = Menu::TOPLEFT; 509 anchor = Menu::TOPLEFT;
509 510
510 Menu menu(this, anchor, hwnd); 511 Menu menu(this, anchor, hwnd);
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after
798 if (button) 799 if (button)
799 button->SetEnabled(enabled); 800 button->SetEnabled(enabled);
800 } 801 }
801 802
802 void BrowserToolbarView::ButtonPressed(views::BaseButton* sender) { 803 void BrowserToolbarView::ButtonPressed(views::BaseButton* sender) {
803 browser_->ExecuteCommand(sender->GetTag()); 804 browser_->ExecuteCommand(sender->GetTag());
804 } 805 }
805 806
806 // static 807 // static
807 int BrowserToolbarView::PopupTopSpacing() { 808 int BrowserToolbarView::PopupTopSpacing() {
808 return win_util::ShouldUseVistaFrame() ? 0 : kPopupTopSpacingNonGlass; 809 return GetWidget()->AsWindow()->UseNativeFrame() ? 0
810 : kPopupTopSpacingNonGlass;
809 } 811 }
810 812
811 void BrowserToolbarView::Observe(NotificationType type, 813 void BrowserToolbarView::Observe(NotificationType type,
812 const NotificationSource& source, 814 const NotificationSource& source,
813 const NotificationDetails& details) { 815 const NotificationDetails& details) {
814 if (type == NotificationType::PREF_CHANGED) { 816 if (type == NotificationType::PREF_CHANGED) {
815 std::wstring* pref_name = Details<std::wstring>(details).ptr(); 817 std::wstring* pref_name = Details<std::wstring>(details).ptr();
816 if (*pref_name == prefs::kShowHomeButton) { 818 if (*pref_name == prefs::kShowHomeButton) {
817 Layout(); 819 Layout();
818 SchedulePaint(); 820 SchedulePaint();
(...skipping 14 matching lines...) Expand all
833 *accel = views::Accelerator(L'C', false, true, false); 835 *accel = views::Accelerator(L'C', false, true, false);
834 return true; 836 return true;
835 case IDC_PASTE: 837 case IDC_PASTE:
836 *accel = views::Accelerator(L'V', false, true, false); 838 *accel = views::Accelerator(L'V', false, true, false);
837 return true; 839 return true;
838 } 840 }
839 // Else, we retrieve the accelerator information from the frame. 841 // Else, we retrieve the accelerator information from the frame.
840 return GetWidget()->GetAccelerator(id, accel); 842 return GetWidget()->GetAccelerator(id, accel);
841 } 843 }
842 844
OLDNEW
« no previous file with comments | « chrome/browser/views/toolbar_view.h ('k') | chrome/views/custom_frame_view.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698