| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: I9fe9946ba47f9ef509a861963c83e275a25fffd0
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ibad2b8ebb90e79ff8337d994b2234eed5e230daa
Reviewed-by: Romain Pokrzywka <romain.pokrzywka@gmail.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ifa305045f3594f06b0ee106cd43f9d35853f8958
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Set host_cpu to ensure GN gets on the right path matching the host of
the toolchain we give it in host_toolchain.
Task-number: QTBUG-62673
Change-Id: I99d6dfdbe4cee30bc240049b656d1ec73becce8a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Chromium itself does not really support processing touch events on
macOS, but rather uses native gestures sent by the OS. Warn the user
in case they send simulated QTouchEvents.
Task-number: QTBUG-62130
Change-Id: If47f25bc06f3d6f99ba70164a585182354ed9b5a
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously when a popup window was shown, and the user issued a command
to close the only active main window (via a shortcut for example) with
a subsequent call to deleteLater(), the main window would be closed
and deleted but the popup would only be hidden, which led to the
application loop to still be running and not quitting, even though
there would be no visible window left.
The closing of a popup is usually done in the QWidget destructor when
the popup is still visible, but because we unset the parent right
before the parent is destroyed (which sets visibility to false), the
popup would not be closed, but only hidden.
Thus this change makes sure to explicitly close the popup when its
parent is destroyed.
Task-number: QTBUG-62311
Change-Id: Ia0bbf327929af55aac19767971ab0acde5715e21
Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Changes:
dd11b14b60 Optionally unbundle re2
5caa35af6b Support GN on MIPS64 hosts
Change-Id: I745f399477b182fa2216b879cac3d356ba0e69fd
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The software backend version of QSGLayer defaults to not mirroring
vertically, where the OpenGL does, and we rely on that.
Task-number: QTBUG-62112
Change-Id: Id5368728fd7046d2e4dc35bd4b2b61f2db35dac6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Chromium handles the flag for the render process, but with multi-process
we need to enable it for the browser process as well.
Task-number: QTBUG-62808
Change-Id: I1111dd7a2fd58876978ec5299bfb7abea8cb8487
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
DropData::file_contents and DropData::file_description_filename are
filled by Chromium if the user drags an image from a web page. Write the
file's content into a file with the suggested file name in a temporary
directory, and set the drop action to "move".
This enables users to drag images from the browser to the desktop or a
file browser.
The file is moved by the client to the target location.
The temporary directory is removed when the page is closed.
Note that Chrome doesn't use this temporary directory trick, but employs
techniques like XDS [1] on Linux to transfer the data via the native
clipboard/DnD MIME object. Unfortunately QDrag doesn't support this.
Support could be added, but I consider this solution as good enough.
[1] https://www.freedesktop.org/wiki/Specifications/XDS/
Task-number: QTBUG-60790
Change-Id: I44f2b3170a124e861ed4131c421903d895b70715
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Change-Id: I8f8f1baff3824cb07057375a72b5ae6f0e09b5a7
Reviewed-by: Florian Bruhin <qt-project.org@the-compiler.org>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of explicitly loading libraries from hard-coded locations,
we now just call dlopen(NULL, RTLD_LAZY). This returns a handle to
the host process'es context, which already contains the symbols of
both these libraries, because we link against them.
It was necessary to bypass LoadLibrary, because that expects a non-NULL
file path, so we couldn't pass NULL through that interface.
Task-number: QTBUG-57761
Change-Id: I29f037dfe542222b5188a33c7727c81a464a87bb
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With QtWidgets the QHoverEvent handling is slightly incorrect
(HoverEnter and HoverLeave triggering Q_ASSERT), quite unnecessary
(Chromium works fine with just MouseMove events when mouse tracking is
enabled), and mostly unused (QHoverEvents are only delivered if the
WA_Hover widget attribute is set, which it usually is not).
QtQuick however does not have the equivalent of QtWidgets mouse
tracking, so to get mouse movement information into Chromium we have to
use HoverMove QEvents. But the HoverEnter and HoverLeave QEvents are not
used or useful for QtQuick either.
Task-number: QTBUG-62200
Change-Id: I333de2b6adcc24544935d36645036aedb07e51ac
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We currently don't support unbundling SRTP because Chromium uses a too
new unreleased version, but we were still testing for it and claiming to
use the system one if found.
Change-Id: I250f0d7fc1e09398b3196895bdd529d366cd0a86
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Changes:
38528170ed Remove third_party/afl
e155b257b2 Enable minimal optimizations when debug-symbols are disabled
bcc2005d27 [Windows] Disable warning about mf.dll not being found on Windows
e8b33d7a5f [Backport] Fix for CVE-2017-5093
e284f716a4 [Backport] Fix for CVE-2017-5095
176a2fd0d1 [Backport] Fix for CVE-2017-5097
584afa4c02 [Backport] Fix for CVE-2017-5102
f0e009af02 [Backport] Fix for CVE-2017-5103
f3a498db5d [Backport] Fix for CVE-2017-5092 and CVE-2017-5099
1ef056b863 [Backport] Fix for CVE-2017-5107
Change-Id: I16d6721a5ac97aae4d22ea3244c897b67f2296ce
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Qt WebEngine implements a custom handler for multiple mouse clicks.
These tests are intended to test whether the mouse click events are
properly forwarded to the Chromium's RenderWidgetHost.
Custom mouse click test functions have been also added for the custom
mouse click handler.
Change-Id: Ifdc7d09f5e0f0f76c37e137e5743482bf3fb8abb
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since https is an internal scheme, it should be in this list of
internal schems.
This also prevents custom custom QWebEngineUrlSchemeHandlers to
register "https". Although it is debatable whether this is necessary,
https should be held to at least the same security standards as http,
which is also in that list.
Task-number: QTBUG-56894
Change-Id: I83d0130541fe3b5831bf29d429bad89a8fc5408c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
It was registered as FullScreenRequest in plugin.cpp,
not WebEngineFullScreenRequest.
Change-Id: Ib9eec950a0f54aad2dbc31e54d6d5c6a6838ac65
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
|\|
| |
| |
| |
| |
| | |
Includes sha1 bump of src/3rdparty to head of 58-based.
Change-Id: I37743c3979c1b6fb21f71eab7048e82f7aa5d78b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Chromium has since version 50 overridden the global font settings with
the settings of every web contents created, so we need to first set the
global settings in the web contents, to still follow system defaults.
Task-number: QTBUG-62146
Change-Id: If10847c81beda08ecb7bfdf7556e39b1d2989754
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-61796
Change-Id: I76d3fec780796dd0f300c54a1bccecc50f7270e0
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-61910
Change-Id: I894d1f180ba9952213b6f67a2445aa927dfd7e9b
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I398f88943e6f59781ad9227e2888cb25079b638c
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-61788
Change-Id: Ie6c29f3999ea795a37ea444f56e40ddc70ca1c03
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I4533e28a2c1a338abdb1d373a0a3bfe598a5edce
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The previous code tried to find out whether a user has set an
application proxy by checking the type of the applicationProxy.
This is wrong, because a system proxy will actually also change the
applicationProxy type.
Instead, we now rely on QNetworkProxyFactory::usesSystemConfiguration
to decide whether to use QtNetwork's application proxy, or Chromium's
logic for the system proxy. We also save the state of
QNetworkProxy::useSystemConfiguration to be able to track changes.
[ChangeLog][Networking] Fixed an issue where system proxy settings were
not picked up correctly.
Task-number: QTBUG-61910
Change-Id: I1d9af3f6006ba187266fe50c645f425a46632e41
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| |
| |
| |
| |
| | |
Change-Id: If4db465b9764be80df7fe953be63fc1a40b60d75
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Re-export missing C memory handling functions.
Task-number: QTBUG-61521
Change-Id: I8f94d93a70c81117735a9610e391a1e31c54f15a
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This command-line argument makes it possibly to block exposure of
internal IP addresses when WebRTC access hasn't been granted, using
--force-webrtc-ip-handling-policy=default_public_interface_only
Task-number: QTBUG-57505
Change-Id: I0cddd1b20e0814811894204cb31e0c463a75f7be
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unhandled key presses for printable keys were not received by the parent
widget anymore. This was a regression from 5.8.0.
The propagation is suppressed if NativeWebKeyboardEvent::skip_in_browser
is true.
Commit 4501b9d8 accidentally removed the wrong skip_in_browser
assignment.
Task-number: QTBUG-61621
Change-Id: I7eafa1fac5fb9a7edc4af2bc1aac21c106264713
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Pulls following changes:
1a14be1 Enable using gnu thin archives on Linux
296b240 Silence gcc -Waddress warnings in logging.h
fabd7e0 Fix building without git installed
1173dda Do not export c memory handling functions
25ceaa6 Do not launch zygote processes in single-process mode
721a4d1 Carry over user-agent override when opening new windows
Change-Id: If48223d76fbb35f1847e416a7f244e4b6ed85f33
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On Windows there is an issue that an OpenGL-backed fullscreen window
will prevent other top-level windows from appearing on top of it (for
example a select / combo box popup). This appears to be a limitation of
the Windows platform compositor (DWM).
The workaround is to call
QWindowsWindowFunctions::setHasBorderInFullScreen on the QWindow which
will show the fullscreen WebEngine view.
Task-number: QTBUG-61563
Change-Id: I5e0f08ef49de6119ef7910cec2b32ea267301c18
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In Chromium 56 the --touch-events switch controls both the availability
of the Touch Events API in JavaScript (presence of 'ontouchstart' in
'window' object), and whether touch events are dispatched at all.
In Chromium 57, the switch controls only the Touch Events API
availability, and touch events are always dispatched.
In Qt 5.9.0 which is based on Chromium 56, we always dispatched touch
events, ignored the value of --touch-events, and determined the
availability of the Touch Events API by checking if QTouchDevice lists
any touch screen devices (essentially Chromium's --touch-events=auto
option).
This commit changes the behavior of WebEngine to match that of Chromium
57, so that users can choose to enable or disable the Touch Events API
via the --touch-events switch, whereas the default will be 'auto' mode.
Touch events will always be dispatched as usual. Users that wish to
stop dispatching touch events can install an event filter on
WebEngine's view focus proxy.
Task-number: QTBUG-61045
Change-Id: I07404af3336619869aa87a90a1b426036548dd55
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure that a non-Core Profile OpenGL Context is created on the
Chromium side, so that sharing between the Qt global context and the
Chromium ones works.
Change-Id: Ifc5f39268395615fe50c8aa9467f833c0de233a8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously when a default QSurfaceFormat was set with an OpenGL Core
profile, all the contexts created on the Qt side would obey the profile,
but Chromium would still use the Compatibility profile for its contexts
leading to warnings when trying to create shared contexts.
The fix is to check which OpenGL profile is used in the Qt global
shared context, and pass that information along to Chromium.
Note that this works only on macOS for now, and the default non-Core
profile is used on other platforms, even though Core was requested.
Passing CoreProfile to Chromium on Windows and Linux currently leads
to crashes.
Task-number: QTBUG-60605
Change-Id: I27a77091923624d19ccc2019953a5b07f9282916
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I2f2ba754111e198298b7d1a595343fcd773e05e5
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This also adds documentation for QTWEBENGINE_DICTIONARY_PATH from my previous
change.
Change-Id: I85cd7476c095d5427e2db3a909449838a2362b81
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On a Linux system with an installed application, the only places dictionaries
are searched currently are /usr/bin/qtwebengine_dictionaries and
/usr/share/qt/qtwebengine_dictionaries (or similar, depending on the
distribution).
This adds an environment variable which makes it possible to customize the
location dictionaries are in (e.g. to something user-writable).
Documentation is added in the next commit, as it was duplicated in four
different locations and I cleaned it up a bit.
[ChangeLog] New QTWEBENGINE_DICTIONARIES_PATH environment variable to customize
the location for spell checking dictionaries.
Task-number: QTBUG-62236
Change-Id: Iefc90451c537656025abb785291fe55f6a82d50c
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Settings] Added setting to hide scrollbars.
Change-Id: I17695bb54a460621358345d303302b93eb342696
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Examples] Removed WebEngine Demo Browser example, which got
superseded by the improved WebEngine Widgets Simple Browser.
Task-number: QTBUG-59819
Change-Id: I214e6f5f3a946ed617a9f4d628d3259a69874ca1
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes the case when the text selection is triggered by JavaScript.
Text selection changes triggered by IME composition text replecement are
ignored. Test has been added for mouse selection clipboard: non-user
text selection should not update the clipboard.
Pulls in Chromium changes:
3deea95 Update TextSelection for non-user initiated events
Task-number: QTBUG-53134
Task-number: QTBUG-60381
Change-Id: Ib94f57a2aa61248fba75f595245fb388b9609b6c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
dfaf156 Remove third_party/afl
059d826 [Backport] Initialize RenderSandboxHostLinux in --no-zygote mode to not crash.
16b932b Add .gitignore for *.pyc
Task-number: QTBUG-61954
Change-Id: Ib10d09b8c0a771fb9b200a1947dbf9bb320cb1f2
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The method download(const QUrl &url, const QString &suggestedFileName)
already exists in WebContentsAdapter. It is now accessible through a
corresponding method in QWebEnginePage.
[ChangeLog][QtWebEngineWidgets][QWebEnginePage] New QWebEnginePage::download()
method to start custom downloads for a web page.
Task-number: QTBUG-55944
Change-Id: I185ec69c1668b377a129bc9fc09963278e52de1e
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Use QCoreApplication::sendEvent() instead of QQuickWindow::sendEvent() as
documentation suggests.
Change-Id: I3222d5ec41aeca80efbe06f705ee73e19ea37489
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-61969
Change-Id: I3367889041614a5e7489909dd38c8af638edf17c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Use feature permissions system instead of hard-coded dialog.
- Add QML test for getUserMedia() and extend existing widgets test.
Task-number: QTBUG-60832
Change-Id: I533bed5021b3b0ee199b8abc6ddbd516cbd14ff6
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|\ \ |
|
| |\|
| | |
| | |
| | | |
Change-Id: Idffd0c603f7925b8b9b037ce2d63cb13e964c20e
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When one searches for text on one page and then navigates away,
results for the search-term are also highlighted on the new page.
To stop this from happening, we now call adapter->stopFinding()
when we navigate away from a page.
Task-number: QTBUG-61506
Change-Id: I09e064d7788b12eae0a67c01e4f5872d94924617
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|