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

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

Issue 10513009: Indicate focused state on text buttons with blue outline. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Only set is_focused on not win. Created 8 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 | Annotate | Revision Log
« no previous file with comments | « ui/views/controls/button/text_button.h ('k') | webkit/glue/webthemeengine_impl_android.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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "ui/views/controls/button/text_button.h" 5 #include "ui/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 451 matching lines...) Expand 10 before | Expand all | Expand 10 after
462 } 462 }
463 463
464 return flags; 464 return flags;
465 } 465 }
466 466
467 void TextButtonBase::GetExtraParams( 467 void TextButtonBase::GetExtraParams(
468 ui::NativeTheme::ExtraParams* params) const { 468 ui::NativeTheme::ExtraParams* params) const {
469 params->button.checked = false; 469 params->button.checked = false;
470 params->button.indeterminate = false; 470 params->button.indeterminate = false;
471 params->button.is_default = false; 471 params->button.is_default = false;
472 params->button.is_focused = false;
472 params->button.has_border = false; 473 params->button.has_border = false;
473 params->button.classic_state = 0; 474 params->button.classic_state = 0;
474 params->button.background_color = 475 params->button.background_color =
475 ui::NativeTheme::instance()->GetSystemColor( 476 ui::NativeTheme::instance()->GetSystemColor(
476 ui::NativeTheme::kColorId_TextButtonBackgroundColor); 477 ui::NativeTheme::kColorId_TextButtonBackgroundColor);
477 } 478 }
478 479
479 gfx::Rect TextButtonBase::GetContentBounds(int extra_width) const { 480 gfx::Rect TextButtonBase::GetContentBounds(int extra_width) const {
480 gfx::Insets insets = GetInsets(); 481 gfx::Insets insets = GetInsets();
481 int available_width = width() - insets.width(); 482 int available_width = width() - insets.width();
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after
843 } 844 }
844 845
845 void NativeTextButton::OnPaintFocusBorder(gfx::Canvas* canvas) { 846 void NativeTextButton::OnPaintFocusBorder(gfx::Canvas* canvas) {
846 #if defined(OS_WIN) 847 #if defined(OS_WIN)
847 if (HasFocus() && (focusable() || IsAccessibilityFocusable())) { 848 if (HasFocus() && (focusable() || IsAccessibilityFocusable())) {
848 gfx::Rect rect(GetLocalBounds()); 849 gfx::Rect rect(GetLocalBounds());
849 rect.Inset(kFocusRectInset, kFocusRectInset); 850 rect.Inset(kFocusRectInset, kFocusRectInset);
850 canvas->DrawFocusRect(rect); 851 canvas->DrawFocusRect(rect);
851 } 852 }
852 #else 853 #else
853 TextButton::OnPaintFocusBorder(canvas); 854 // Paint nothing, focus will be indicated with a border highlight drawn by
855 // NativeThemeBase::PaintButton.
854 #endif 856 #endif
855 } 857 }
856 858
857 void NativeTextButton::GetExtraParams( 859 void NativeTextButton::GetExtraParams(
858 ui::NativeTheme::ExtraParams* params) const { 860 ui::NativeTheme::ExtraParams* params) const {
859 TextButton::GetExtraParams(params); 861 TextButton::GetExtraParams(params);
860 params->button.has_border = true; 862 params->button.has_border = true;
863 #if !defined(OS_WIN)
864 params->button.is_focused = HasFocus() &&
sky 2012/06/05 20:25:36 Add a comment as to why this is ifdef'd.
865 (focusable() || IsAccessibilityFocusable());
866 #endif
861 } 867 }
862 868
863 } // namespace views 869 } // namespace views
OLDNEW
« no previous file with comments | « ui/views/controls/button/text_button.h ('k') | webkit/glue/webthemeengine_impl_android.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698