OLD | NEW |
---|---|
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 <algorithm> | 5 #include <algorithm> |
6 #include <string> | 6 #include <string> |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
144 #if defined(OS_CHROMEOS) | 144 #if defined(OS_CHROMEOS) |
145 #include "ash/accelerators/accelerator_controller.h" | 145 #include "ash/accelerators/accelerator_controller.h" |
146 #include "ash/accelerators/accelerator_table.h" | 146 #include "ash/accelerators/accelerator_table.h" |
147 #include "ash/magnifier/magnifier_constants.h" | 147 #include "ash/magnifier/magnifier_constants.h" |
148 #include "ash/shell.h" | 148 #include "ash/shell.h" |
149 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h" | 149 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h" |
150 #include "chrome/browser/chromeos/accessibility/magnification_manager.h" | 150 #include "chrome/browser/chromeos/accessibility/magnification_manager.h" |
151 #include "chrome/browser/profiles/profile_manager.h" | 151 #include "chrome/browser/profiles/profile_manager.h" |
152 #include "chrome/browser/ui/ash/screenshot_taker.h" | 152 #include "chrome/browser/ui/ash/screenshot_taker.h" |
153 #include "chromeos/audio/cras_audio_handler.h" | 153 #include "chromeos/audio/cras_audio_handler.h" |
154 #include "ui/keyboard/keyboard_util.h" | |
154 #endif | 155 #endif |
155 | 156 |
156 #if !defined(OS_MACOSX) | 157 #if !defined(OS_MACOSX) |
157 #include "apps/app_window.h" | 158 #include "apps/app_window.h" |
158 #include "apps/app_window_registry.h" | 159 #include "apps/app_window_registry.h" |
159 #include "apps/ui/native_app_window.h" | 160 #include "apps/ui/native_app_window.h" |
160 #include "base/basictypes.h" | 161 #include "base/basictypes.h" |
161 #include "base/compiler_specific.h" | 162 #include "base/compiler_specific.h" |
162 #include "chrome/browser/ui/extensions/application_launch.h" | 163 #include "chrome/browser/ui/extensions/application_launch.h" |
163 #include "ui/base/window_open_disposition.h" | 164 #include "ui/base/window_open_disposition.h" |
(...skipping 2243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2407 base::Value::CreateIntegerValue(ash::MAGNIFIER_FULL), NULL); | 2408 base::Value::CreateIntegerValue(ash::MAGNIFIER_FULL), NULL); |
2408 UpdateProviderPolicy(policies); | 2409 UpdateProviderPolicy(policies); |
2409 EXPECT_EQ(ash::MAGNIFIER_FULL, magnification_manager->GetMagnifierType()); | 2410 EXPECT_EQ(ash::MAGNIFIER_FULL, magnification_manager->GetMagnifierType()); |
2410 EXPECT_TRUE(magnification_manager->IsMagnifierEnabled()); | 2411 EXPECT_TRUE(magnification_manager->IsMagnifierEnabled()); |
2411 | 2412 |
2412 // Verify that the screen magnifier cannot be disabled manually anymore. | 2413 // Verify that the screen magnifier cannot be disabled manually anymore. |
2413 magnification_manager->SetMagnifierEnabled(false); | 2414 magnification_manager->SetMagnifierEnabled(false); |
2414 EXPECT_TRUE(magnification_manager->IsMagnifierEnabled()); | 2415 EXPECT_TRUE(magnification_manager->IsMagnifierEnabled()); |
2415 } | 2416 } |
2416 | 2417 |
2417 IN_PROC_BROWSER_TEST_F(PolicyTest, VirtualKeyboardEnabled) { | 2418 IN_PROC_BROWSER_TEST_F(PolicyTest, AccessibilityVirtualKeyboardEnabled) { |
2418 // Verifies that the on-screen keyboard accessibility feature can be | 2419 // Verifies that the on-screen keyboard accessibility feature can be |
2419 // controlled through policy. | 2420 // controlled through policy. |
2420 chromeos::AccessibilityManager* accessibility_manager = | 2421 chromeos::AccessibilityManager* accessibility_manager = |
2421 chromeos::AccessibilityManager::Get(); | 2422 chromeos::AccessibilityManager::Get(); |
2422 | 2423 |
2423 // Manually enable the on-screen keyboard. | 2424 // Manually enable the on-screen keyboard. |
2424 accessibility_manager->EnableVirtualKeyboard(true); | 2425 accessibility_manager->EnableVirtualKeyboard(true); |
2425 EXPECT_TRUE(accessibility_manager->IsVirtualKeyboardEnabled()); | 2426 EXPECT_TRUE(accessibility_manager->IsVirtualKeyboardEnabled()); |
2426 | 2427 |
2427 // Verify that policy overrides the manual setting. | 2428 // Verify that policy overrides the manual setting. |
2428 PolicyMap policies; | 2429 PolicyMap policies; |
2429 policies.Set(key::kVirtualKeyboardEnabled, POLICY_LEVEL_MANDATORY, | 2430 policies.Set(key::kVirtualKeyboardEnabled, POLICY_LEVEL_MANDATORY, |
2430 POLICY_SCOPE_USER, | 2431 POLICY_SCOPE_USER, |
2431 base::Value::CreateBooleanValue(false), NULL); | 2432 base::Value::CreateBooleanValue(false), NULL); |
2432 UpdateProviderPolicy(policies); | 2433 UpdateProviderPolicy(policies); |
2433 EXPECT_FALSE(accessibility_manager->IsVirtualKeyboardEnabled()); | 2434 EXPECT_FALSE(accessibility_manager->IsVirtualKeyboardEnabled()); |
2434 | 2435 |
2435 // Verify that the on-screen keyboard cannot be enabled manually anymore. | 2436 // Verify that the on-screen keyboard cannot be enabled manually anymore. |
2436 accessibility_manager->EnableVirtualKeyboard(true); | 2437 accessibility_manager->EnableVirtualKeyboard(true); |
2437 EXPECT_FALSE(accessibility_manager->IsVirtualKeyboardEnabled()); | 2438 EXPECT_FALSE(accessibility_manager->IsVirtualKeyboardEnabled()); |
2438 } | 2439 } |
2439 | 2440 |
2441 IN_PROC_BROWSER_TEST_F(PolicyTest, VirtualKeyboardEnabled) { | |
2442 // Verify keyboard disabled by default. | |
2443 EXPECT_FALSE(keyboard::IsKeyboardEnabled()); | |
2444 // Verify keyboard can be toggled by default. | |
2445 keyboard::SetTouchKeyboardEnabled(true); | |
2446 EXPECT_TRUE(keyboard::IsKeyboardEnabled()); | |
2447 keyboard::SetTouchKeyboardEnabled(false); | |
2448 EXPECT_FALSE(keyboard::IsKeyboardEnabled()); | |
2449 | |
2450 // Verify policy can enable the keyboard. | |
bartfab (slow)
2014/06/16 10:20:13
Nit: There are two properties to test with each po
rsadam
2014/06/16 13:45:34
Done.
| |
2451 PolicyMap policies; | |
2452 policies.Set(key::kTouchVirtualKeyboardEnabled, | |
2453 POLICY_LEVEL_MANDATORY, | |
2454 POLICY_SCOPE_USER, | |
2455 base::Value::CreateBooleanValue(true), | |
2456 NULL); | |
2457 UpdateProviderPolicy(policies); | |
2458 EXPECT_TRUE(keyboard::IsKeyboardEnabled()); | |
bartfab (slow)
2014/06/16 10:20:13
Nit: As noted above, please check that the user ca
rsadam
2014/06/16 13:45:34
Done.
| |
2459 | |
2460 // Verify that user cannot set keyboard enabled when policy disables it. | |
2461 policies.Set(key::kTouchVirtualKeyboardEnabled, | |
2462 POLICY_LEVEL_MANDATORY, | |
2463 POLICY_SCOPE_USER, | |
2464 base::Value::CreateBooleanValue(false), | |
2465 NULL); | |
2466 UpdateProviderPolicy(policies); | |
bartfab (slow)
2014/06/16 10:20:12
Nit: As noted above, please check that the policy
rsadam
2014/06/16 13:45:34
Done.
| |
2467 keyboard::SetTouchKeyboardEnabled(true); | |
2468 EXPECT_FALSE(keyboard::IsKeyboardEnabled()); | |
2469 } | |
2470 | |
2440 #endif | 2471 #endif |
2441 | 2472 |
2442 namespace { | 2473 namespace { |
2443 | 2474 |
2444 static const char* kRestoredURLs[] = { | 2475 static const char* kRestoredURLs[] = { |
2445 "http://aaa.com/empty.html", | 2476 "http://aaa.com/empty.html", |
2446 "http://bbb.com/empty.html", | 2477 "http://bbb.com/empty.html", |
2447 }; | 2478 }; |
2448 | 2479 |
2449 bool IsNonSwitchArgument(const CommandLine::StringType& s) { | 2480 bool IsNonSwitchArgument(const CommandLine::StringType& s) { |
(...skipping 521 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2971 PrefService* prefs = browser()->profile()->GetPrefs(); | 3002 PrefService* prefs = browser()->profile()->GetPrefs(); |
2972 EXPECT_TRUE(extensions::NativeMessageProcessHost::IsHostAllowed( | 3003 EXPECT_TRUE(extensions::NativeMessageProcessHost::IsHostAllowed( |
2973 prefs, "host.name")); | 3004 prefs, "host.name")); |
2974 EXPECT_FALSE(extensions::NativeMessageProcessHost::IsHostAllowed( | 3005 EXPECT_FALSE(extensions::NativeMessageProcessHost::IsHostAllowed( |
2975 prefs, "other.host.name")); | 3006 prefs, "other.host.name")); |
2976 } | 3007 } |
2977 | 3008 |
2978 #endif // !defined(CHROME_OS) | 3009 #endif // !defined(CHROME_OS) |
2979 | 3010 |
2980 } // namespace policy | 3011 } // namespace policy |
OLD | NEW |