Commit Graph

1086 Commits

Author SHA1 Message Date
Alessandro Portale
bc158cdaee Help: Avoid extra 1-pixel frame in Help widgets
For QTextBrowser and QLiteHtmlWidget based viewers

Change-Id: I0e8003b555b15e8eca239c59e657d9cf417f2d58
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-03-25 11:19:13 +00:00
Alessandro Portale
93fbd5be02 Remove dead code "< QT_VERSION_CHECK(5, 14, 0)"
Qt Creator required Qt 5.14 or higher. Let's removed the #idef-ed code
for building against lower Qt versions.

Add a comment in porting.h where we still need such code for sdktool.

Change-Id: Ib330275208eec4a2f285b4b9f480530c171f538a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-03-18 19:12:39 +00:00
Eike Ziller
eaa4592b63 Merge remote-tracking branch 'origin/4.14' into 4.15
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri

Change-Id: I892ea0c3b42f61b9cd24fa5508ec181d8d245d29
2021-03-01 09:49:45 +01:00
Miikka Heikkinen
d41bc944cc Help: Fix crash with previous/next document in help mode
"Previous/next Open Document in History" crashed in help mode when only
a single page is open.
Disable the actions in this case, and add a guard that prevents setting
the current page to an invalid index.

Fixes: QDS-3743
Change-Id: I569292d8c348269dd12d2ebb089c03173cbd4bc2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-02-26 09:50:15 +00:00
Eike Ziller
a0500f5b9a Use qlitehtml from separate repository
qlitehtml moved into its own playground repository,
get it from there instead of carrying our copy around.

Change-Id: I0e267344e5ccf95f579e4fb239e6789d177d7b78
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2021-02-15 16:31:49 +00:00
Eike Ziller
cb96b91dd4 Refactor Locator filter settings saving
Unify setting saving. Do not write settings that stay at the default, so
defaults could change and take effect.

For this we explicitly differentiate between default and user settings.
Make QJsonDocument the basis for saving settings, because QDataStream
cannot really handle structured data where parts could be missing.

Write locator settings to a different settings group, so we do not
destroy reading older settings from older Qt Creator versions.

Task-number: QTCREATORBUG-24762
Change-Id: I5909e2d79313f6fc26159bb644fdfb43781b6c38
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-02-04 07:33:10 +00:00
Jarek Kobus
27334cbe6d Compile fix in case of when HELP_NEW_FILTER_ENGINE is undefined
Amends 8d06e66c49

Change-Id: Ia7a81ed754c9f5cad9d9d51a89b9e1e1a7eddd03
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-02-01 13:05:15 +00:00
Jarek Kobus
8d06e66c49 HelpIndexFilter: use atomic_bool for the m_needsUpdate field
This will simplify the code, no need for mutex anymore.

Change-Id: I85e0cad7ed3b3288ae1eec03f7504590293c4ea5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-02-01 10:35:58 +00:00
Jarek Kobus
700da528b8 Remove unused viewerFont() method
Change-Id: I3da752d7f96162b7cd10e74667a6a3665cb12e14
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-01-19 16:24:16 +00:00
Jarek Kobus
0fe8089214 Force repaint of litehtml help viewer when font changes
Trigger refresh_styles() and parse_styles() on font change.

Change-Id: I3ea667b2d9fb382681ffad2279823500e9e20491
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-01-19 16:24:11 +00:00
Jarek Kobus
291f46386f Add "Zoom" setting to the Help font settings
If the scrollWheelZooming is enabled, this
setting will get updated when using scroll wheel.
It will also be used when zooming in/out
by using keyboard shortcuts.

Fixes: QTCREATORBUG-25109
Fixes: QTCREATORBUG-25230
Fixes: QTCREATORBUG-23731
Change-Id: I9d22632b4c034ce236fa39dba074df4a2746ff84
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-01-19 16:24:04 +00:00
Tim Jenssen
b801a9339d Merge remote-tracking branch 'origin/4.14'
Change-Id: I70504e096be620434f38cd990c593950da8b24ba
2021-01-07 14:23:46 +00:00
Eike Ziller
b82d51ad69 cmake build: Make it easier to build against system litehtml
By first checking for it in the system, then if the internal copy
is checked out.

Fixes: QTCREATORBUG-25144
Change-Id: I839591cc8e311948a21685384de574e7330a6ee5
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2021-01-07 09:45:18 +00:00
Eike Ziller
d95e1f940a Merge remote-tracking branch 'origin/4.14'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri

Change-Id: I5b8d93f2f08b62626c3f3447728c64d198b601ff
2021-01-04 09:09:21 +01:00
Eike Ziller
121e563052 Update litehtml to latest master
Adds support for ordered lists.

Change-Id: I467689cdad08df297b20fbffe02d217d117ed56f
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-12-22 14:19:49 +00:00
Eike Ziller
5572bc7220 Merge remote-tracking branch 'origin/4.14'
Change-Id: Ie52e046f8e280e8c39f0cc5e9e710b4f885010a6
2020-12-17 13:10:44 +01:00
Eike Ziller
d68603481d Revert "Help: Update to head of litehtml"
Breaks build on MSVC.
This reverts commit e0661e0630.

