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

Unified Diff: chrome/browser/views/database_open_info_view.cc

Issue 1338001: Block database access on allowDatabase instead of databaseOpenFile. (Closed)
Patch Set: without worker support Created 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/views/database_open_info_view.cc
diff --git a/chrome/browser/views/database_open_info_view.cc b/chrome/browser/views/database_open_info_view.cc
index a6707767b2881c7e51b35d7a11f47188020a8a31..1e0fbc282c5e2f91b53ded5be70e7a5cf6cc22d0 100644
--- a/chrome/browser/views/database_open_info_view.cc
+++ b/chrome/browser/views/database_open_info_view.cc
@@ -4,103 +4,37 @@
#include "chrome/browser/views/database_open_info_view.h"
-#include <algorithm>
-
#include "app/l10n_util.h"
-#include "base/i18n/time_formatting.h"
#include "base/utf_string_conversions.h"
-#include "gfx/color_utils.h"
#include "grit/generated_resources.h"
-#include "views/grid_layout.h"
-#include "views/controls/label.h"
-#include "views/controls/textfield/textfield.h"
-#include "views/standard_layout.h"
-static const int kDatabaseOpenInfoViewBorderSize = 1;
-static const int kDatabaseOpenInfoViewInsetSize = 3;
+namespace {
+const int kInfoLabelIds[] = {
+ IDS_COOKIES_COOKIE_DOMAIN_LABEL,
+ IDS_COOKIES_WEB_DATABASE_NAME,
+ IDS_COOKIES_WEB_DATABASE_DESCRIPTION_LABEL,
+ IDS_COOKIES_SIZE_LABEL
+};
+} // namespace
///////////////////////////////////////////////////////////////////////////////
// DatabaseOpenInfoView, public:
DatabaseOpenInfoView::DatabaseOpenInfoView()
- : host_value_field_(NULL),
- database_name_value_field_(NULL) {
-}
-
-DatabaseOpenInfoView::~DatabaseOpenInfoView() {
+ : GenericInfoView(ARRAYSIZE(kInfoLabelIds), kInfoLabelIds) {
}
void DatabaseOpenInfoView::SetFields(const std::string& host,
- const string16& database_name) {
- host_value_field_->SetText(UTF8ToWide(host));
- database_name_value_field_->SetText(database_name);
- EnableDisplay(true);
-}
-
-void DatabaseOpenInfoView::EnableDisplay(bool enabled) {
- host_value_field_->SetEnabled(enabled);
- database_name_value_field_->SetEnabled(enabled);
-}
-
-///////////////////////////////////////////////////////////////////////////////
-// DatabaseOpenInfoView, views::View overrides:
-
-void DatabaseOpenInfoView::ViewHierarchyChanged(bool is_add,
- views::View* parent,
- views::View* child) {
- if (is_add && child == this)
- Init();
-}
-
-///////////////////////////////////////////////////////////////////////////////
-// DatabaseOpenInfoView, private:
-
-void DatabaseOpenInfoView::Init() {
- SkColor border_color = color_utils::GetSysSkColor(COLOR_3DSHADOW);
- views::Border* border = views::Border::CreateSolidBorder(
- kDatabaseOpenInfoViewBorderSize, border_color);
- set_border(border);
-
- views::Label* host_label = new views::Label(
- l10n_util::GetString(IDS_COOKIES_COOKIE_DOMAIN_LABEL));
- host_value_field_ = new views::Textfield;
- views::Label* database_name_label = new views::Label(
- l10n_util::GetString(IDS_COOKIES_WEB_DATABASE_NAME));
- database_name_value_field_ = new views::Textfield;
-
- using views::GridLayout;
-
- GridLayout* layout = new GridLayout(this);
- layout->SetInsets(kDatabaseOpenInfoViewInsetSize,
- kDatabaseOpenInfoViewInsetSize,
- kDatabaseOpenInfoViewInsetSize,
- kDatabaseOpenInfoViewInsetSize);
- SetLayoutManager(layout);
-
- int three_column_layout_id = 0;
- views::ColumnSet* column_set = layout->AddColumnSet(three_column_layout_id);
- column_set->AddColumn(GridLayout::TRAILING, GridLayout::CENTER, 0,
- GridLayout::USE_PREF, 0, 0);
- column_set->AddPaddingColumn(0, kRelatedControlHorizontalSpacing);
- column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1,
- GridLayout::USE_PREF, 0, 0);
-
- layout->StartRow(0, three_column_layout_id);
- layout->AddView(host_label);
- layout->AddView(host_value_field_);
- layout->AddPaddingRow(0, kRelatedControlSmallVerticalSpacing);
- layout->StartRow(0, three_column_layout_id);
- layout->AddView(database_name_label);
- layout->AddView(database_name_value_field_);
-
- // Color these borderless text areas the same as the containing dialog.
- SkColor text_area_background = color_utils::GetSysSkColor(COLOR_3DFACE);
- // Now that the Textfields are in the view hierarchy, we can initialize them.
- host_value_field_->SetReadOnly(true);
- host_value_field_->RemoveBorder();
- host_value_field_->SetBackgroundColor(text_area_background);
- database_name_value_field_->SetReadOnly(true);
- database_name_value_field_->RemoveBorder();
- database_name_value_field_->SetBackgroundColor(text_area_background);
+ const string16& database_name,
+ const string16& display_name,
+ unsigned long estimated_size) {
+ string16 url = UTF8ToUTF16(host);
+ string16 size = FormatBytes(estimated_size,
+ GetByteDisplayUnits(estimated_size),
+ true);
+ int row = 0;
+ SetValue(row++, url);
+ SetValue(row++, database_name);
+ SetValue(row++, display_name);
+ SetValue(row++, size);
}
-

Powered by Google App Engine
This is Rietveld 408576698