[iOS] ViewServices started by StoreKitUIService may get suspended unexpectedly
authorcdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 24 Aug 2017 15:59:24 +0000 (15:59 +0000)
committercdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 24 Aug 2017 15:59:24 +0000 (15:59 +0000)
commit3e401e2cfe49558ecd8274d99ca3bfa8b8599e85
tree792fa8fd87a14a3dfcd9d18b0772648a27f30c1b
parent600303cbb5d8165c789bfa7eedfc7be03777f869
[iOS] ViewServices started by StoreKitUIService may get suspended unexpectedly
https://bugs.webkit.org/show_bug.cgi?id=175922
<rdar://problem/34028921>

Reviewed by Tim Horton.

ViewServices started by StoreKitUIService may get suspended unexpectedly. This is
because StoreKitUIService is itself a ViewService and is therefore in the background.
To address the issue, treat StoreKitUIService as initially foreground in
ApplicationStateTracker so that its ViewServices do not get suspended. We don't
have good way to deal with ViewServices started by other ViewServices unfortunately.

* Platform/spi/ios/UIKitSPI.h:
* UIProcess/ApplicationStateTracker.mm:
(WebKit::ApplicationStateTracker::ApplicationStateTracker):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@221138 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebKit/ChangeLog
Source/WebKit/Platform/spi/ios/UIKitSPI.h
Source/WebKit/UIProcess/ApplicationStateTracker.mm