Change-Id: Id6e6c1b83ad1dbbe6cad8b555d66fea2e76e9c7d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-12-16 08:35:09 +00:00
Eike Ziller
f239fa8676 Fix build-time location of QLiteHtml
QtCreatorAPI sets the output location relative to the project
which makes sense for external projects, but not so much for
internal sub-projects.

In this specific case it cannot be built as a standalone project
at all anymore, since we use add_qtc_library but don't force
inclusion of QtCreatorAPI, so just remove the project() and related
setup.
When QLiteHtml is moved to an actual separate project and repository
this must be reworked anyhow.

Change-Id: I182de09619c2073aa3e1c9809c2251fd88b6bbd7
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-12-15 14:48:24 +00:00
Eike Ziller
f17bf14533 Help: Use settings->setValueWithDefault
Task-number: QTCREATORBUG-24762
Change-Id: Ia2f7c0834758097814dd6234a6f4fd656a3821b0
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-12-15 14:43:17 +00:00
Eike Ziller
e0661e0630 Help: Update to head of litehtml
This adds support for ordered lists.

Change-Id: I6ede0cc170e25c410ec440690f1f873fb24c490e
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-12-15 11:22:30 +00:00
Eike Ziller
41b73594ad Add API for saving settings with default value
We should never actually write default values into the settings, because

- if the default value changes in a later Qt Creator version, the new
  default should automatically take effect if the user didn't change the
  value
- it senselessly grows the settings file

Add a QtcSettings class that extends QSettings by a
"setValueWithDefault" method, which does not write default values to the
settings, and actually removes the settingskey if the user switches back
to the default.

Use it at the places where we already do this manually.

Task-number: QTCREATORBUG-24762
Change-Id: Ia76414cb21e8521f3aeed1e37b43ae4fb3393ea3
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-12-04 08:25:17 +00:00
Eike Ziller
8d67dd57e8 Merge remote-tracking branch 'origin/4.14'
Change-Id: I5e138bb7883c0436fee14ca6af20e99396676af1
2020-11-20 13:00:37 +01:00
Eike Ziller
f38d7910fe Help: Make litehtml the default engine above all
If available prefer litehtml, even over QtWebEngine. But make the
default compile-time configurable with a CMake option
DEFAULT_HELPVIEWER_BACKEND.

Amends 5e73215a0a

Change-Id: I5bfadd3ec1dc21f3a94d04d0da51783223908e6d
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2020-11-20 10:12:00 +00:00
Eike Ziller
d981485a89 Help: Remove Qt version check
We are requiring Qt 5.14 now

Change-Id: I2deb97dec4800ab10c25f7f6223a8c440a3a9c3f
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2020-11-20 09:32:27 +00:00
Eike Ziller
5ca70bdcb3 Merge remote-tracking branch 'origin/4.14'
Change-Id: Iea84f23cf394de13e99a9ed777c8c113e4eff473
2020-11-19 15:38:13 +01:00
Alessandro Portale
b2a766a79a Don't access static functions/fields via instance
Courtesy of readability-static-accessed-through-instance

Change-Id: I71f54244f1e091315dac2943d9e1bfad6efa56a9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2020-11-19 08:42:14 +00:00
Jarek Kobus
6d5e302157 Use typed syntax in calls to QMetaObject::invokeMethod
We do it wherever possible. Some places can't be fixed
since they still rely on dynamic introspection
(mainly QQuickItem cases).

Change-Id: Ia00b4a04d8b995c9a43b7bf2dbe76a60364bb8ca
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-11-16 13:45:02 +00:00
Jarek Kobus
2b414508b7 Remove unneeded includes
Change-Id: I67fee9303509b7080e123a2a5826e200ce498ce2
Reviewed-by: hjk <hjk@qt.io>
2020-11-12 12:14:11 +00:00
Eike Ziller
8f4a9d8e9b litehtml: Add method for retrieving current html content
For squish testing.

Fixes: QTCREATORBUG-24903
Change-Id: Id9b21c6be306db9b3ed0e70c23923f39fae2d210
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
2020-11-10 10:34:19 +00:00
Jarek Kobus
0dcdb43ddb Fix missing documentation when built with Qt 6
The default value for readOnly property of QHelpEngineCore
changed to true in Qt 6. We need to set it to false by hand.

Task-number: QTBUG-87783
Change-Id: I6b0d4f043797463b3437a6aef673eba8e1b9c3ad
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-11-03 12:10:49 +00:00
Eike Ziller
5e67bc5055 Fix build with Qt6
Add missing includes for "incomplete type" issues.
Remove usage of QDesktopWidget.
Don't compile native WebKit help backend (missing native widget integration).
Add SvgWidget dependency.

