| Index: chrome/browser/ui/webui/extensions/pack_extension_handler.cc
|
| diff --git a/chrome/browser/ui/webui/extensions/pack_extension_handler.cc b/chrome/browser/ui/webui/extensions/pack_extension_handler.cc
|
| deleted file mode 100644
|
| index 12a4c070fdf17f59d14d26e7ef1d6c690f58e3b3..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/ui/webui/extensions/pack_extension_handler.cc
|
| +++ /dev/null
|
| @@ -1,207 +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/extensions/pack_extension_handler.h"
|
| -
|
| -#include "base/bind.h"
|
| -#include "base/strings/utf_string_conversions.h"
|
| -#include "chrome/browser/extensions/extension_creator.h"
|
| -#include "chrome/browser/ui/chrome_select_file_policy.h"
|
| -#include "chrome/grit/generated_resources.h"
|
| -#include "content/public/browser/web_contents.h"
|
| -#include "content/public/browser/web_ui.h"
|
| -#include "content/public/browser/web_ui_data_source.h"
|
| -#include "ui/base/l10n/l10n_util.h"
|
| -
|
| -namespace extensions {
|
| -
|
| -PackExtensionHandler::PackExtensionHandler() {
|
| -}
|
| -
|
| -PackExtensionHandler::~PackExtensionHandler() {
|
| - // There may be pending file dialogs, we need to tell them that we've gone
|
| - // away so they don't try and call back to us.
|
| - if (load_extension_dialog_.get())
|
| - load_extension_dialog_->ListenerDestroyed();
|
| -
|
| - if (pack_job_.get())
|
| - pack_job_->ClearClient();
|
| -}
|
| -
|
| -void PackExtensionHandler::GetLocalizedValues(
|
| - content::WebUIDataSource* source) {
|
| - source->AddString("packExtensionOverlay",
|
| - l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_DIALOG_TITLE));
|
| - source->AddString("packExtensionHeading",
|
| - l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_DIALOG_HEADING));
|
| - source->AddString("packExtensionCommit",
|
| - l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_BUTTON));
|
| - source->AddString("ok", l10n_util::GetStringUTF16(IDS_OK));
|
| - source->AddString("cancel", l10n_util::GetStringUTF16(IDS_CANCEL));
|
| - source->AddString("packExtensionRootDir",
|
| - l10n_util::GetStringUTF16(
|
| - IDS_EXTENSION_PACK_DIALOG_ROOT_DIRECTORY_LABEL));
|
| - source->AddString("packExtensionPrivateKey",
|
| - l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_DIALOG_PRIVATE_KEY_LABEL));
|
| - source->AddString("packExtensionBrowseButton",
|
| - l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_DIALOG_BROWSE));
|
| - source->AddString("packExtensionProceedAnyway",
|
| - l10n_util::GetStringUTF16(IDS_EXTENSION_PROCEED_ANYWAY));
|
| - source->AddString("packExtensionWarningTitle",
|
| - l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_WARNING_TITLE));
|
| - source->AddString("packExtensionErrorTitle",
|
| - l10n_util::GetStringUTF16(IDS_EXTENSION_PACK_ERROR_TITLE));
|
| -}
|
| -
|
| -void PackExtensionHandler::RegisterMessages() {
|
| - web_ui()->RegisterMessageCallback(
|
| - "pack",
|
| - base::Bind(&PackExtensionHandler::HandlePackMessage,
|
| - base::Unretained(this)));
|
| - web_ui()->RegisterMessageCallback(
|
| - "packExtensionSelectFilePath",
|
| - base::Bind(&PackExtensionHandler::HandleSelectFilePathMessage,
|
| - base::Unretained(this)));
|
| -}
|
| -
|
| -void PackExtensionHandler::OnPackSuccess(const base::FilePath& crx_file,
|
| - const base::FilePath& pem_file) {
|
| - base::ListValue arguments;
|
| - arguments.Append(new base::StringValue(base::UTF16ToUTF8(
|
| - PackExtensionJob::StandardSuccessMessage(crx_file, pem_file))));
|
| - web_ui()->CallJavascriptFunction(
|
| - "extensions.PackExtensionOverlay.showSuccessMessage", arguments);
|
| -}
|
| -
|
| -void PackExtensionHandler::OnPackFailure(const std::string& error,
|
| - ExtensionCreator::ErrorType type) {
|
| - if (type == ExtensionCreator::kCRXExists) {
|
| - base::StringValue error_str(error);
|
| - base::StringValue extension_path_str(extension_path_.value());
|
| - base::StringValue key_path_str(private_key_path_.value());
|
| - base::FundamentalValue overwrite_flag(ExtensionCreator::kOverwriteCRX);
|
| -
|
| - web_ui()->CallJavascriptFunction(
|
| - "extensions.ExtensionSettings.askToOverrideWarning",
|
| - error_str, extension_path_str, key_path_str, overwrite_flag);
|
| - } else {
|
| - ShowAlert(error);
|
| - }
|
| -}
|
| -
|
| -void PackExtensionHandler::FileSelected(const base::FilePath& path, int index,
|
| - void* params) {
|
| - base::ListValue results;
|
| - results.Append(new base::StringValue(path.value()));
|
| - web_ui()->CallJavascriptFunction("window.handleFilePathSelected", results);
|
| -}
|
| -
|
| -void PackExtensionHandler::MultiFilesSelected(
|
| - const std::vector<base::FilePath>& files, void* params) {
|
| - NOTREACHED();
|
| -}
|
| -
|
| -void PackExtensionHandler::HandlePackMessage(const base::ListValue* args) {
|
| - DCHECK_EQ(3U, args->GetSize());
|
| -
|
| - double flags_double = 0.0;
|
| - base::FilePath::StringType extension_path_str;
|
| - base::FilePath::StringType private_key_path_str;
|
| - if (!args->GetString(0, &extension_path_str) ||
|
| - !args->GetString(1, &private_key_path_str) ||
|
| - !args->GetDouble(2, &flags_double)) {
|
| - NOTREACHED();
|
| - return;
|
| - }
|
| -
|
| - extension_path_ = base::FilePath(extension_path_str);
|
| - private_key_path_ = base::FilePath(private_key_path_str);
|
| -
|
| - int run_flags = static_cast<int>(flags_double);
|
| -
|
| - base::FilePath root_directory = extension_path_;
|
| - base::FilePath key_file = private_key_path_;
|
| - last_used_path_ = extension_path_;
|
| -
|
| - if (root_directory.empty()) {
|
| - if (extension_path_.empty()) {
|
| - ShowAlert(l10n_util::GetStringUTF8(
|
| - IDS_EXTENSION_PACK_DIALOG_ERROR_ROOT_REQUIRED));
|
| - } else {
|
| - ShowAlert(l10n_util::GetStringUTF8(
|
| - IDS_EXTENSION_PACK_DIALOG_ERROR_ROOT_INVALID));
|
| - }
|
| -
|
| - return;
|
| - }
|
| -
|
| - if (!private_key_path_.empty() && key_file.empty()) {
|
| - ShowAlert(l10n_util::GetStringUTF8(
|
| - IDS_EXTENSION_PACK_DIALOG_ERROR_KEY_INVALID));
|
| - return;
|
| - }
|
| -
|
| - pack_job_ = new PackExtensionJob(this, root_directory, key_file, run_flags);
|
| - pack_job_->Start();
|
| -}
|
| -
|
| -void PackExtensionHandler::HandleSelectFilePathMessage(
|
| - const base::ListValue* args) {
|
| - DCHECK_EQ(2U, args->GetSize());
|
| -
|
| - std::string select_type;
|
| - if (!args->GetString(0, &select_type))
|
| - NOTREACHED();
|
| -
|
| - std::string operation;
|
| - if (!args->GetString(1, &operation))
|
| - NOTREACHED();
|
| -
|
| - ui::SelectFileDialog::Type type = ui::SelectFileDialog::SELECT_FOLDER;
|
| - ui::SelectFileDialog::FileTypeInfo info;
|
| - int file_type_index = 0;
|
| - base::FilePath path_to_use = last_used_path_;
|
| - if (select_type == "file") {
|
| - type = ui::SelectFileDialog::SELECT_OPEN_FILE;
|
| - path_to_use = base::FilePath();
|
| - }
|
| -
|
| - base::string16 select_title;
|
| - if (operation == "load") {
|
| - select_title = l10n_util::GetStringUTF16(IDS_EXTENSION_LOAD_FROM_DIRECTORY);
|
| - } else if (operation == "pem") {
|
| - select_title = l10n_util::GetStringUTF16(
|
| - IDS_EXTENSION_PACK_DIALOG_SELECT_KEY);
|
| - info.extensions.push_back(std::vector<base::FilePath::StringType>());
|
| - info.extensions.front().push_back(FILE_PATH_LITERAL("pem"));
|
| - info.extension_description_overrides.push_back(
|
| - l10n_util::GetStringUTF16(
|
| - IDS_EXTENSION_PACK_DIALOG_KEY_FILE_TYPE_DESCRIPTION));
|
| - info.include_all_files = true;
|
| - file_type_index = 1;
|
| - } else {
|
| - NOTREACHED();
|
| - }
|
| -
|
| - load_extension_dialog_ = ui::SelectFileDialog::Create(
|
| - this, new ChromeSelectFilePolicy(web_ui()->GetWebContents()));
|
| - load_extension_dialog_->SelectFile(
|
| - type,
|
| - select_title,
|
| - path_to_use,
|
| - &info,
|
| - file_type_index,
|
| - base::FilePath::StringType(),
|
| - web_ui()->GetWebContents()->GetTopLevelNativeWindow(),
|
| - NULL);
|
| -}
|
| -
|
| -void PackExtensionHandler::ShowAlert(const std::string& message) {
|
| - base::ListValue arguments;
|
| - arguments.Append(new base::StringValue(message));
|
| - web_ui()->CallJavascriptFunction(
|
| - "extensions.PackExtensionOverlay.showError", arguments);
|
| -}
|
| -
|
| -} // namespace extensions
|
|
|