OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * Copyright (C) 2013 Apple Inc. All rights reserved. | 3 * Copyright (C) 2013 Apple Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * | 8 * |
9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 | 59 |
60 InternalSettings::Backup::Backup(Settings* settings) | 60 InternalSettings::Backup::Backup(Settings* settings) |
61 : m_originalAuthorShadowDOMForAnyElementEnabled(RuntimeEnabledFeatures::auth
orShadowDOMForAnyElementEnabled()) | 61 : m_originalAuthorShadowDOMForAnyElementEnabled(RuntimeEnabledFeatures::auth
orShadowDOMForAnyElementEnabled()) |
62 , m_originalCSP(RuntimeEnabledFeatures::experimentalContentSecurityPolicyFea
turesEnabled()) | 62 , m_originalCSP(RuntimeEnabledFeatures::experimentalContentSecurityPolicyFea
turesEnabled()) |
63 , m_originalOverlayScrollbarsEnabled(RuntimeEnabledFeatures::overlayScrollba
rsEnabled()) | 63 , m_originalOverlayScrollbarsEnabled(RuntimeEnabledFeatures::overlayScrollba
rsEnabled()) |
64 , m_originalEditingBehavior(settings->editingBehaviorType()) | 64 , m_originalEditingBehavior(settings->editingBehaviorType()) |
65 , m_originalTextAutosizingEnabled(settings->textAutosizingEnabled()) | 65 , m_originalTextAutosizingEnabled(settings->textAutosizingEnabled()) |
66 , m_originalTextAutosizingWindowSizeOverride(settings->textAutosizingWindowS
izeOverride()) | 66 , m_originalTextAutosizingWindowSizeOverride(settings->textAutosizingWindowS
izeOverride()) |
67 , m_originalAccessibilityFontScaleFactor(settings->accessibilityFontScaleFac
tor()) | 67 , m_originalAccessibilityFontScaleFactor(settings->accessibilityFontScaleFac
tor()) |
68 , m_originalMediaTypeOverride(settings->mediaTypeOverride()) | 68 , m_originalMediaTypeOverride(settings->mediaTypeOverride()) |
| 69 , m_originalDisplayModeOverride(settings->displayModeOverride()) |
69 , m_originalMockScrollbarsEnabled(settings->mockScrollbarsEnabled()) | 70 , m_originalMockScrollbarsEnabled(settings->mockScrollbarsEnabled()) |
70 , m_originalMockGestureTapHighlightsEnabled(settings->mockGestureTapHighligh
tsEnabled()) | 71 , m_originalMockGestureTapHighlightsEnabled(settings->mockGestureTapHighligh
tsEnabled()) |
71 , m_langAttributeAwareFormControlUIEnabled(RuntimeEnabledFeatures::langAttri
buteAwareFormControlUIEnabled()) | 72 , m_langAttributeAwareFormControlUIEnabled(RuntimeEnabledFeatures::langAttri
buteAwareFormControlUIEnabled()) |
72 , m_imagesEnabled(settings->imagesEnabled()) | 73 , m_imagesEnabled(settings->imagesEnabled()) |
73 , m_defaultVideoPosterURL(settings->defaultVideoPosterURL()) | 74 , m_defaultVideoPosterURL(settings->defaultVideoPosterURL()) |
74 , m_originalLayerSquashingEnabled(settings->layerSquashingEnabled()) | 75 , m_originalLayerSquashingEnabled(settings->layerSquashingEnabled()) |
75 , m_originalPseudoClassesInMatchingCriteriaInAuthorShadowTreesEnabled(Runtim
eEnabledFeatures::pseudoClassesInMatchingCriteriaInAuthorShadowTreesEnabled()) | 76 , m_originalPseudoClassesInMatchingCriteriaInAuthorShadowTreesEnabled(Runtim
eEnabledFeatures::pseudoClassesInMatchingCriteriaInAuthorShadowTreesEnabled()) |
76 , m_originalImageColorProfilesEnabled(RuntimeEnabledFeatures::imageColorProf
ilesEnabled()) | 77 , m_originalImageColorProfilesEnabled(RuntimeEnabledFeatures::imageColorProf
ilesEnabled()) |
77 , m_originalImageAnimationPolicy(settings->imageAnimationPolicy()) | 78 , m_originalImageAnimationPolicy(settings->imageAnimationPolicy()) |
78 { | 79 { |
79 } | 80 } |
80 | 81 |
81 void InternalSettings::Backup::restoreTo(Settings* settings) | 82 void InternalSettings::Backup::restoreTo(Settings* settings) |
82 { | 83 { |
83 RuntimeEnabledFeatures::setAuthorShadowDOMForAnyElementEnabled(m_originalAut
horShadowDOMForAnyElementEnabled); | 84 RuntimeEnabledFeatures::setAuthorShadowDOMForAnyElementEnabled(m_originalAut
horShadowDOMForAnyElementEnabled); |
84 RuntimeEnabledFeatures::setExperimentalContentSecurityPolicyFeaturesEnabled(
m_originalCSP); | 85 RuntimeEnabledFeatures::setExperimentalContentSecurityPolicyFeaturesEnabled(
m_originalCSP); |
85 RuntimeEnabledFeatures::setOverlayScrollbarsEnabled(m_originalOverlayScrollb
arsEnabled); | 86 RuntimeEnabledFeatures::setOverlayScrollbarsEnabled(m_originalOverlayScrollb
arsEnabled); |
86 settings->setEditingBehaviorType(m_originalEditingBehavior); | 87 settings->setEditingBehaviorType(m_originalEditingBehavior); |
87 settings->setTextAutosizingEnabled(m_originalTextAutosizingEnabled); | 88 settings->setTextAutosizingEnabled(m_originalTextAutosizingEnabled); |
88 settings->setTextAutosizingWindowSizeOverride(m_originalTextAutosizingWindow
SizeOverride); | 89 settings->setTextAutosizingWindowSizeOverride(m_originalTextAutosizingWindow
SizeOverride); |
89 settings->setAccessibilityFontScaleFactor(m_originalAccessibilityFontScaleFa
ctor); | 90 settings->setAccessibilityFontScaleFactor(m_originalAccessibilityFontScaleFa
ctor); |
90 settings->setMediaTypeOverride(m_originalMediaTypeOverride); | 91 settings->setMediaTypeOverride(m_originalMediaTypeOverride); |
| 92 settings->setDisplayModeOverride(m_originalDisplayModeOverride); |
91 settings->setMockScrollbarsEnabled(m_originalMockScrollbarsEnabled); | 93 settings->setMockScrollbarsEnabled(m_originalMockScrollbarsEnabled); |
92 settings->setMockGestureTapHighlightsEnabled(m_originalMockGestureTapHighlig
htsEnabled); | 94 settings->setMockGestureTapHighlightsEnabled(m_originalMockGestureTapHighlig
htsEnabled); |
93 RuntimeEnabledFeatures::setLangAttributeAwareFormControlUIEnabled(m_langAttr
ibuteAwareFormControlUIEnabled); | 95 RuntimeEnabledFeatures::setLangAttributeAwareFormControlUIEnabled(m_langAttr
ibuteAwareFormControlUIEnabled); |
94 settings->setImagesEnabled(m_imagesEnabled); | 96 settings->setImagesEnabled(m_imagesEnabled); |
95 settings->setDefaultVideoPosterURL(m_defaultVideoPosterURL); | 97 settings->setDefaultVideoPosterURL(m_defaultVideoPosterURL); |
96 settings->genericFontFamilySettings().reset(); | 98 settings->genericFontFamilySettings().reset(); |
97 RuntimeEnabledFeatures::setPseudoClassesInMatchingCriteriaInAuthorShadowTree
sEnabled(m_originalPseudoClassesInMatchingCriteriaInAuthorShadowTreesEnabled); | 99 RuntimeEnabledFeatures::setPseudoClassesInMatchingCriteriaInAuthorShadowTree
sEnabled(m_originalPseudoClassesInMatchingCriteriaInAuthorShadowTreesEnabled); |
98 RuntimeEnabledFeatures::setImageColorProfilesEnabled(m_originalImageColorPro
filesEnabled); | 100 RuntimeEnabledFeatures::setImageColorProfilesEnabled(m_originalImageColorPro
filesEnabled); |
99 settings->setImageAnimationPolicy(m_originalImageAnimationPolicy); | 101 settings->setImageAnimationPolicy(m_originalImageAnimationPolicy); |
100 } | 102 } |
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
364 pointerTypes |= PointerTypeFine; | 366 pointerTypes |= PointerTypeFine; |
365 else if (token == "none") | 367 else if (token == "none") |
366 pointerTypes |= PointerTypeNone; | 368 pointerTypes |= PointerTypeNone; |
367 else | 369 else |
368 exceptionState.throwDOMException(SyntaxError, "The pointer type toke
n ('" + token + ")' is invalid."); | 370 exceptionState.throwDOMException(SyntaxError, "The pointer type toke
n ('" + token + ")' is invalid."); |
369 } | 371 } |
370 | 372 |
371 settings()->setAvailablePointerTypes(pointerTypes); | 373 settings()->setAvailablePointerTypes(pointerTypes); |
372 } | 374 } |
373 | 375 |
| 376 void InternalSettings::setDisplayModeOverride(const String& displayMode, Excepti
onState& exceptionState) |
| 377 { |
| 378 InternalSettingsGuardForSettings(); |
| 379 String token = displayMode.stripWhiteSpace(); |
| 380 |
| 381 DisplayMode mode = DisplayModeBrowser; |
| 382 if (token == "browser") |
| 383 mode = DisplayModeBrowser; |
| 384 else if (token == "minimal-ui") |
| 385 mode = DisplayModeMinimalUi; |
| 386 else if (token == "standalone") |
| 387 mode = DisplayModeStandalone; |
| 388 else if (token == "fullscreen") |
| 389 mode = DisplayModeFullscreen; |
| 390 else |
| 391 exceptionState.throwDOMException(SyntaxError, "The display-mode token ('
" + token + ")' is invalid."); |
| 392 |
| 393 settings()->setDisplayModeOverride(mode); |
| 394 } |
| 395 |
374 void InternalSettings::setPrimaryPointerType(const String& pointer, ExceptionSta
te& exceptionState) | 396 void InternalSettings::setPrimaryPointerType(const String& pointer, ExceptionSta
te& exceptionState) |
375 { | 397 { |
376 InternalSettingsGuardForSettings(); | 398 InternalSettingsGuardForSettings(); |
377 String token = pointer.stripWhiteSpace(); | 399 String token = pointer.stripWhiteSpace(); |
378 | 400 |
379 PointerType type = PointerTypeNone; | 401 PointerType type = PointerTypeNone; |
380 if (token == "coarse") | 402 if (token == "coarse") |
381 type = PointerTypeCoarse; | 403 type = PointerTypeCoarse; |
382 else if (token == "fine") | 404 else if (token == "fine") |
383 type = PointerTypeFine; | 405 type = PointerTypeFine; |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
439 if (equalIgnoringCase(policy, "allowed")) | 461 if (equalIgnoringCase(policy, "allowed")) |
440 settings()->setImageAnimationPolicy(ImageAnimationPolicyAllowed); | 462 settings()->setImageAnimationPolicy(ImageAnimationPolicyAllowed); |
441 else if (equalIgnoringCase(policy, "once")) | 463 else if (equalIgnoringCase(policy, "once")) |
442 settings()->setImageAnimationPolicy(ImageAnimationPolicyAnimateOnce); | 464 settings()->setImageAnimationPolicy(ImageAnimationPolicyAnimateOnce); |
443 else if (equalIgnoringCase(policy, "none")) | 465 else if (equalIgnoringCase(policy, "none")) |
444 settings()->setImageAnimationPolicy(ImageAnimationPolicyNoAnimation); | 466 settings()->setImageAnimationPolicy(ImageAnimationPolicyNoAnimation); |
445 else | 467 else |
446 exceptionState.throwDOMException(SyntaxError, "The image animation polic
y provided ('" + policy + "') is invalid."); | 468 exceptionState.throwDOMException(SyntaxError, "The image animation polic
y provided ('" + policy + "') is invalid."); |
447 } | 469 } |
448 } | 470 } |
OLD | NEW |