Skip to content
  • commit-queue@webkit.org's avatar
    [BlackBerry] when one of multiple tabs uses authentication, user can get the... · ea5358c7
    commit-queue@webkit.org authored
    [BlackBerry] when one of multiple tabs uses authentication, user can get the auth dialog while the other tab has focus.
    https://bugs.webkit.org/show_bug.cgi?id=95488
    PR: 186597.
    
    Internally reviewed by Joe Mason.
    Patch by Lianghui Chen <liachen@rim.com> on 2012-09-07
    Reviewed by Yong Li.
    
    Source/WebCore:
    
    The fix for this PR will come as 2 patches. This is the first patch which
    will make the authentication challenge asynchronous inside WebKit. The
    bext patch will add an AuthenticationChallengeManager that manages these
    authentication requests asynchronously.
    
    This patch add AuthenticationChallengeClient interface to define asynchronous
    authentication challenge callback. And MediaPlayerPrivateBlackBerry and
    NetworkJob are changed to inherit from AuthenticationChallengeClient to
    support asynchronous authentication challenge.
    
    Note: there is also an accompanying platform patch to make our PlatformPlayer
    to support asychronous authentication, see PR 186597 for details.
    
    No new tests as this is platform specific change.
    
    * platform/blackberry/AuthenticationChallengeManager.h: Added.
    (WebCore):
    (AuthenticationChallengeClient):
    * platform/blackberry/PageClientBlackBerry.h:
    (WebCore):
    * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
    (WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
    (WebCore::MediaPlayerPrivate::notifyChallengeResult):
    * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
    (MediaPlayerPrivate):
    * platform/network/blackberry/NetworkJob.cpp:
    (WebCore::NetworkJob::sendRequestWithCredentials):
    (WebCore::NetworkJob::notifyChallengeResult):
    (WebCore):
    * platform/network/blackberry/NetworkJob.h:
    (WebCore):
    (NetworkJob):
    
    Source/WebKit/blackberry:
    
    Use new AuthenticationChallengeClient interface to make authentication
    challenge asynchronous to NetworkJob, MediaPlayerPrivateBlackBerry, and
    other module that will use HTTP authentication. WebPage itself still use
    synchronous authentication though. Switching to asynchronous authentication
    in WebPage will require bigger platform layer change and not very necessary
    at the moment for this bug.
    
    * Api/WebPage.cpp:
    (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
    * Api/WebPage_p.h:
    (WebCore):
    (WebPagePrivate):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127884 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    ea5358c7