[Webkit-unassigned] [Bug 84527] New: [Qt][WK2] Define clear split between QtWebPageLoadClient and QQuickWebViewPrivate for loading tasks.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Apr 21 03:51:40 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=84527

           Summary: [Qt][WK2] Define clear split between
                    QtWebPageLoadClient and QQuickWebViewPrivate for
                    loading tasks.
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Minor
          Priority: P2
         Component: WebKit Qt
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: zbujtas at gmail.com


Right now QtWebPageLoadClient does 4 different things
1, emits signals on webview: emit m_webView->loadingChanged(&loadRequest);
2, calls into QQuickWebViewPrivate. m_webView->d_func()->loadDidCommit(); where there's no implementation whatsoever.
3, calls into QQuickWebViewPrivate. m_webView->d_func()->loadDidSucceed(); where the implementation could be completely omitted.
4, calls into QQuickWebViewPrivate: m_webView->d_func()->didChangeBackForwardList(); where there's some proxy implementation.

They should be harmonized in some ways, either push back more implementation to QtWebPageLoadClient so that it needs no access to QQuickWebViewPrivate, or just use it truly as a proxy class. Right now it's a mixture.

(case 3, loadDidSucceed() implements some deferred loading success dispatching due to the delayed interaction engine construction. I looked at the original patch (bug 77111) and don't see any reasoning why success() is special in that case, and for example failed() is not. Commit log also states that page is suspended while I don't think it is, it's just that the suspend flag is turned on by default, so not sure why success() is treated differently here, unless I miss something, which could very well be the case. If this delaying logic could be omitted, we would end up even less d_func() calls in QtWebPageLoadClient(), provided that's the preferred direction.)

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list