1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
// 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/options/chromeos/pointer_handler.h"
#include "base/basictypes.h"
#include "base/strings/utf_string_conversions.h"
#include "base/values.h"
#include "chrome/common/url_constants.h"
#include "chrome/grit/generated_resources.h"
#include "content/public/browser/web_ui.h"
#include "ui/base/l10n/l10n_util.h"
namespace chromeos {
namespace options {
PointerHandler::PointerHandler()
: has_touchpad_(false),
has_mouse_(false) {
}
PointerHandler::~PointerHandler() {
}
void PointerHandler::GetLocalizedValues(
base::DictionaryValue* localized_strings) {
DCHECK(localized_strings);
static OptionsStringResource resources[] = {
{ "pointerOverlayTitleTouchpadOnly",
IDS_OPTIONS_POINTER_TOUCHPAD_OVERLAY_TITLE },
{ "pointerOverlayTitleMouseOnly",
IDS_OPTIONS_POINTER_MOUSE_OVERLAY_TITLE },
{ "pointerOverlayTitleTouchpadMouse",
IDS_OPTIONS_POINTER_TOUCHPAD_MOUSE_OVERLAY_TITLE },
{ "pointerOverlaySectionTitleTouchpad",
IDS_OPTIONS_POINTER_OVERLAY_SECTION_TITLE_TOUCHPAD },
{ "pointerOverlaySectionTitleMouse",
IDS_OPTIONS_POINTER_OVERLAY_SECTION_TITLE_MOUSE },
{ "enableTapToClick",
IDS_OPTIONS_SETTINGS_TAP_TO_CLICK_ENABLED_DESCRIPTION },
{ "primaryMouseRight",
IDS_OPTIONS_SETTINGS_PRIMARY_MOUSE_RIGHT_DESCRIPTION },
{ "traditionalScroll",
IDS_OPTIONS_SETTINGS_TRADITIONAL_SCROLL_DESCRIPTION },
};
localized_strings->SetString("naturalScroll",
l10n_util::GetStringFUTF16(
IDS_OPTIONS_SETTINGS_NATURAL_SCROLL_DESCRIPTION,
base::ASCIIToUTF16(chrome::kNaturalScrollHelpURL)));
RegisterStrings(localized_strings, resources, arraysize(resources));
}
void PointerHandler::TouchpadExists(bool exists) {
has_touchpad_ = exists;
base::FundamentalValue val(exists);
web_ui()->CallJavascriptFunction("PointerOverlay.showTouchpadControls", val);
UpdateTitle();
}
void PointerHandler::MouseExists(bool exists) {
has_mouse_ = exists;
base::FundamentalValue val(exists);
web_ui()->CallJavascriptFunction("PointerOverlay.showMouseControls", val);
UpdateTitle();
}
void PointerHandler::UpdateTitle() {
std::string label;
if (has_touchpad_) {
label = has_mouse_ ? "pointerOverlayTitleTouchpadMouse" :
"pointerOverlayTitleTouchpadOnly";
} else {
label = has_mouse_ ? "pointerOverlayTitleMouseOnly" : "";
}
base::StringValue val(label);
web_ui()->CallJavascriptFunction("PointerOverlay.setTitle", val);
}
} // namespace options
} // namespace chromeos
|