Changeset 212965 in webkit
- Timestamp:
- Feb 24, 2017 11:51:17 AM (7 years ago)
- Location:
- trunk/Source
- Files:
-
- 3 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r212961 r212965 1 2017-02-24 Chris Dumez <cdumez@apple.com> 2 3 [iOS][WK2] Disable network cache speculative revalidation / loading in low power mode 4 https://bugs.webkit.org/show_bug.cgi?id=168832 5 <rdar://problem/30697911> 6 7 Reviewed by Antti Koivisto. 8 9 Add LowPowerModeNotifier class to monitor low power mode state on iOS. 10 11 * WebCore.xcodeproj/project.pbxproj: 12 * platform/LowPowerModeNotifier.cpp: Added. 13 (WebCore::LowPowerModeNotifier::LowPowerModeNotifier): 14 (WebCore::LowPowerModeNotifier::isLowPowerModeEnabled): 15 * platform/LowPowerModeNotifier.h: Added. 16 * platform/ios/LowPowerModeNotifierIOS.mm: Added. 17 (-[WebLowPowerModeObserver initWithNotifier:]): 18 (-[WebLowPowerModeObserver dealloc]): 19 (-[WebLowPowerModeObserver _didReceiveLowPowerModeChange]): 20 (WebCore::LowPowerModeNotifier::LowPowerModeNotifier): 21 (WebCore::LowPowerModeNotifier::isLowPowerModeEnabled): 22 (WebCore::LowPowerModeNotifier::notifyLowPowerModeChanged): 23 (WebCore::notifyLowPowerModeChanged): 24 1 25 2017-02-24 Chris Dumez <cdumez@apple.com> 2 26 -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r212944 r212965 1780 1780 46DFF49C1DC2620B00B80B48 /* JSShadowRootMode.h in Headers */ = {isa = PBXBuildFile; fileRef = 46DFF49A1DC261F900B80B48 /* JSShadowRootMode.h */; }; 1781 1781 46EBEA021B7D4D6500BE4941 /* CollectionTraversal.h in Headers */ = {isa = PBXBuildFile; fileRef = 46EBEA011B7D4D5D00BE4941 /* CollectionTraversal.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1782 46EFAF0E1E5FB9CA00E7F34B /* LowPowerModeNotifierIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46EFAF0D1E5FB9C200E7F34B /* LowPowerModeNotifierIOS.mm */; }; 1783 46EFAF111E5FB9F100E7F34B /* LowPowerModeNotifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 46EFAF0F1E5FB9E100E7F34B /* LowPowerModeNotifier.cpp */; }; 1784 46EFAF121E5FB9F100E7F34B /* LowPowerModeNotifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 46EFAF101E5FB9E100E7F34B /* LowPowerModeNotifier.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1782 1785 46FCB6181A70820E00C5A21E /* DiagnosticLoggingKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = CD37B37515C1A7E1006DC898 /* DiagnosticLoggingKeys.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1783 1786 490707E61219C04300D90E51 /* ANGLEWebKitBridge.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 490707E41219C04300D90E51 /* ANGLEWebKitBridge.cpp */; }; … … 9097 9100 46DFF49A1DC261F900B80B48 /* JSShadowRootMode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSShadowRootMode.h; sourceTree = "<group>"; }; 9098 9101 46EBEA011B7D4D5D00BE4941 /* CollectionTraversal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CollectionTraversal.h; sourceTree = "<group>"; }; 9102 46EFAF0D1E5FB9C200E7F34B /* LowPowerModeNotifierIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LowPowerModeNotifierIOS.mm; sourceTree = "<group>"; }; 9103 46EFAF0F1E5FB9E100E7F34B /* LowPowerModeNotifier.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LowPowerModeNotifier.cpp; sourceTree = "<group>"; }; 9104 46EFAF101E5FB9E100E7F34B /* LowPowerModeNotifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LowPowerModeNotifier.h; sourceTree = "<group>"; }; 9099 9105 490707E41219C04300D90E51 /* ANGLEWebKitBridge.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ANGLEWebKitBridge.cpp; sourceTree = "<group>"; }; 9100 9106 490707E51219C04300D90E51 /* ANGLEWebKitBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ANGLEWebKitBridge.h; sourceTree = "<group>"; }; … … 20110 20116 E4E39AFA1330EFA8003AB274 /* LegacyTileLayerPool.h */, 20111 20117 E4E39AFC1330EFC5003AB274 /* LegacyTileLayerPool.mm */, 20118 46EFAF0D1E5FB9C200E7F34B /* LowPowerModeNotifierIOS.mm */, 20112 20119 E45390190EAFCACA003695C8 /* PasteboardIOS.mm */, 20113 20120 26601EBD14B3B9AD0012C0FE /* PlatformEventFactoryIOS.h */, … … 22987 22994 0FDCD7F21D47E655009F08BC /* LogInitialization.h */, 22988 22995 0FDCD7F41D47E725009F08BC /* LogMacros.h */, 22996 46EFAF0F1E5FB9E100E7F34B /* LowPowerModeNotifier.cpp */, 22997 46EFAF101E5FB9E100E7F34B /* LowPowerModeNotifier.h */, 22989 22998 7AE6C9391BE0C60100E19E03 /* MainThreadSharedTimer.cpp */, 22990 22999 7AE6C93A1BE0C60100E19E03 /* MainThreadSharedTimer.h */, … … 28088 28097 E4E9B1191810916F003ACCDF /* SimpleLineLayoutResolver.h in Headers */, 28089 28098 582CB0531A78A14B00AFFCC4 /* SimpleLineLayoutTextFragmentIterator.h in Headers */, 28099 46EFAF121E5FB9F100E7F34B /* LowPowerModeNotifier.h in Headers */, 28090 28100 C5A1EA7D152BCF08004D00B6 /* SimplifyMarkupCommand.h in Headers */, 28091 28101 572A7F211C6E5719009C6149 /* SimulatedClick.h in Headers */, … … 31298 31308 854FE7320A2297BE0058D7AD /* NodeFilterCondition.cpp in Sources */, 31299 31309 854FE7340A2297BE0058D7AD /* NodeIterator.cpp in Sources */, 31310 46EFAF0E1E5FB9CA00E7F34B /* LowPowerModeNotifierIOS.mm in Sources */, 31300 31311 4FFC022B1643B710004E1638 /* NodeRareData.cpp in Sources */, 31301 31312 E43105B816750F0C00DB2FB8 /* NodeTraversal.cpp in Sources */, … … 32400 32411 00B9318B13BA8DC90035A948 /* XMLDocumentParserScope.cpp in Sources */, 32401 32412 59C28045138DC2410079B7E2 /* XMLErrors.cpp in Sources */, 32413 46EFAF111E5FB9F100E7F34B /* LowPowerModeNotifier.cpp in Sources */, 32402 32414 BC772C460C4EB2C60083285F /* XMLHttpRequest.cpp in Sources */, 32403 32415 A136A00C1134DBD200CC8D50 /* XMLHttpRequestProgressEventThrottle.cpp in Sources */, -
trunk/Source/WebKit2/ChangeLog
r212949 r212965 1 2017-02-24 Chris Dumez <cdumez@apple.com> 2 3 [iOS][WK2] Disable network cache speculative revalidation / loading in low power mode 4 https://bugs.webkit.org/show_bug.cgi?id=168832 5 <rdar://problem/30697911> 6 7 Reviewed by Antti Koivisto. 8 9 Disable network cache speculative revalidation / loading in low power mode on iOS to 10 save battery. 11 12 * NetworkProcess/cache/NetworkCache.cpp: 13 (WebKit::NetworkCache::Cache::initialize): 14 * NetworkProcess/cache/NetworkCache.h: 15 1 16 2017-02-24 John Wilander <wilander@apple.com> 2 17 -
trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp
r212244 r212965 36 36 #include <WebCore/FileSystem.h> 37 37 #include <WebCore/HTTPHeaderNames.h> 38 #include <WebCore/LowPowerModeNotifier.h> 38 39 #include <WebCore/NetworkStorageSession.h> 39 40 #include <WebCore/PlatformCookieJar.h> … … 78 79 79 80 #if ENABLE(NETWORK_CACHE_SPECULATIVE_REVALIDATION) 80 if (parameters.enableNetworkCacheSpeculativeRevalidation) 81 m_speculativeLoadManager = std::make_unique<SpeculativeLoadManager>(*m_storage); 81 if (parameters.enableNetworkCacheSpeculativeRevalidation) { 82 m_lowPowerModeNotifier = std::make_unique<WebCore::LowPowerModeNotifier>([this](bool isLowPowerModeEnabled) { 83 ASSERT(WTF::isMainThread()); 84 if (isLowPowerModeEnabled) 85 m_speculativeLoadManager = nullptr; 86 else { 87 ASSERT(!m_speculativeLoadManager); 88 m_speculativeLoadManager = std::make_unique<SpeculativeLoadManager>(*m_storage); 89 } 90 }); 91 if (!m_lowPowerModeNotifier->isLowPowerModeEnabled()) 92 m_speculativeLoadManager = std::make_unique<SpeculativeLoadManager>(*m_storage); 93 } 82 94 #endif 83 95 -
trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.h
r212244 r212965 37 37 38 38 namespace WebCore { 39 class LowPowerModeNotifier; 39 40 class ResourceRequest; 40 41 class SharedBuffer; … … 148 149 std::unique_ptr<Storage> m_storage; 149 150 #if ENABLE(NETWORK_CACHE_SPECULATIVE_REVALIDATION) 151 std::unique_ptr<WebCore::LowPowerModeNotifier> m_lowPowerModeNotifier; 150 152 std::unique_ptr<SpeculativeLoadManager> m_speculativeLoadManager; 151 153 #endif
Note: See TracChangeset
for help on using the changeset viewer.