/usr/lib/x86_64-linux-gnu/ubuntu-system-settings/private/Ubuntu/OnlineAccounts/Plugin/WebView.qml is in ubuntu-system-settings-online-accounts 0.7+16.04.20160322-0ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | import QtQuick 2.0
import Ubuntu.Components 1.3
import Ubuntu.Web 0.2
WebView {
id: root
property QtObject signonRequest
onSignonRequestChanged: if (signonRequest) {
signonRequest.authenticated.connect(onAuthenticated)
url = signonRequest.startUrl
}
onLoadingStateChanged: {
console.log("Loading changed")
if (loading && !lastLoadFailed) {
signonRequest.onLoadStarted()
} else if (lastLoadSucceeded) {
signonRequest.onLoadFinished(true)
} else if (lastLoadFailed) {
signonRequest.onLoadFinished(false)
}
}
onUrlChanged: signonRequest.currentUrl = url
context: WebContext {
dataPath: signonRequest ? signonRequest.rootDir : ""
}
function onAuthenticated() {
/* Get the cookies and set them on the request */
console.log("Authenticated; getting cookies")
context.cookieManager.getCookiesResponse.connect(onGotCookies)
context.cookieManager.getAllCookies()
visible = false
}
function onGotCookies(requestId, cookies) {
signonRequest.setCookies(cookies)
}
/* Taken from webbrowser-app */
ProgressBar {
anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
height: units.dp(3)
showProgressPercentage: false
visible: root.loading
value: root.loadProgress / 100
}
}
|