| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Extend initialization of URLRequestContextGetterQt to create a
content::ProtocolHandlerRegistry for each content::BrowserContext and add the
registry's URL request interceptor to the front of the interceptor chain.
Implement methods in WebContentsDelegateQt to add/remove protocol handlers
to/from the ProtocolHandlerRegistry.
Add permission request signal and classes for core, quick and widgets.
Add widgets autotest.
Add signal handlers to quicknanobrowser and simplebrowser.
Task-number: QTBUG-62783
Change-Id: I808e7eb9a1cb4d7216686deed4895de14fe46310
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/core/download_manager_delegate_qt.cpp
src/core/download_manager_delegate_qt.h
src/core/render_widget_host_view_qt.cpp
src/core/web_contents_adapter.cpp
src/webengine/api/qquickwebengineview.cpp
tests/auto/widgets/qwebenginedownloads/tst_qwebenginedownloads.cpp
Change-Id: I2308414ce257ae5bb0fc9f6493aa111a267ff39b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Destroy WebContentsDelegateQt before WebContents, since it
references already partly deleted WebContentsAdapterClient object.
This prevents calls by navigation handling on already destructed
web contents adapter client.
Task-number: QTBUG-65647
Task-number: QTBUG-47945
Change-Id: I0ed5887b337a43ab89ecbfe05130691b5f1f37ec
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I49cd3c419d4dd1180144c3c07bdd9a628ab73caa
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Makes it possible to use devtools without using the remote-debugger
Task-number: QTBUG-47899
Task-number: QTBUG-50725
Task-number: QTBUG-50766
Change-Id: Id32e13f773372d9917599ebbb64ab4af61bbf1d8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/core/web_event_factory.cpp
src/core/web_event_factory.h
src/webengine/render_widget_host_view_qt_delegate_quick.h
Change-Id: Ic43787e2689c81b501ed395a990190eb67d83a2b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Consider the scenario
1. user enters url "http://localhost:8000/"
A new navigation entry is created and committed in the
NavigationController.
2. user enters url "http://localhost:8000/download.bin"
A new navigation entry is created and a download is triggered, but the
pending navigation entry in the NavigationController is neither committed
nor discarded (since our WebContentsDelegate's ShouldPreserveAbortedURLs()
returns true).
3. user enters url "http://localhost:8000/download.bin"
At this point the NavigationController will have "http://localhost:8000/"
as the committed navigation entry and "http://localhost:8000/download.bin"
as the pending entry. NavigateToPendingEntry will see that the user is
trying to navigate again to the same URL as the last pending entry and will
therefore identify this new navigation as a reload.
However Blink interprets 'reload' to mean reloading the last committed
entry, i.e. "http://localhost:8000/", and so we end up trying to download
"http://localhost:8000/" instead of "http://localhost:8000/download.bin" as
the user might have expected.
The patch removes the ShouldPreserveAbortedURLs override and relies on the
default implementation which always returns false. As a result the pending
navigation entry in step 2 above is discarded once the download has been
triggered and the unexpected behavior in step 3 is no longer triggered.
Removing the override resurrects QTBUG-48995 where, for example, calling
QWebEnginePage::setUrl triggers first a urlChanged signal for the *old* URL. The
patch adds url and title properties to WebContentsDelegateQt so that property
change signals are triggered only if the properties have actually changed. A
consequence of this fix is that the first urlChanged signal is delivered
directly from the setUrl/load method and not asynchronously once the loading
starts (this is also how Chrome's URL bar is updated).
Task-number: QTBUG-63388
Change-Id: Icfa300b165e5e56f1fbc8978a00a237c263df183
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|\|
| |
| |
| | |
Change-Id: Ibc1c881a67bf088ba6fb044e2553c74c7e9e24ca
|
| |
| |
| |
| |
| | |
Change-Id: I5cb198445f283c6cea8187a1a2883896df0ee918
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A new enum UnknownUrlSchemePolicy was added to WebEngineSettings,
QWebEngineSettings and QQuickWebEngineSettings.
WebContentsDelegate now has a new attribute of that type, which can
be read and written through the public APIs
Q(Quick)WebEngineSettings::unknownUrlSchemeNavigationPolicy and
Q(Quick)WebEngineSettings::setUnknownUrlSchemeNavigationPolicy.
This way, one can control, whether URLs with unknown schemes are passed
to QDesktopServices. WebContentsAdapterClient::navigationRequested is
called on these requests, so this allows more fine-grained control
over the schemes and origins, that are allowed.
Task-number: QTBUG-58627
Change-Id: Ie81d9503456d63ea1ed5606483254acf437cd8f7
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
| |
Change-Id: I536258e22c2ec143f2fd3f1cbda229e0611b6af4
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We now track the values we send to the loadProgress signal. We store
the last value in a new int WebContentsDelegateQt::m_lastLoadProgress
and only send values that are >= m_lastLoadProgress to ensure
monotonicity.
A value < 0 indicates that no loading is going on. Only on loadStarted
it is set to 0 (and a loadProgress is emitted with progress 0) and
on loadFinished, it is set to -1 (and a loadProgress is emitted with
progress 100).
This way, we ensure that you first get a loadStarted signal, at least
two loadProgress signals (0 and 100) and a loadFinished signal
AND all loadProgress signals come in a monotonous order.
Task-number: QTBUG-57839
Task-number: QTBUG-61815
Change-Id: I219d3bffbd5691adb892a11b79647ba9e1ed248e
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ida702fd5fa05a32d6cd7fc737aa061da74b675a0
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When opening a new window, for example by using the JavaScript
method window.open('...'), the requested url is not stored
in the content::WebContents object we get in
WebContentsDelegateQt::createWindow (at this point, it should
at least be stored as pending request in the WebContents'
NavigationController, but it is not).
Because of this, the QQuickWebEngineNewViewRequest object
in QQuickWebEngineViewPrivate::adoptNewWindow never contained
the url. We have access to the target url in
WebContentsDelegateQt::WebContentsCreated, so now we store
it there in a new property m_initialTargetUrl, from where
WebContentsDelegateQt::createWindow takes it and passes it
to WebContentsAdapter::adoptNewWindow as a new parameter.
[ChangeLog][WebEngine] Fix WebEngineNewViewRequest::requestedUrl being empty when opening window from JavaScript
Task-number: QTBUG-57675
Change-Id: I7e2c7866899baade17ce2517e6be8b2b2709699e
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ieef29fa09c8b4733737840ce6260ac6e87e7dca0
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| |
| |
| |
| |
| | |
Change-Id: Ia2756c1e9b13839c2330bd98cf953d47cbdac0dd
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Calling the method window.focus() in javascript causes chromium to send
a ViewHostMsg_Focus message, which is received by RenderViewHost,
which then calls RenderViewHost::OnFocus.
This calls WebContentsDelegate::ActivateContents, which does
nothing in the default implementation. We now override this method in
WebContentsDelegateQt::ActivateContents and call Focus() on
the WebContents object IF the new WebEngineSettings value
AllowWindowActivationFromJavaScript is true (by default, it is false).
This in turn calls QWebEnginePagePrivate::focusContainer.
The WebEnginePage now calls QWidget::activateWindow() in addition
to QWidget::setFocus, to make sure the window is also activated (which
it might not be, if multiple windows are open).
For the QML side, a new boolean Property
allowWindowActivationFromJavaScript was added.
Task-number: QTBUG-58800
Change-Id: Iabf5d4d15236c77838a3886de81e9dafcaf49f5d
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
Update our overrides to Qt coding standard getting rid of
Q_DECL_OVERRIDE and redundant virtual declarations.
Change-Id: Id8b0750eb05c51fc8f50cac4000a811eebcbf918
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I78240d7956de4716757761fc6517f031b4adb822
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove RenderViewObserverHostQt_DidFirstVisuallyNonEmptyLayout message
and use WebContentsObserver::DidFirstVisuallyNonEmptyPaint instead.
- The order of the DidFirstVisuallyNonEmptyPaint and
OnSwapCompositorFrame events is not guaranteed. Check for both events to
do not miss to send any loadVisuallyCommitted signal.
Change-Id: Ic733b3e9a6fae64b1d827e8e07514f180273cf8c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
| |
Change-Id: I15053486edfd42ee607250b4f14fb6eaa325c959
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduce qml APIs to support custom dialogs:
* http and proxy authentication
* javascript dialogs
* file pickers
* color pickers
* form validation messages
[ChangeLog][QtWebEngine][QML] Added ability to provide custom dialogs
for HTTP and proxy authentication, JavaScript alerts, file and color
picking, and form validation messages.
Task-number: QTBUG-51190
Change-Id: I559ca59264750feb36ba7d3dba0bf0647509306d
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Also blacklist tst_QWebEnginePage::comboBoxPopupPositionAfterChildMove()
and comboBoxPopupPositionAfterMove().
Conflicts:
.qmake.conf
src/3rdparty
src/core/render_widget_host_view_qt.cpp
src/core/resources/resources.gyp
src/webengine/doc/src/qtwebengine-platform-notes.qdoc
src/webenginewidgets/render_widget_host_view_qt_delegate_widget.cpp
src/webenginewidgets/render_widget_host_view_qt_delegate_widget.h
tests/auto/widgets/qwebenginepage/BLACKLIST
tests/auto/widgets/qwebenginepage/tst_qwebenginepage.cpp
tools/qmake/mkspecs/features/functions.prf
Task-number: QTBUG-55158
Change-Id: I1d73ac9b3ca5293ad3c7e3a56f4c395da930e6f4
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/3rdparty
src/core/resources/resources.gyp
src/webengine/doc/src/qtwebengine-overview.qdoc
src/webenginewidgets/api/qwebenginepage.cpp
src/webenginewidgets/api/qwebenginescriptcollection.cpp
src/webenginewidgets/api/qwebenginescriptcollection_p.h
tests/auto/widgets/qwebenginepage/BLACKLIST
And readded newly in 5.6 enabled tests to the BLACKLIST.
Change-Id: I4ab1fc54ebfaaf940df81b0d8d6bdd15cae8b7c4
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QExplicitSharedDataPointer is meant for value objects, not for shared
objects. Instead switch to using QSharedPointer.
Change-Id: Ib3791bbcfde627a67508f2819e141d8c538a4a50
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add the convenience method QWebEnginePage::save for saving pages without
the need to explicitly handle download requests.
Task-number: QTBUG-51798
Change-Id: I8910ce8cb7c9370d72f2b209c4d2de07c614f6d6
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|/ /
| |
| |
| |
| |
| |
| | |
Trivial changes in methods, arguments and types.
Change-Id: Ic707c376249f816268223e696ed5f6251df1f85f
Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
|
|\|
| |
| |
| | |
Change-Id: I53645ee5405b1c43807123fd3c196e314cfd1ce9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes access of label of MediaStream tracks
Also fixes the logged error:
WebContentsDelegate::CheckMediaAccessPermission: Not supported.
Change-Id: I3fee9ccd9e8b2e5cbd6b707336cc61425a44ba31
Task-number: QTBUG-52216
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Chromium usually clears the pending entry when it fails,
so that an arbitrary URL is not left visible above a committed page.
However, it does preserve the pending entry in some cases,
such as on the initial navigation of an unmodified blank tab.
So in other cases Chromium clears the pending entry
(if the navigation is not in progress), and it does force the UI (URL bar)
to refresh.
In our case we allow failed URLs to stick around in the URL bar
but only when alternate error pages are used.
Change-Id: I26e81e7a99415aa184880dcb647a06d977584119
Task-number: QTBUG-48995
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Converts types, callbacks and headers to match Chromium 49.
Task-number: QTBUG-51173
Change-Id: I544ef46e187105e250fea1b48b72d2c81a906640
Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
|
|\|
| |
| |
| | |
Change-Id: I0bb971f01ee1e02da768f336680c8ec0254ab2b0
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use this signal to notify the user on JavaScript window move/resize
requests. It works only for windows opened by JavaScript (according to
the Chromium browser's behavior).
Change-Id: I7fdeda4c252cc4badb36b74ed61d947be690f45a
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The new icon manager uses the WebContents::DownloadImage() API for
downloading icons. It proposes the best quality among the available
favicons via the iconChanged signal.
Change-Id: I66a014365b6f6560ff34d40ee870aee84e4e70e4
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Update files using old header.LGPL3 to use header.LGPL
Update files using old header.FLD to use new header.FDL
Update files using old header.BSD to use new header.BSD
Change-Id: I36a67aaa8c3ca6c7946308defc9c03c3571a7d23
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
|
|/
|
|
|
| |
Change-Id: I501125631946f70aae1ff039b0e5bcb9198e7242
Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
|
|
|
|
|
|
|
|
| |
Replace QList with QVector in all places where the type isn't a pointer,
and is not already (indirectly) exposed through public API.
Change-Id: I90e3db56bf9ebda6b3cb8fb4396d2ae283159727
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
|
|
|
|
|
|
|
|
|
| |
Use the web_cache component which monitors and adjusts the web cache,
so that the memory use is limited across multiple renderer processes.
Change-Id: I9faa060d48f99a3c527fe0e0963bbe86db4b502c
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Reviewed-by: Michael Brüning <michael.bruning@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Web pages can set the onbeforeunload handler to let the user confirm
whether to leave the page or not. Until now, only when leaving the
page via a link, a confirmation was shown.
Before actually closing a web page, applications can now trigger
the RequestClose web action. This will give the use the chance to
confirm or deny the close request.
If the request is confirmed, the signal windowCloseRequested is
emitted.
Task-number: QTBUG-36155
Change-Id: Icc1fabc37a2ac537f674c2f00bc8966e4dc4e610
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support for launching external URLs such as mailto:
They are also routed through navigationRequested like they would have
been in QtWebKit.
[ChangeLog][QtWebEngineCore] External links such as mailto: are now handled. By
default they launch using QDesktopServices.
Change-Id: I83ed96e2330d54cae57f03648d471a8da9a82a30
Task-number: QTBUG-47143
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
|
|\
| |
| |
| | |
Change-Id: Ice3d6e88238940a62d75e7c67f63b626285fccb0
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Remove frame loading error-page when frame is deleted, and make sure
WebContents is destroyed before the observer so the observer can observe
the full live-span including deletions..
Task-number: QTBUG-47945
Change-Id: I56bec611b8bfbfc6f75a1bc2108efbc80a81729b
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
Fixing the minor differences needed to work with Chromium 45.
Change-Id: I5036b4b9a069d45e8dd37e24fab84cdfe5e67acc
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
Adds and changes interfaces to work with Chromium 44.
Change-Id: Id7c02e7b1be255d591f7ac5449dde5823c261eb5
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
Implementing the new PermissionManager API.
Change-Id: If0fdac24b8fec561a898aba009345576b5ce7fc6
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|/
|
|
|
| |
Change-Id: I8261b201f1d6623eff3427b68b8d098c17d293d3
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
HTML5 provides built-in form validation that is supported by chromium.
The form validation messages should be shown by the browser therefore
new MessageBubble UI element has been added to Quick and Widget
implementations.
This patch implements chromium's form validation events and shows the
messages in a MessageBubble.
Change-Id: I0c8f4f102823117e2bfb16ff8a4c503635491939
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
|
| |
Adds the QtWebEngineCore namespace to all internal core API. This
ensures we don't export any internal symbols in the global namespace.
Change-Id: I26af888ea7c6c4c4d0f04c24a377c1a9d3c92751
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
| |
Qt copyrights are now in The Qt Company, so we could update the source
code headers accordingly. In the same go we should also fix the links to
point to qt.io.
Change-Id: Ieb6bac7a1be5c25eb7cb917495b58b6a870ca6d4
Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows applications to receive unhandled key events from the page
by setting an event handler on the view's parent widget/item, like
it was possible with QtWebKit.
This is different in that events first have to asynchronously go
through the QtWebEngineProcess. If the WebEngine view has the
keyboard focus, the events will be consumed inconditionally by the
RenderWidgetHostViewQtDelegates, and a copy will be resent to the
view's parent if it wasn't consumed.
This sends it to the parent instead of the QWebEngineView directly
since those are only unhandled events, unlike with other widgets
where you can first intercept events. It is done that way also in
cases where the QWebEngineView would be be the focus widget directly
in the future, instead of the RWHV.
If applications want to intercept key events before they reach the
page, they need to use an event filter on the QWebEngineView's
children or globally on the application.
Change-Id: I3b48f5212d3f238a1c0497cec1db6ae3badbad26
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|