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

Unified Diff: chrome/browser/ui/webui/options2/handler_options_handler.cc

Issue 10837331: Options: s/options2/options/. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: wut Created 8 years, 4 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/ui/webui/options2/handler_options_handler.cc
diff --git a/chrome/browser/ui/webui/options2/handler_options_handler.cc b/chrome/browser/ui/webui/options2/handler_options_handler.cc
deleted file mode 100644
index 0f0a5184504377bd4b7b1f12764d8705f57031e0..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/webui/options2/handler_options_handler.cc
+++ /dev/null
@@ -1,208 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/ui/webui/options2/handler_options_handler.h"
-
-#include <vector>
-
-#include "base/bind.h"
-#include "base/bind_helpers.h"
-#include "base/utf_string_conversions.h"
-#include "base/values.h"
-#include "chrome/browser/prefs/pref_service.h"
-#include "chrome/browser/profiles/profile.h"
-#include "chrome/common/chrome_notification_types.h"
-#include "content/public/browser/web_ui.h"
-#include "grit/generated_resources.h"
-#include "ui/base/l10n/l10n_util.h"
-
-namespace options {
-
-HandlerOptionsHandler::HandlerOptionsHandler() {
-}
-
-HandlerOptionsHandler::~HandlerOptionsHandler() {
-}
-
-void HandlerOptionsHandler::GetLocalizedValues(
- DictionaryValue* localized_strings) {
- DCHECK(localized_strings);
-
- static OptionsStringResource resources[] = {
- { "handlers_tab_label", IDS_HANDLERS_TAB_LABEL },
- { "handlers_allow", IDS_HANDLERS_ALLOW_RADIO },
- { "handlers_block", IDS_HANDLERS_DONOTALLOW_RADIO },
- { "handlers_type_column_header", IDS_HANDLERS_TYPE_COLUMN_HEADER },
- { "handlers_site_column_header", IDS_HANDLERS_SITE_COLUMN_HEADER },
- { "handlers_remove_link", IDS_HANDLERS_REMOVE_HANDLER_LINK },
- { "handlers_none_handler", IDS_HANDLERS_NONE_HANDLER },
- { "handlers_active_heading", IDS_HANDLERS_ACTIVE_HEADING },
- { "handlers_ignored_heading", IDS_HANDLERS_IGNORED_HEADING },
- };
- RegisterTitle(localized_strings, "handlersPage",
- IDS_HANDLER_OPTIONS_WINDOW_TITLE);
- RegisterStrings(localized_strings, resources, arraysize(resources));
-}
-
-void HandlerOptionsHandler::InitializeHandler() {
- notification_registrar_.Add(
- this, chrome::NOTIFICATION_PROTOCOL_HANDLER_REGISTRY_CHANGED,
- content::Source<Profile>(Profile::FromWebUI(web_ui())));
-}
-
-void HandlerOptionsHandler::InitializePage() {
- UpdateHandlerList();
-}
-
-void HandlerOptionsHandler::RegisterMessages() {
- web_ui()->RegisterMessageCallback("clearDefault",
- base::Bind(&HandlerOptionsHandler::ClearDefault,
- base::Unretained(this)));
- web_ui()->RegisterMessageCallback("removeHandler",
- base::Bind(&HandlerOptionsHandler::RemoveHandler,
- base::Unretained(this)));
- web_ui()->RegisterMessageCallback("setHandlersEnabled",
- base::Bind(&HandlerOptionsHandler::SetHandlersEnabled,
- base::Unretained(this)));
- web_ui()->RegisterMessageCallback("setDefault",
- base::Bind(&HandlerOptionsHandler::SetDefault,
- base::Unretained(this)));
- web_ui()->RegisterMessageCallback("removeIgnoredHandler",
- base::Bind(&HandlerOptionsHandler::RemoveIgnoredHandler,
- base::Unretained(this)));
-}
-
-ProtocolHandlerRegistry* HandlerOptionsHandler::GetProtocolHandlerRegistry() {
- return Profile::FromWebUI(web_ui())->GetProtocolHandlerRegistry();
-}
-
-static void GetHandlersAsListValue(
- const ProtocolHandlerRegistry::ProtocolHandlerList& handlers,
- ListValue* handler_list) {
- ProtocolHandlerRegistry::ProtocolHandlerList::const_iterator handler;
- for (handler = handlers.begin(); handler != handlers.end(); ++handler) {
- ListValue* handlerValue = new ListValue();
- handlerValue->Append(Value::CreateStringValue(handler->protocol()));
- handlerValue->Append(Value::CreateStringValue(handler->url().spec()));
- handlerValue->Append(Value::CreateStringValue(handler->title()));
- handler_list->Append(handlerValue);
- }
-}
-
-void HandlerOptionsHandler::GetHandlersForProtocol(
- const std::string& protocol,
- DictionaryValue* handlers_value) {
- ProtocolHandlerRegistry* registry = GetProtocolHandlerRegistry();
- handlers_value->SetString("protocol", protocol);
- handlers_value->SetInteger("default_handler",
- registry->GetHandlerIndex(protocol));
-
- ListValue* handlers_list = new ListValue();
- GetHandlersAsListValue(registry->GetHandlersFor(protocol), handlers_list);
- handlers_value->Set("handlers", handlers_list);
-}
-
-void HandlerOptionsHandler::GetIgnoredHandlers(ListValue* handlers) {
- ProtocolHandlerRegistry* registry = GetProtocolHandlerRegistry();
- ProtocolHandlerRegistry::ProtocolHandlerList ignored_handlers =
- registry->GetIgnoredHandlers();
- return GetHandlersAsListValue(ignored_handlers, handlers);
-}
-
-void HandlerOptionsHandler::UpdateHandlerList() {
- ProtocolHandlerRegistry* registry = GetProtocolHandlerRegistry();
- std::vector<std::string> protocols;
- registry->GetRegisteredProtocols(&protocols);
-
- ListValue handlers;
- for (std::vector<std::string>::iterator protocol = protocols.begin();
- protocol != protocols.end(); protocol++) {
- DictionaryValue* handler_value = new DictionaryValue();
- GetHandlersForProtocol(*protocol, handler_value);
- handlers.Append(handler_value);
- }
-
- scoped_ptr<ListValue> ignored_handlers(new ListValue());
- GetIgnoredHandlers(ignored_handlers.get());
- web_ui()->CallJavascriptFunction("HandlerOptions.setHandlers", handlers);
- web_ui()->CallJavascriptFunction("HandlerOptions.setIgnoredHandlers",
- *ignored_handlers);
-}
-
-void HandlerOptionsHandler::RemoveHandler(const ListValue* args) {
- const ListValue* list;
- if (!args->GetList(0, &list)) {
- NOTREACHED();
- return;
- }
-
- ProtocolHandler handler(ParseHandlerFromArgs(list));
- GetProtocolHandlerRegistry()->RemoveHandler(handler);
-
- // No need to call UpdateHandlerList() - we should receive a notification
- // that the ProtocolHandlerRegistry has changed and we will update the view
- // then.
-}
-
-void HandlerOptionsHandler::RemoveIgnoredHandler(const ListValue* args) {
- const ListValue* list;
- if (!args->GetList(0, &list)) {
- NOTREACHED();
- return;
- }
-
- ProtocolHandler handler(ParseHandlerFromArgs(list));
- GetProtocolHandlerRegistry()->RemoveIgnoredHandler(handler);
-}
-
-void HandlerOptionsHandler::SetHandlersEnabled(const ListValue* args) {
- bool enabled = true;
- CHECK(args->GetBoolean(0, &enabled));
- if (enabled)
- GetProtocolHandlerRegistry()->Enable();
- else
- GetProtocolHandlerRegistry()->Disable();
-}
-
-void HandlerOptionsHandler::ClearDefault(const ListValue* args) {
- const Value* value;
- CHECK(args->Get(0, &value));
- std::string protocol_to_clear;
- CHECK(value->GetAsString(&protocol_to_clear));
- GetProtocolHandlerRegistry()->ClearDefault(protocol_to_clear);
-}
-
-void HandlerOptionsHandler::SetDefault(const ListValue* args) {
- const ListValue* list;
- CHECK(args->GetList(0, &list));
- const ProtocolHandler& handler(ParseHandlerFromArgs(list));
- CHECK(!handler.IsEmpty());
- GetProtocolHandlerRegistry()->OnAcceptRegisterProtocolHandler(handler);
-}
-
-ProtocolHandler HandlerOptionsHandler::ParseHandlerFromArgs(
- const ListValue* args) const {
- string16 protocol;
- string16 url;
- string16 title;
- bool ok = args->GetString(0, &protocol) && args->GetString(1, &url) &&
- args->GetString(2, &title);
- if (!ok)
- return ProtocolHandler::EmptyProtocolHandler();
- return ProtocolHandler::CreateProtocolHandler(UTF16ToUTF8(protocol),
- GURL(UTF16ToUTF8(url)),
- title);
-}
-
-void HandlerOptionsHandler::Observe(
- int type,
- const content::NotificationSource& source,
- const content::NotificationDetails& details) {
- if (type == chrome::NOTIFICATION_PROTOCOL_HANDLER_REGISTRY_CHANGED)
- UpdateHandlerList();
- else
- NOTREACHED();
-}
-
-} // namespace options

Powered by Google App Engine
This is Rietveld 408576698