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

Side by Side Diff: views/controls/button/text_button.cc

Issue 8439015: Make infobar controls focusable by default. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « views/controls/button/text_button.h ('k') | no next file » | 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "views/controls/button/text_button.h" 5 #include "views/controls/button/text_button.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "grit/ui_resources.h" 10 #include "grit/ui_resources.h"
(...skipping 24 matching lines...) Expand all
35 static const int kDefaultIconTextSpacing = 5; 35 static const int kDefaultIconTextSpacing = 5;
36 36
37 // Preferred padding between text and edge 37 // Preferred padding between text and edge
38 static const int kPreferredPaddingHorizontal = 6; 38 static const int kPreferredPaddingHorizontal = 6;
39 static const int kPreferredPaddingVertical = 5; 39 static const int kPreferredPaddingVertical = 5;
40 40
41 // Preferred padding between text and edge for NativeTheme border 41 // Preferred padding between text and edge for NativeTheme border
42 static const int kPreferredNativeThemePaddingHorizontal = 12; 42 static const int kPreferredNativeThemePaddingHorizontal = 12;
43 static const int kPreferredNativeThemePaddingVertical = 5; 43 static const int kPreferredNativeThemePaddingVertical = 5;
44 44
45 // Number of pixels from the edge of the view to inset the focus rect
Peter Kasting 2011/11/01 21:51:28 Needs to be a complete sentence (I see some existi
46 static const int kFocusRectInset = 3;
47
45 // Default background color for buttons. 48 // Default background color for buttons.
46 const SkColor kBackgroundColor = SkColorSetRGB(0xde, 0xde, 0xde); 49 const SkColor kBackgroundColor = SkColorSetRGB(0xde, 0xde, 0xde);
47 50
48 #if defined(USE_AURA) 51 #if defined(USE_AURA)
49 // static 52 // static
50 const SkColor TextButtonBase::kEnabledColor = SkColorSetRGB(0x44, 0x44, 0x44); 53 const SkColor TextButtonBase::kEnabledColor = SkColorSetRGB(0x44, 0x44, 0x44);
51 // static 54 // static
52 const SkColor TextButtonBase::kHighlightColor = SkColorSetRGB(0, 0, 0); 55 const SkColor TextButtonBase::kHighlightColor = SkColorSetRGB(0, 0, 0);
53 // static 56 // static
54 const SkColor TextButtonBase::kDisabledColor = SkColorSetRGB(0x99, 0x99, 0x99); 57 const SkColor TextButtonBase::kDisabledColor = SkColorSetRGB(0x99, 0x99, 0x99);
(...skipping 682 matching lines...) Expand 10 before | Expand all | Expand 10 after
737 } 740 }
738 741
739 void TextButton::set_ignore_minimum_size(bool ignore_minimum_size) { 742 void TextButton::set_ignore_minimum_size(bool ignore_minimum_size) {
740 ignore_minimum_size_ = ignore_minimum_size; 743 ignore_minimum_size_ = ignore_minimum_size;
741 } 744 }
742 745
743 std::string TextButton::GetClassName() const { 746 std::string TextButton::GetClassName() const {
744 return kViewClassName; 747 return kViewClassName;
745 } 748 }
746 749
750 void TextButton::OnPaintFocusBorder(gfx::Canvas* canvas) {
751 if ((IsFocusable() || IsAccessibilityFocusableInRootView()) && HasFocus()) {
752 gfx::Rect rect(GetLocalBounds());
753 rect.Inset(kFocusRectInset, kFocusRectInset);
754 canvas->DrawFocusRect(rect);
755 }
756 }
757
747 gfx::NativeTheme::Part TextButton::GetThemePart() const { 758 gfx::NativeTheme::Part TextButton::GetThemePart() const {
748 return gfx::NativeTheme::kPushButton; 759 return gfx::NativeTheme::kPushButton;
749 } 760 }
750 761
751 void TextButton::GetExtraParams(gfx::NativeTheme::ExtraParams* params) const { 762 void TextButton::GetExtraParams(gfx::NativeTheme::ExtraParams* params) const {
752 TextButtonBase::GetExtraParams(params); 763 TextButtonBase::GetExtraParams(params);
753 params->button.is_default = is_default_; 764 params->button.is_default = is_default_;
754 } 765 }
755 766
756 gfx::Rect TextButton::GetTextBounds() const { 767 gfx::Rect TextButton::GetTextBounds() const {
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
822 std::string NativeTextButton::GetClassName() const { 833 std::string NativeTextButton::GetClassName() const {
823 return kViewClassName; 834 return kViewClassName;
824 } 835 }
825 836
826 void NativeTextButton::OnPaintFocusBorder(gfx::Canvas* canvas) { 837 void NativeTextButton::OnPaintFocusBorder(gfx::Canvas* canvas) {
827 #if defined(OS_WIN) 838 #if defined(OS_WIN)
828 // On windows, make sure the focus border is inset wrt the entire button so 839 // On windows, make sure the focus border is inset wrt the entire button so
829 // that the native text button appears more like a windows button. 840 // that the native text button appears more like a windows button.
830 if ((IsFocusable() || IsAccessibilityFocusableInRootView()) && HasFocus()) { 841 if ((IsFocusable() || IsAccessibilityFocusableInRootView()) && HasFocus()) {
831 gfx::Rect rect(GetLocalBounds()); 842 gfx::Rect rect(GetLocalBounds());
832 rect.Inset(3, 3); 843 rect.Inset(kFocusRectInset, kFocusRectInset);
833 canvas->DrawFocusRect(rect); 844 canvas->DrawFocusRect(rect);
834 } 845 }
835 #else 846 #else
836 TextButton::OnPaintFocusBorder(canvas); 847 TextButton::OnPaintFocusBorder(canvas);
837 #endif 848 #endif
838 } 849 }
839 850
840 void NativeTextButton::GetExtraParams( 851 void NativeTextButton::GetExtraParams(
841 gfx::NativeTheme::ExtraParams* params) const { 852 gfx::NativeTheme::ExtraParams* params) const {
842 TextButton::GetExtraParams(params); 853 TextButton::GetExtraParams(params);
843 params->button.has_border = true; 854 params->button.has_border = true;
844 } 855 }
845 856
846 } // namespace views 857 } // namespace views
OLDNEW
« no previous file with comments | « views/controls/button/text_button.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698