summaryrefslogtreecommitdiffstats
path: root/views/controls/button/checkbox.cc
diff options
context:
space:
mode:
authorben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-24 00:05:06 +0000
committerben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-24 00:05:06 +0000
commitbbcd29efb5a1ed6bf27334454b2e641a306dad0d (patch)
tree652703ab73a55f9bf55d4cf976a3c1b8d2fec75f /views/controls/button/checkbox.cc
parent8569eafc863900c15ba3df7da5b05ac8ec145ec5 (diff)
downloadchromium_src-bbcd29efb5a1ed6bf27334454b2e641a306dad0d.zip
chromium_src-bbcd29efb5a1ed6bf27334454b2e641a306dad0d.tar.gz
chromium_src-bbcd29efb5a1ed6bf27334454b2e641a306dad0d.tar.bz2
Make the Clear Browsing Data dialog box look a little nicer.
- Now use GtkCheckButton's own label instead of the hack one used only by windows. - Render a background for DialogClientView. BUG=none TEST=none Review URL: http://codereview.chromium.org/160066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21484 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/controls/button/checkbox.cc')
-rw-r--r--views/controls/button/checkbox.cc31
1 files changed, 21 insertions, 10 deletions
diff --git a/views/controls/button/checkbox.cc b/views/controls/button/checkbox.cc
index 0097251..c3ea2ff 100644
--- a/views/controls/button/checkbox.cc
+++ b/views/controls/button/checkbox.cc
@@ -57,6 +57,9 @@ gfx::Size Checkbox::GetPreferredSize() {
return gfx::Size();
gfx::Size prefsize = native_wrapper_->GetView()->GetPreferredSize();
+ if (native_wrapper_->UsesNativeLabel())
+ return prefsize;
+
prefsize.set_width(
prefsize.width() + kCheckboxLabelSpacing +
kLabelFocusPaddingHorizontal * 2);
@@ -72,16 +75,24 @@ void Checkbox::Layout() {
if (!native_wrapper_)
return;
- gfx::Size checkmark_prefsize = native_wrapper_->GetView()->GetPreferredSize();
- int label_x = checkmark_prefsize.width() + kCheckboxLabelSpacing +
- kLabelFocusPaddingHorizontal;
- label_->SetBounds(
- label_x, 0, std::max(0, width() - label_x - kLabelFocusPaddingHorizontal),
- height());
- int first_line_height = label_->GetFont().height();
- native_wrapper_->GetView()->SetBounds(
- 0, ((first_line_height - checkmark_prefsize.height()) / 2),
- checkmark_prefsize.width(), checkmark_prefsize.height());
+ if (native_wrapper_->UsesNativeLabel()) {
+ label_->SetBounds(0, 0, 0, 0);
+ label_->SetVisible(false);
+ native_wrapper_->GetView()->SetBounds(0, 0, width(), height());
+ } else {
+ gfx::Size checkmark_prefsize =
+ native_wrapper_->GetView()->GetPreferredSize();
+ int label_x = checkmark_prefsize.width() + kCheckboxLabelSpacing +
+ kLabelFocusPaddingHorizontal;
+ label_->SetBounds(
+ label_x, 0, std::max(0, width() - label_x -
+ kLabelFocusPaddingHorizontal),
+ height());
+ int first_line_height = label_->GetFont().height();
+ native_wrapper_->GetView()->SetBounds(
+ 0, ((first_line_height - checkmark_prefsize.height()) / 2),
+ checkmark_prefsize.width(), checkmark_prefsize.height());
+ }
native_wrapper_->GetView()->Layout();
}