Task-number: QTCREATORBUG-24098
Change-Id: I1b3afb54d385940ff283824870fa7454866212a4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-10-26 08:44:21 +00:00
Robert Loehning
89d36b418a Make Help mode Squish-testable again
Change-Id: I09bcdb63c44c4728cce63d5a5c2b29bf9fc96ac1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-22 12:44:54 +00:00
hjk
ce2c18dd68 Help: Some Qt 6
Change-Id: I30553e491e5dfc119ac1527c8a2419b6d18647fc
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-08 15:39:10 +00:00
hjk
852985b2ca Help: Sprinkle some QLatin1String
Change-Id: I395742c2255b50c0a9017f86c7e7dca5a8535542
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-08 13:32:21 +00:00
hjk
72a6038f7a Help: Fix compilation on Linux
QPalette was only declared.

Change-Id: I24fa8eca4fd9fdae4be3d35ee2f392fa606fc9ab
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-02 08:09:35 +00:00
Eike Ziller
da8db0f24d QLitehtml: Make container_qpainter usable without litehtml internals
We use it elsewhere to "paint" html to a printer (for generating a PDF).
It is much easier if we don't need to pull litehtml internals into that.

Change-Id: I447fa5442f02a6b5e84524f82089513f0c569939
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-10-02 07:32:03 +00:00
Eike Ziller
5e73215a0a Help: Prefer litehtml viewer backend over QTextbrowser
Fixes: QTCREATORBUG-24661
Change-Id: I027da9bffbebcbef600150ca9d842c234fe9de8d
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2020-10-01 13:31:03 +00:00
Christian Stenger
822aa7b242 Help: Fix linking on Windows
Amends bf536a0441.

Change-Id: Iad9172f5062640ec84debfb2ba3c307fe765c770
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-09-23 16:02:38 +00:00
Eike Ziller
bf536a0441 Make qlitehtml a dynamic library
So it can be re-used by other plugins.

Fixes: QTCREATORBUG-24330
Change-Id: Ic9ff865f96c01a37584b02d1125717a307cc79ed
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-09-23 06:28:04 +00:00
Eike Ziller
d8c3487037 Help: Fix compilation with Qt6
Adapt to size type and QFont::weight() changes.

Task-number: QTCREATORBUG-24098
Change-Id: I580601433c9f81b7675b806d5eb2c55ee3060011
Reviewed-by: hjk <hjk@qt.io>
2020-09-08 13:45:53 +00:00
Eike Ziller
6477a07654 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/clangtools/virtualfilesystemoverlay.h
	src/plugins/mesonprojectmanager/project/buildoptions/mesonbuildstepconfigwidget.ui
	src/plugins/qmldesigner/designercore/model/abstractview.cpp

Change-Id: I5013bd8fdd28d79cdea74380bec01d4c106adfaf
2020-08-31 14:49:19 +02:00
hjk
30c55c063d Help/Android: Compile with namespaced Qt
Task-number: QTCREATORBUG-24544
Change-Id: Id06cc623b8a0bfe365dda928cda52a97321732b2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-08-28 07:59:15 +00:00
hjk
4314795992 Help: Replace Qt::MidButton by Qt::MiddleButton
Task-number: QTCREATORBUG-24098
Change-Id: I46e06ec1402be345ebd1e4543ed67a726caa42a7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-08-28 05:50:50 +00:00
hjk
e62044aa29 Use Qt::SkipEmptyParts unconditionally
Squashes a warning in qmldebugtranslationwidget and is safe to use
with Qt 5.14.

Change-Id: I1912e7379a570a17fbf057b87390a63d524ced49
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-08-14 06:41:46 +00:00
Eike Ziller
3944162039 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/cmakeprojectmanager/cmakebuildstep.cpp
	src/plugins/cmakeprojectmanager/cmakebuildstep.h
	tests/auto/debugger/tst_namedemangler.cpp
	tests/auto/qml/codemodel/check/tst_check.cpp

Change-Id: Iefd5f71c03c0078513b76a92af764a4fb22ee4c2
2020-08-10 15:56:54 +02:00
hjk
086a4be734 More Qt6 porting
Change-Id: I96bef1772149eb718e250563c65bf5da7259d9d6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-22 15:06:54 +00:00
hjk
2d78bd4b19 Some Qt6 porting
- new ambiguous overloads for mapToGlobal
- some functions now return qsizetype instead of int

Task-number: QTCREATORBUG-24098
Change-Id: I0020e5689e093653e9e0e6f0d6263720bc2e003b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-22 10:22:56 +00:00
hjk
43b658e9e7 Utils: Drop Utils::SkipEmptyParts again
We require Qt 5.14 nowadays.

Change-Id: Iff245257d3cb19207007c0445ee13814e66152dd
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-21 12:42:27 +00:00
Christian Stenger
a3a2c2f691 Help: Fix warning
The operator is not static otherwise it would be
just an unused function.

Change-Id: I01b8764adfdf8908d07362357211d64b55ea941e
Reviewed-by: hjk <hjk@qt.io>
2020-07-20 10:24:56 +00:00
hjk
65838ae510 Help: Use QMultiHash in docsettingspage
Task-number: QTCREATORBUG-24098
Change-Id: I0f9f04182dfc3608a0b77231d5a546e6e68f2a44
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-16 13:51:51 +00:00