From f88ba7bc5756d24775ec8960d891d015e40ff20a Mon Sep 17 00:00:00 2001 From: Vladyslav Stelmakhovskyi Date: Fri, 7 Apr 2017 15:45:33 +0200 Subject: [PATCH 1/2] Yahoo, Reddit etc now works correctly --- interface/resources/qml/TabletBrowser.qml | 7 +------ interface/resources/qml/controls/TabletWebView.qml | 14 +++++++++++++- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/interface/resources/qml/TabletBrowser.qml b/interface/resources/qml/TabletBrowser.qml index 2650102b27..74318a165e 100644 --- a/interface/resources/qml/TabletBrowser.qml +++ b/interface/resources/qml/TabletBrowser.qml @@ -104,6 +104,7 @@ Item { // Required to support clicking on "hifi://" links if (WebEngineView.LoadStartedStatus == loadRequest.status) { + urlAppend(loadRequest.url.toString()) var url = loadRequest.url.toString(); if (urlHandler.canHandleUrl(url)) { if (urlHandler.handleUrl(url)) { @@ -113,12 +114,6 @@ Item { } } - onNavigationRequested: { - if (request.navigationType == WebEngineNavigationRequest.LinkClickedNavigation) { - pagesModel.append({webUrl: request.url.toString()}) - } - } - onNewViewRequested: { request.openIn(webView); } diff --git a/interface/resources/qml/controls/TabletWebView.qml b/interface/resources/qml/controls/TabletWebView.qml index 50d6e1c504..e5b891777f 100644 --- a/interface/resources/qml/controls/TabletWebView.qml +++ b/interface/resources/qml/controls/TabletWebView.qml @@ -117,7 +117,7 @@ Item { } function gotoPage(url) { - pagesModel.append({webUrl: url}) + urlAppend(url) } function reloadPage() { @@ -126,9 +126,20 @@ Item { view.setEnabled(true); } + function urlAppend(url) { + var _url = decodeURIComponent(url) + if (_url[_url.length - 1] !== "/") + _url = _url + "/" + if (currentPage === -1 || pagesModel.get(currentPage).webUrl !== _url) { + pagesModel.append({webUrl: _url}) + } + } + onCurrentPageChanged: { if (currentPage >= 0 && currentPage < pagesModel.count && loader.item !== null) { loader.item.url = pagesModel.get(currentPage).webUrl + web.url = loader.item.url + web.address = loader.item.url } } @@ -160,6 +171,7 @@ Item { if (currentPage >= 0) { //we got something to load already item.url = pagesModel.get(currentPage).webUrl + web.address = loader.item.url } } } From a1892b351ff2680ed9786f4ed29b7550eb62e0fc Mon Sep 17 00:00:00 2001 From: Vladyslav Stelmakhovskyi Date: Fri, 7 Apr 2017 19:40:46 +0200 Subject: [PATCH 2/2] Cant use underscores outside class internals --- interface/resources/qml/controls/TabletWebView.qml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/interface/resources/qml/controls/TabletWebView.qml b/interface/resources/qml/controls/TabletWebView.qml index e5b891777f..ee26a32a85 100644 --- a/interface/resources/qml/controls/TabletWebView.qml +++ b/interface/resources/qml/controls/TabletWebView.qml @@ -127,11 +127,11 @@ Item { } function urlAppend(url) { - var _url = decodeURIComponent(url) - if (_url[_url.length - 1] !== "/") - _url = _url + "/" - if (currentPage === -1 || pagesModel.get(currentPage).webUrl !== _url) { - pagesModel.append({webUrl: _url}) + var lurl = decodeURIComponent(url) + if (lurl[lurl.length - 1] !== "/") + lurl = lurl + "/" + if (currentPage === -1 || pagesModel.get(currentPage).webUrl !== lurl) { + pagesModel.append({webUrl: lurl}) } }