| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Adds test for user-agent override and fixes the override so that it
also works when loading with content instead of URLs.
Change-Id: I3f61b1d91b7b0908e35216722054168d1c514a87
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
Most of our Qt specific versions of Chromium classes have Qt appended,
but a few observers have it prepended. This patch renames them to keep
naming consistent.
Change-Id: I004b61e16bc47f39a6bbc16a5f5c10585626865c
Reviewed-by: Michael BrĂ¼ning <michael.bruning@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
| |
We can not add a new virtual method without breaking ABI on some
platforms, instead we need to use a setter.
The API now uses a request object, and a separate signal for canceling,
since canceling can not be rejected.
Change-Id: If8069c343e86926293c30e8de179bf4e3cbd5886
Reviewed-by: Kai Koehne <kai.koehne@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>
|
|\
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows users to implement a "sad tab" feature and/or track
rendering process crashes using a crash reporting service.
Task-number: QTBUG-48227
Change-Id: I97ef934fe5d0912cd0f41967a39052316b3c66b0
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
SelectAll only works when there is a focused frame, so we must ensure
a frame is focused when the web-contents requests focus.
Change-Id: I00d670321b29342fcd447b4b07251df776019f1c
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Adds inspect element to the context menu when there is an attached
inspector on the page.
Change-Id: Id3c8a5be34318c12ab331b6611219bd59b7b70be
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Adds a web action that can be used for exiting fullscreen mode, and
include it the context menu whenever in fullscreen mode.
Change-Id: I7aa729a86f9ba9df476766cd40f87d9385948fea
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds the missing InspectElement webaction from QtWebKit. It is not added
by to any context menus by default and only has an effect when an
inspector is attached.
Change-Id: Ic8c67c797e5dfe266fb692ffc97577b842458a79
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>
|
| |
| |
| |
| |
| |
| |
| | |
This amends commit 2a56ec7ce4713711b55bb1dfc86a4320d943f606.
Change-Id: I8103197f08c985557000de36c37ad80e1ceadf24
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch is adding a QWebEngineUrlRequestInterceptor interface
that can be subclassed to observe or intercept all resource requests
making it possible to implement browser features like adblocking
and setting custom request headers for url requests.
The interceptRequest virtual function is executed on the IO thread.
This patch also includes a unit test for the testable API parts.
Change-Id: Ibe740fc55551a9a5da40794088ccb6d03d913631
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Reviewed-by: Martin Rotter <rotter.martinos@gmail.com>
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This also allows setting a transparent color to see through
the web view's body if its background color isn't specified.
The color is initially held by the top API view and is pulled
by the WebContentsAdapter in order to set it on the RenderView.
Since both blink and our local compositors (in the QOpenGLWidget
case) need to know about this color, RWHVQt takes care of pushing
it to both. The former through an IPC message and the latter
directly on the RWHVQtDelegate.
Task-number: QTBUG-41960
Change-Id: Ie13317b2d087f5612ad9c5fb0e05ca3e91aec9af
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Add the web actions DownloadLinkToDisk, DownloadImageToDisk and
DownloadMediaToDisk.
Change-Id: If6c9c8a3f4b95ad3032cff71ffc53a48be26e083
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
Frame to navigate has been moved from NavigationEntry to LoadURLParams.
Change-Id: Ic421867ba067a79bbc499904e24066d40ff9b1ea
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| | |
Implementing the new PermissionManager API.
Change-Id: If0fdac24b8fec561a898aba009345576b5ce7fc6
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This class or its subclass can be set on the
QWebEngineProfile and its API enables intercepting
Chromium's cookies, setting and deleting cookies
in the cookie store.
These functions are asynchronous so if the result
of the task is needed the user can provide a
callback which will be run on the calling thread
when the requested operation finishes.
This does not include a hook for QQuick layer yet,
there we have to figure out what the most convenient
way is from a developer's perspective.
Change-Id: I6a3af071883ce632df7a2fb952da93f306ac3fe2
Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Implements the several missing context menu actions for navigation and
image and media handling.
Change-Id: Ib8ea8311ea291fe2f98e509bc6f4034a5e0389c9
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|\|
| |
| |
| | |
Change-Id: I6f913ebc7aed68d4b8c3f8666fd2389607b491b7
|
| |
| |
| |
| |
| | |
Change-Id: I87de823c9a67f4e30dd9a86b185bfde51b934509
Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
|
|\|
| |
| |
| | |
Change-Id: I7b0dae978357c6f48826ad8e09a8cb8477d1901d
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Appears to be an oversight for widgets, as the API was there,
but just wasn't wired.
Also add it for QQuickWebEngineView while we're at it.
Change-Id: I07d6e356cbaf22b79f3fc5a82df78c6821993e8d
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/webengine/api/qquickwebengineview_p_p.h
src/webengine/ui_delegates_manager.cpp
src/webengine/ui_delegates_manager.h
src/webenginewidgets/api/qwebenginepage_p.h
Change-Id: I8052de4d3b2e68a950832226f6f99e2aafca5505
|
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
|/
|
|
|
|
|
|
|
| |
Move FilePickerController classes to the QtWebEngine core
to providing common functionality of files selecetion for
WebEngine and WebEngineWidgtes.
Change-Id: I6ab407095460ef5b63b454f7d62b98215383fc21
Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
| |
Chromium has multiple places where it reads the user-agent, we were
only setting one, which appears to no longer be used for most cases.
This instead sets it by using the webcontent user-agent override.
Change-Id: I77d4d0a21424feda7a18140fb72baacdd6f816ca
Reviewed-by: Pierre Rossi <pierre.rossi@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>
|
|
|
|
|
|
|
|
|
|
| |
Provide a transport mechanism for WebChannel over chromium IPC and
expose WebChannel in our experimental QML API.
Co-authored by Milian Wolff.
Change-Id: Ia24b1d4ebc8515de677d4849ec33cb55c963918e
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
| |
Keeping it in sync with its content equivalent.
Change-Id: If0dbd79844b836ee8fe26b1e9c414f355c026302
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
| |
Change-Id: I42cc8b28dd9aef9d23b83a43a60d8d59c16f4b1d
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
| |
To avoid crashing due to a mismatch of browser-contexts used by
webcontent and webcontent adapters and clients, we refuse to
open content in a new window witha different profile and
prints a warning so the developers may fix their software.
Change-Id: I704266a96de2d7a5f8e1fa3ccf49a50f1d2307c9
Task-number: QTBUG-43898
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds guards that for QT_NO_ACCESSIBILITY being not defined
around the code that uses accessibility types.
It disables the quicknanobrowser and quicktestbrowser examples
which need Qt QuickControls, which has a hard dependency to
accessibility being enabled.
Task-number: QTBUG-43305
Change-Id: Ifa39e3ce447ebc2124f52e00b29b1d7d2231035e
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
|
| |
Ensure we only grant permission to the origin the user replied to,
otherwise we might get a race exploit.
Change-Id: I4f737148f4e41432c160b81c324531e9cde0edc6
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current implementation would enable or disable the inspector
globally when the inspectable property was set on a WebEngineView,
overwriting the value previously set by other pages.
Instead of havind default port for the debugging server and having
to enable debugging on individual pages, use an environment variable,
QTWEBENGINE_REMOTE_DEBUGGING, to enable the debugging server for the
whole application at the same time as specifying the port. The format
is the same as for QTWEBKIT_INSPECTOR_SERVER in QtWebKit.
QTWEBENGINE_REMOTE_DEBUGGING is set by default in quicktestbrowser
to ease development.
This also keeps the input reading from the --remote-debugging-port
command line switch for convenience, but its usage should be
considered internal.
This patch also take the opportunity to remove the unused
DevToolsHttpHandlerDelegateQt::m_browserContext and to move the
ownership from ContentBrowserClientQt to WebEngineContext since
the list of inspectable pages isn't bound to the BrowserContext
anyway.
Change-Id: I772687f88f4feee0cc14dd182b0129cc0ea384dd
Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
|
|
|
|
|
|
|
|
| |
Adopt Accessibility functions from render_frame_host_impl.cc
Change-Id: Ifa6752fd9daa3429d4016a91b85d7145b1fc2775
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* scoped_refptr operator for implicit conversion to pointer has
been disabled upstream: https://codereview.chromium.org/510323002
* Group permission API as done upstream:
https://codereview.chromium.org/622793002
* content_worker gyp target has been removed upstream.
* GetPageThumbnailData moved to DevToolsManagerDelegate.
* ui/ui_resources has been renamed to ui/resources
* WebPreferences and ResourceType have moved inside content.
* Merge ResourceBundle's InitSharedInstanceLocaleOnly with InitSharedInstanceWithLocale():
https://codereview.chromium.org/457103003
* Remove obsolete accessibility events.
* AX_EVENT_SELECTED_TEXT_CHANGED has been renamed to AX_EVENT_TEXT_SELECTION_CHANGED
* AX_ROLE_MATH_ELEMENT was removed upstream. https://codereview.chromium.org/695133002
* Screen::IsDIPEnabled has been removed upstream. https://codereview.chromium.org/672823002
* Update DevToolsHttpHandlerDelegateQt according to ShellDevToolsManagerDelegate.
* Various functionality from DevToolsHttpHandler was moved to DevToolsManagerDelegate
https://codereview.chromium.org/560323005
* DevToolsHttpHandler::Start expects a scoped_ptr now.
* Make sure event_factory_evdev.h is not included when USE_OZONE is not defined
* ErrorPageParams was moved into namespace error_page.
* Media Access is now handled by ContentBrowserClient::CheckMediaAccessPermission
* SpecialStoragePolicy moved to namespace storage
* Add implementation for new pure virtual function BrowserContext::GetSSLHostStateDelegate.
* RenderPass::Id was renamed to RenderPass::RenderPassId
* Include view_messages.h for ViewHostMsg_TextInputState_Param
* CERT_UNABLE_TO_CHECK_REVOCATION has been deprecated by Chromium:
https://codereview.chromium.org/449743002
* MailboxManager::ConsumeTexture only takes the mailbox as an argument
* Replace RWHVQt::TextInputStateChanged with RWHVQt::TextInputTypeChanged.
* RenderWidgetHostView::ScrollOffsetChanged has been removed.
* SkBitmap::Config was removed upstream.
* CopyFromCompositingSurfaceCallback has become an own type.
* AcceleratedSurfaceInitialized only takes route_id as an argument.
* ServerBoundCertService has been renamed to ChannelIDService.
Related API has been renamed accordingly.
* TextureImageTransportSurface was removed upstream.
* Update MediaCaptureDispatcher::OnMediaRequestStateChanged signature.
* AudioStream related functions are gone upstream.
https://codereview.chromium.org/569713002
* Add implementation for RenderWidgetHostViewQt::GetLastScrollOffset.
* Include generic touch_device implementation.
* switches::kDisableDesktopNotifications was removed upstream.
https://codereview.chromium.org/607843002
* PageTransition moved to ui.
* Messages headers are not guarded. Including them multiple times does hurt.
* ScaleGestureDetector does not create a standalone GestureDetector anymore.
https://codereview.chromium.org/501503003
* MotionEvent::Cancel and Clone are not virtual anymore.
https://codereview.chromium.org/502993004
* Exclude os_exchange_data_provider_mac from build.
* Remove argument from ScopedClipboardWriter ctor.
https://codereview.chromium.org/558913003
* Remove ShowPopupMenu override from WebContentsQt.
The function is not pure virtual anymore,
and we never implemented any specifics.
* Do not use clang on desktop linux.
* Request functions in ContentBrowserClient
were merged into RequestPermission.
* ninja: use configure.py --bootstrap instead of bootstrap.py
Change-Id: I3575612826db7845461a949b4e737264bb4e8d88
Reviewed-by: Pierre Rossi <pierre.rossi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
| |
If the user grants the permission with mouse click on the feature
permission bar, the RenderWidgetHostView loses the focus but the
focus is necessary for the pointer lock.
Change-Id: Ifafd86b472e400c5690194dce2ea8a829a51c313
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In order to stay in line with the behavior expected by Chromium, we
focus the view on load. This is problematic when relying on the
editingFinished signal of text inputs in QML, as it is fired both when
pressing enter and when losing focus.
In our case, this would lead to reentering into load and in turn
QQuickWindowPrivate::setFocusInScope, and when returning from the outer
call, QQuickWindow would try to access the RWHVQtDelegateQuick from the
first load through a now dangling pointer.
It seems preferable to guard WebContentsAdapter::load against recursion.
Adds a simple autotest that covers the crash scenario.
Task-number: QTBUG-42929
Change-Id: Ib3bf9f421b1a91645b3e0e9aa658f2a3646d9caf
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
|
|
|
|
|
|
|
| |
Fixing up an oversight.
Change-Id: Ie09a93380b56b5f9314f43206eedbd5f1f36f2a2
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduces initial widgets API for the Chromium BrowserContext.
Adds API for controlling cookie jar policy, user-agent string and
cache and persistent data paths.
Similar QML API will follow in another patch.
[ChangeLog][QtWebEngineWidgets][QWebEngineProfile] New API for profiles
applying to groups of QWebEnginePages.
Change-Id: I3c4ef4053fde7564af29178c91a0aca8a2b61a5f
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
| |
If QtPositioning is available, provide chromium with a
LocationProvider that uses it as a backend.
Change-Id: I53ad3b45e49d0d2d181c1a6459b7be764293c2a6
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
|
|\
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/core/browser_context_qt.cpp
src/webengine/api/qquickwebengineview_p.h
Change-Id: I73bdec03b627b282851d7dda12006d4ab631072c
|
| |
| |
| |
| |
| |
| |
| |
| | |
Use explicit url in quick API too and use GetLastCommittedURL instead of
GetVisibleURL for getting the expected urls in tests.
Change-Id: If3251323645979643f3dc0e16491fe35b584f51c
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
|
| |
| |
| |
| |
| |
| |
| | |
As it turns out failing to do so can mess up the page state.
Change-Id: I8cc785b01c73bde5443bdb78554d7b3809d96afe
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch makes it possible to have more than one BrowserContext,
for instance for off-the-record browsering but also to enable any
other configuration on browser context level.
This will make it possible to add page-groups settings and API for
settingsthat can only be done on BrowserContext level.
This patch does not expose any new API.
Change-Id: I0a0e194449cfb5a096a4ac6e2f2b3882b6b4cfa2
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The requestedUrl function didn't return empty URL even if
the empty URL was really requested. It was assumed if
GetOriginalRequestURL returned empty string that means the requested url was
not set in the navigation entry.
This fix handles that case when empty url is set in the navigation
entry as requested url. If the navigation entry is in pending state that means the
request url has not been set yet thus the actual URL should be returned.
Change-Id: Ic2eff5c487686f7c0e349a7a34a86b80551a002f
Reviewed-by: Andras Becsi <andras.becsi@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The fact that the error pages are HTML and get loaded through the
same mechanism should be kept an implementation detail and not be
considered as a new load in the API sense.
Also implement HasErrorPage for good measure and remove an anoying
warning from the demo browser.
The issue of the url not being changed remains in the QML test (but
it doesn't affect a typical browser-like UI since the user input is
still there untouched in the address bar), just make sure that failure
does not affect the later checks. It also seems like we have a focus
problem somehow, but the test should probably use a click for that
matter.
Change-Id: Ib5e363981a11287fdf4bfe84b93c999d96ed8087
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
|