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

Side by Side Diff: chrome/browser/ui/webui/gesture_config_ui.cc

Issue 12212040: Make the workspace cycler animation parameters editable via chrome://gesture (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 10 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/webui/gesture_config_ui.h" 5 #include "chrome/browser/ui/webui/gesture_config_ui.h"
6 6
7 #include "base/values.h" 7 #include "base/values.h"
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "chrome/browser/browser_process.h" 9 #include "chrome/browser/browser_process.h"
10 #include "chrome/browser/prefs/pref_service.h" 10 #include "chrome/browser/prefs/pref_service.h"
11 #include "chrome/browser/profiles/profile.h" 11 #include "chrome/browser/profiles/profile.h"
12 #include "chrome/common/url_constants.h" 12 #include "chrome/common/url_constants.h"
13 #include "content/public/browser/web_ui.h" 13 #include "content/public/browser/web_ui.h"
14 #include "content/public/browser/web_ui_data_source.h" 14 #include "content/public/browser/web_ui_data_source.h"
15 #include "grit/browser_resources.h" 15 #include "grit/browser_resources.h"
16 #include "grit/generated_resources.h" 16 #include "grit/generated_resources.h"
17 17
18 #if defined(USE_ASH)
19 #include "ash/wm/workspace/workspace_cycler_configuration.h"
20 #endif // USE_ASH
21
18 /** 22 /**
19 * WebUI for configuring 'gesture.*' preference values used by 23 * WebUI for configuring 'gesture.*' preference values used by
20 * Chrome's gesture recognition system. 24 * Chrome's gesture recognition system.
21 */ 25 */
22 GestureConfigUI::GestureConfigUI(content::WebUI* web_ui) 26 GestureConfigUI::GestureConfigUI(content::WebUI* web_ui)
23 : content::WebUIController(web_ui) { 27 : content::WebUIController(web_ui) {
24 // Set up the chrome://gesture-config source. 28 // Set up the chrome://gesture-config source.
25 content::WebUIDataSource* html_source = 29 content::WebUIDataSource* html_source =
26 content::WebUIDataSource::Create(chrome::kChromeUIGestureConfigHost); 30 content::WebUIDataSource::Create(chrome::kChromeUIGestureConfigHost);
27 31
28 // Register callback handlers. 32 // Register callback handlers.
29 web_ui->RegisterMessageCallback( 33 web_ui->RegisterMessageCallback(
30 "getPreferenceValue", 34 "getPreferenceValue",
31 base::Bind(&GestureConfigUI::GetPreferenceValue, 35 base::Bind(&GestureConfigUI::GetPreferenceValue,
32 base::Unretained(this))); 36 base::Unretained(this)));
33 web_ui->RegisterMessageCallback( 37 web_ui->RegisterMessageCallback(
34 "resetPreferenceValue", 38 "resetPreferenceValue",
35 base::Bind(&GestureConfigUI::ResetPreferenceValue, 39 base::Bind(&GestureConfigUI::ResetPreferenceValue,
36 base::Unretained(this))); 40 base::Unretained(this)));
37 web_ui->RegisterMessageCallback( 41 web_ui->RegisterMessageCallback(
38 "setPreferenceValue", 42 "setPreferenceValue",
39 base::Bind(&GestureConfigUI::SetPreferenceValue, 43 base::Bind(&GestureConfigUI::SetPreferenceValue,
40 base::Unretained(this))); 44 base::Unretained(this)));
45 web_ui->RegisterMessageCallback(
46 "checkShouldAddWorkspaceCyclerConfiguration",
47 base::Bind(
48 &GestureConfigUI::CheckShouldAddWorkspaceCyclerConfiguration,
49 base::Unretained(this)));
41 50
42 // Add required resources. 51 // Add required resources.
43 html_source->AddResourcePath("gesture_config.css", IDR_GESTURE_CONFIG_CSS); 52 html_source->AddResourcePath("gesture_config.css", IDR_GESTURE_CONFIG_CSS);
44 html_source->AddResourcePath("gesture_config.js", IDR_GESTURE_CONFIG_JS); 53 html_source->AddResourcePath("gesture_config.js", IDR_GESTURE_CONFIG_JS);
45 html_source->SetDefaultResource(IDR_GESTURE_CONFIG_HTML); 54 html_source->SetDefaultResource(IDR_GESTURE_CONFIG_HTML);
46 55
47 Profile* profile = Profile::FromWebUI(web_ui); 56 Profile* profile = Profile::FromWebUI(web_ui);
48 content::WebUIDataSource::Add(profile, html_source); 57 content::WebUIDataSource::Add(profile, html_source);
49 } 58 }
50 59
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 prefs->SetInteger(pref_name.c_str(), static_cast<int>(value)); 124 prefs->SetInteger(pref_name.c_str(), static_cast<int>(value));
116 break; 125 break;
117 case base::Value::TYPE_DOUBLE: 126 case base::Value::TYPE_DOUBLE:
118 prefs->SetDouble(pref_name.c_str(), value); 127 prefs->SetDouble(pref_name.c_str(), value);
119 break; 128 break;
120 default: 129 default:
121 NOTREACHED(); 130 NOTREACHED();
122 } 131 }
123 } 132 }
124 133
134
135 void GestureConfigUI::CheckShouldAddWorkspaceCyclerConfiguration(
136 const base::ListValue* args) {
137 bool should_add = false;
138 #if defined(USE_ASH)
139 should_add = ash::WorkspaceCyclerConfiguration::IsCyclerEnabled();
140 #endif // USE_ASH
141
142 web_ui()->CallJavascriptFunction(
143 "gesture_config.checkShouldAddWorkspaceCyclerConfigurationResult",
144 base::FundamentalValue(should_add));
145 }
146
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698