| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
License files are organized under LICENSES directory.
Pick-to: 6.4
Task-number: QTBUG-67283
Change-Id: I869ffda1080e283f231eb0dc4477b260f2054d99
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
| |
It is redundant with item->m_widgetDelegate, once a few inconsistencies
were ironed out.
Pick-to: 6.4
Change-Id: I18a90cc195e5854d8421aa8c0951872322b78d28
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
|
|
|
| |
Remove two indirect values we can calculate without tracking, and
clean up naming in webenginequick.
Pick-to: 6.4
Change-Id: Ibfab7013f314b428dca707036fe5f027558dff72
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Make sure clang-format doesn't reformat SPDX-License-Identifier
(see https://code.qt.io/cgit/qt/qt5.git/commit/?id=6a4dab1134b10b432f69819018fef2044520e0ca )
- Fix C++ version to C++17
(see https://code.qt.io/cgit/qt/qt5.git/commit/?id=fe9efd359498dc342257908f6c9c2183e95fc05d )
- Update _clang_format to avoid adding a space in list-initialization
(see https://code.qt.io/cgit/qt/qt5.git/commit/?id=fc7251edfaf782f184030a5787fe3a88feef6083 )
- Disable indentation for preprocessing directives.
- Fix indentation of UIDelegatasManager macros and prevent formatting
them.
Pick-to: 6.4
Change-Id: Ieb59c993ee715430ebc2830828e488b9f62ec727
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
| |
Same check is two lines below.
Pick-to: 6.4 6.3
Change-Id: If9a76ec29f7667d940f2cff231bb30facd621908
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
|
|
|
|
|
|
| |
Pick-to: 6.4 6.3
Task-number: QTBUG-102633
Change-Id: I412c10cea98d87ffbbac40baa032261dca12dbf0
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
|
|
|
|
|
|
|
|
|
| |
clang-cl 14 does not support /MACHINE and /PDB flags for linking.
Use lld-link instead.
Pick-to: 6.4
Change-Id: I018a18af494f115be252b65b24a1386f57af28bd
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
| |
We must allow file access in the thread as it is off by default
Pick-to: 6.4
Change-Id: Ia73a457c29599b51bd284621644a0088992b6737
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
With the native dialog, there were either problems with the modality
when using it asynchronously or with the life cycle when using it
synchronously. Not using the native dialog avoids these problems.
Pick-to: 6.4 6.3
Task-number: QTBUG-102099
Change-Id: Icb9a9afda48c47558b8e8ecb6d89adc0961d5063
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The datalist uses Chromium's autofill component to fetch and filter
predefined options in the list and autocomplete the field with the
selected option. Autofill component is added to build and bound to
WebEngine. All the unnecessary autofill features for datalist are
supposed to be disabled: payment/credit card support, password manager,
save profile data, store suggestions in database etc.
Custom popups for the dropdown are implemented for Widget and Quick.
Scrolling in dropdown is not implemented in this change.
Fixes: QTBUG-54433
Pick-to: 6.4
Change-Id: I155d02d6dbc9d88fbca4bc5f55b76c19d0ba7a9d
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The default download location has moved again, but we can now
also use firefox CDMs.
Pick-to: 6.4 6.3
Task-number: QTBUG-104238
Change-Id: I7ee581fa63e50df970acb31ea6d3f67d332aef59
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
|
|
|
| |
Disable chromium's uses of zoom for device scale factors.
Pick-to: 6.4 6.3
Fixes: QTBUG-101769
Change-Id: I9f2ae7122b59f5fbf8ffcaf8a92940792f4860c9
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
|
|
|
| |
Can really only happen in QML on exit.
Pick-to: 6.3 6.4
Task-number: QTBUG-99445
Change-Id: I1a04d57b6c4c40ae264b5519d2e41c57bca79a61
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Submodule src/3rdparty 6559e00a3..88398c89a7b:
> Fix broken bundled zlib for cross compilation
> FIXUP: Fix url_utils for QtWebEngine
> Make sure we do not compile minizip from 3rdparty
> Trim down some dependencies of push messaging
Pick-to: 6.4
Change-Id: I3062f536fd144d00f72ea783ddcc56931a46a98f
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
| |
Try to match the types as best as we can, and handle the responses.
Pick-to: 6.4
Fixes: QTBUG-92932
Change-Id: I01bc85668d2540b79fd2a52796f99d05f161e8a5
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
| |
A widget created for an item in a viewless page, still needs to be
tracked as a widget.
Pick-to: 6.4
Change-Id: I9d571916b28b1cb2b8bd184d008255b9af105c33
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
|
|
|
|
|
| |
This is safer by ensuring we are checking for a feature that is defined.
For some reason, the openssl feature is a private feature, so we need
to include the private header to access it.
Pick-to: 6.4
Change-Id: Idf7f3baba33e5188f206f5be1b8a0bfd75e79d03
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This is adapting the Quick code for shared use with widgets,
and allows us to use it from QWebEnginePage.
Pick-to: 6.4
Fixes: QTBUG-96377
Change-Id: I3f09c1a949eff86d80fbe6c513dc66e3f9f2f611
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
|
| |
If no 'printing' we should also disable 'cups' otherwise
it asserts in gn. Moreover we use cups on macos and linux only.
Pick-to: 6.3
Change-Id: Id0c9b34746204e985032d7c42868aeb8567b8e8f
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
User can override with env variable AR archiver for
cross compilation, pass archiver from cmake for gn.
Fixes: QTBUG-103578
Pick-to: 6.3 6.2
Change-Id: I055d7403ecb829f4b1bbe57ec27c0bca7323484c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
| |
If gn is found in install path, still install it for qt host
otherwise in case of reconfigure we never install.
Pick-to: 6.3 6.2
Change-Id: I154e2ead386d52006e2647297b6148170b8a85cb
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
| |
Pick-to: 6.4 6.3 6.3.1
Task-number: QTBUG-104057
Change-Id: I4d6335acf646e574c6f7df6747a0ed3198f206d1
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
| |
Fixes: QTBUG-103735
Pick-to: 6.3 6.4
Change-Id: Iee0c09cde16a825097b7c1c014655476989922c0
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
| |
Missing parameter types from QtWebChannel.
Change-Id: Idc0807658384b4af455d5c84ac91db877cd0e70b
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
QML docs were already in place since
303c25e79ab12d5d48523aa890f2091e98d3b560 and
ccbd6fbdbe071f42e1c060ca579786758701f358; but QPdfBookmarkModel existed
since 398880564621b06a79a4ba245baf350022ad438a
(5ccb928983e8ff5e51989fab60ea413a5b418f29 in the qtpdf repo).
Change-Id: Id3e91b4e98e25cf035868e55a22cf69262ee5afc
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
| |
Pick-to: 6.3
Task-number: QTBUG-81560
Change-Id: Ib0485618a1d5cdafcad928f0b05996f242ef9bd4
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
We shipped qtpdf for 5.15 without v8.
Now it disables all the extra xfa features by default.
Fixes: QTBUG-102394
Fixes: QTBUG-102951
Pick-to: 6.3 6.2
Change-Id: Icd4784037f6db9b489d691c15d95e72563c16356
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
- gesturePolicy must be set to take an exclusive grab, to avoid letting
events propagate to another TapHandler in TableView
- behavior was incorrect on the touchscreen
- fixed doc warnings about the undocumented link arguments
Change-Id: Ic438383b6b6d67936ce2b88b84ef131f41e0d2fb
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This simplifies PdfStyle somewhat. PdfLinkDelegate could still be
replaced or augmented via file selectors, but we don't expect to
need to, since link delegates are already non-visual.
[ChangeLog][QtPDF] A PdfLinkDelegate will now be instantiated on top of
each hyperlink in the PdfMultiPageView, PdfScrollablePageView and
PdfPageView components, for event handling and to provide tapped() and
contextMenuRequested() signals. It is non-visual by default, but can be
customized, for example to draw underlines under hyperlinks if the PDF
documents are not expected to have them already.
Change-Id: Ib3726e7220a0c3858db564ca8d53a04625a11950
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
| |
Roles are not abbreviated in general; this doesn't need to be either.
Change-Id: I55a6fcbc4818d7363f1184b660948da4943c110b
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We want to call PdfPageNavigator.jump(link) when a link is clicked;
therefore PdfLinkModel needs to provide this object; therefore it makes
sense to store the links as QPdfLink instances, and get rid of the
redundant internal Link object type. But QPdfLink did not have storage
for a QUrl until now. The textStart and textCharCount fields sounded
useful, but in practice were set and not used.
QPdfLink gains toString() and copyToClipboard() methods.
Also removed some unused cruft in qquickpdflinkmodel.
[ChangeLog][QtPDF] PdfLinkModel now provides a QPdfLink object for each
link. QPdfLink now contains everything necessary to render delegates for
links and search results, and handle clicking links; and there is a
copyToClipboard() method for use in context menus, which will copy
the text returned trom toString(), which is also invokable.
Change-Id: Ifa5abe6df8f8d6f9ef98971044c26691ec4b9a36
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PdfSearchModel.currentResult is now the index within the whole list
of search results, rather than starting over from 0 on each page.
This simplifies some code.
The way that PdfMultiPageView uses PdfSearchModel, the currentPage
property is read-only: it tells the page of currentResult (which we need
in the view, because each page has the ability to show a
current-search-result highlight shape, but only one page actually needs
to show it). The controls in a viewer to iterate search results (up and
down arrows in the footer) simply increment and derement currentResult;
the currentPage property gets updated to tell the view which page
currently holds currentResult; and the ListView highlight follows along
in the sidebar too, because ListView.currentIndex is now bound to
searchModel.currentResult.
But in PdfScrollablePageView, we still need to bind the currentPage
property, to get the currentPageBoundingPolygons property updated
when we switch pages. Since that viewer only sees one page at a
time, it's much more declarative to do it that way, rather than
calling the invokable boundingPolygonsOnPage(int) function.
Bindings get updated on their own; whereas in PdfMultiPageView
it's a bit inelegant that we need to call boundingPolygonsOnPage()
repeatedly, at the right times so that the highlights are never
shown in the wrong places at the wrong time. It could be avoided
if we had a separate per-page model object to filter the results
from the main PdfSearchModel; but that would add significant API
complexity, and perhaps be too confusing for anyone who tries to
re-implement a QML-based viewer component.
The current search result highlight now stays on the page where
the user left it: scrolling manually to another page will no
longer choose a current result on the new page, as it did before.
This is more consistent with typical applications.
A currentResultLink property is added, to make it easy to call
PdfPageNavigator.jump(link), thus passing along the QPdfLink.rectangles.
The same link object gets re-emitted in the PdfPageNavigator.jumped
signal to tell the view to scroll in such a way as to get those
rectangles visible in the viewport, via TableView.positionViewAtCell().
There are a couple of drive-by fixes:
QQuickPdfSearchModel::documentChanged() doesn't need to be declared,
because we are using the signal inherited from QPdfSearchModel.
And const-correctness is improved in the implementation of
boundingPolygonsOnPage().
[ChangeLog][QtPDF] PdfSearchModel.currentResult is now the result index
within the whole set of search results rather than on currentPage;
and changing currentPage no longer makes currentResult change.
In the views, this means the current highlighted search result stays
on the same page even when the user views a different page.
Change-Id: I96957f50e703f62101b3d3c708ff5f27b162cd8d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
One reason for this is to use the new
tableView.positionViewAtCell(.., TableView.Contain, offset, rect) to do
less scrolling when iterating search results. Now in that case, the
QPdfLink object contains correct rectangles, so that we can scale the
first one and pass it directly to positionViewAtCell().
When clicking a hyperlink, the destination is a point rather than a
rectangle; but positionViewAtCell with a subRect works better than
calling it with just an offset, so we construct a small rectangle for
that purpose. It's important that the QPdfLink object emitted in the
jumped() signal must not contain any rectangles in this case, so that we
can distinguish a hyperlink destination from a search-result
destination. The QPdfLink object from PdfLinkModel has its own
rectangle, but that's the place where the user clicks. When clicked,
the view calls pageNavigator.jump(page, location, zoom), rather
than the jump(QPdfLink) overload, so that rectangle is not passed along.
In an onJumped() handler, we expect the rectangles to be the
destination, if present; otherwise we fall back to using the location
property, which is always the destination, never the source.
In both cases, we need to grow the destination rectangle by
jumpLocationMargin, because the offset argument to positionViewAtCell()
is an offset, not a margin. But since the rectangle needs to be scaled
from points to pixels anyway (according to the current renderScale),
it's not much more trouble to add the margin. It looks better to avoid
having a search result and its highlight rectangle banging up against
the corner of the viewport: the margin lets the user see a bit of
context on the page, and the highlight looks more distinct by being
spaced out away from the edge. And since the margin gets added to
the rectangle's edges, it makes more sense to use the (qreal) point type
rather than vector2d.
To make it possible to emit a QPdfLink object and access its properties
in QML, it's now registered as a QML type.
Fixes: QTBUG-102740
Change-Id: I74ccd11a106c5e49a0ce94eef9cf2d50992923b4
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
| |
It was a suggestion during API review.
Change-Id: I54425bbebb90b05a2cee1cb00d51c4d61edb8784
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
| |
If the caller doesn't want to change it, it's easier to omit it rather
than remembering that 0 is a special value.
Change-Id: I851f678941e5144a9dea306fddba59fd15ed9939
Reviewed-by: Doris Verria <doris.verria@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This API is available for both C++ and QML.
The pageModel makes it easier to populate item-views with per-page
information, such as thumbnails labeled with page labels.
Fixes: QTBUG-102271
Change-Id: I70df481b378efed0327e7bb89a63c7669daecc70
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
| |
This fixes a clazy warning.
Change-Id: I2f6d4dc394fbf81d5acbd4b013e935fe50300e0e
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
| |
Amends 038b361c452feb41106867f20b2484c1f384b0d1
Change-Id: I417822f27d5a57749754bf043594aad8a220b63f
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
| |
It is in fact the size in points (1/72 of an inch), so we might as well
be consistent about the naming between QML and C++ APIs.
Change-Id: I8f8b05eeecc635a4d105558959834ae0e15add81
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
| |
Faster to build and gives smaller binaries
Fixes: QTBUG-103291
Change-Id: Iab52995e03c13a4c5b185750028c449a19d98d93
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
|
|
|
|
|
|
|
| |
It was just an alias for currentFrame.
Change-Id: Ib16f579b1905cf5fe43496553ebde054d474a7c7
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
| |
Query PDF settings from view-level WebEngineSettings instead of profile.
Change-Id: I4ee7c99d6757d5341b1a4d47251228c1c46f99b7
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This might reduce some confusion about the fact that the back/forward
"stack" isn't strictly a stack in the data structure sense: it's more
like QUndoStack. It causes a QML source incompatibility relative to
Qt 5, but keeps the C++ class name the same as it has been in QtPdf for
a long time. Amends 3ad445f9f24a9d3f259ed1781460a63346a728e4
[ChangeLog][QtPDF] The PdfNavigationStack QML type has been renamed to
PdfPageNavigator, matching the C++ type QPdfPageNavigator. These
remember navigation history within a document, and are helpful to
implement back/forward buttons similar to those on a web browser
in both Qt Quick and widget-based viewer applications.
Change-Id: Id8dc17aa416bb7064b1f0f300a47c07c83b7f47e
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Allow web pages to safely access the local file system
by exposing a permission API. Permissions are stored in-memory.
The built-in access rules are the same as the behavior of Chrome:
JS can't request access to system libraries, sensitive directories
and the application itself.
Task-number: QTBUG-97829
Change-Id: Ic675422cafbad5a90243b4fa8f0749c46afa192c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
|
| |
Specifically allow user initiated navigation of the mainframe.
Pick-to: 6.3 6.2
Fixes: QTBUG-103778
Change-Id: I4e3d6b4fb606bd0c3cf66e090fba3c97c8c535b4
Reviewed-by: Michal Klocek <michal.klocek@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog][QtPDF] The QPdf namespace is removed.
Change-Id: I9c760c9187760a3a8356e90113ca1ab3535bed95
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
| |
They both return the same title string, but we don't make the enum values
identical, because roleNames() needs to have unique mappings.
Change-Id: I6d19ed2e5a3f2f5ea83d8b542b3042e91c37c497
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog][QtPDF] All enums are replaced with enum classes.
Change-Id: I41063de084a23db657a24805ceaf22881f25c990
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Bookmarks are naturally a tree. It's unusual for a QAIM to have the
internal ability to flatten a tree to a list, and we don't need it in
any of our viewers or examples. This patch could be reverted if it turns
out that anybody misses this feature; or else flattening could be done
in a proxy model.
Change-Id: I5cf60a39cb699932cc7c61e33a5129323d648344
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
| |
Change-Id: I6335c1b13ef50dc04d50bd1ce66b3524e2615b3f
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|