"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>
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>
The coreplugin/id.h header is kept for downstream for now.
Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Adapt the code to deprecated usage of map as a multi map,
hence all cases replaced by QMultiMap.
Change-Id: I2d480467cd6e91d3e880555e6a21058dec056b3f
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
Adds a button in the tool bar for the help widget.
If the help widget is currently the target for context help, the button
is "checked", and pressing it opens a menu with all the options.
If the help widget is currently not the target for context help, the
button is "unchecked" and pressing it makes the help widget the target
for context help.
The menu can in all cases be opened with a long button press.
Fixes: QTCREATORBUG-17667
Change-Id: I748e18f36ebde03eaa779557dd09f7a2bc0bcb2d
Reviewed-by: David Schulz <david.schulz@qt.io>
Qt Creator was syncing the current page in Help mode to the page shown
in the side-by-side view in edit mode.
This doesn't really make sense because context is completely lost.
Instead provide the explicit option to open a help page in edit mode,
also from the external help window.
Fixes: QTCREATORBUG-19198
Change-Id: I00698bb431d5c116dd1e0e1cbdc5fbd7421ac267
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Which are relevant now that external windows support multiple pages.
Change-Id: Ibc748e9e0582c8d54264af535c32aa2702f91631
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
It's owned by the HelpWidget now, and should be accessed through that.
Task-number: QTCREATORBUG-20558
Change-Id: I99118bb966922e6b4d356cf892d7604365357785
Reviewed-by: hjk <hjk@qt.io>
Add "Reload" menu item, which re-creates the help viewer with the
current backend.
Change-Id: I979cb9cdf5ae5635f4d028dc41d71ab71ce80248
Reviewed-by: David Schulz <david.schulz@qt.io>
For the help mode, the help viewer pages were managed both by the
OpenPagesModel and the HelpWidget, and needed manual keeping in sync.
Instead make the model just an aspect of the HelpWidget, manage
creation/deletion of pages via the HelpWidget, and use the model only
for the pure MVC API purposes.
Task-number: QTCREATORBUG-20558
Change-Id: Ib7d6f2561239b0d5f3328dfd30c84718f81af0a1
Reviewed-by: David Schulz <david.schulz@qt.io>
..and use it in the Help plugin to open online help.
Change-Id: Ic84c63257a08b3c2ac76bedc0db04f297f695291
Reviewed-by: Tasuku Suzuki <tasuku.suzuki@qbc.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Mainly to get rid of the QProcess::finished deprecation warning.
Also adjust coding style in the surrounding connects when needed.
Change-Id: I12f9b248c7974b892c4a069356e578e80f8c59e9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The help widget doesn't need to resolve the external help viewer
instance manually, we have an entrypoint for that already.
Change-Id: I6875c434428baac3f1883813207cf318d7d3dc09
Reviewed-by: David Schulz <david.schulz@qt.io>
HelpWidgets that are created to be shown in an external window, had
two different places where they were deleted:
1) When the widget was closed (due to Qt::WA_DeleteOnClose)
2) In HelpPlugin::aboutToShutdown via manual delete call
In certain circumstances (when the WebEngine backend was used)
this caused a double delete. Specifically, after opening an external
help window, and closing the MainWindow, the application did not quit
due to QTBUG-62596.
Now if the help window were left open, and the application was quit
via the macOS Dock, this caused a crash.
When the application quits, it calls the HelpPlugin::aboutToShutdown,
which deletes the HelpWidget. This in turn destroys the WebEngine
view, which destroys the underlying QQuickWidget, which destroys
a QQuickRenderControl, which calls
QQuickRenderControlPrivate::windowDestroyed, which handles all
posted QEvent::DeferredDelete events, which in turn triggers the
deletion of the same HelpWidget due to the
Qt::WA_DeleteOnClose attribute.
The solution is to remove the Qt::WA_DeleteOnClose attribute, and only
delete the external HelpWidget on shutdown, and not on CloseEvent.
Task-number: QTBUG-63945
Task-number: QTCREATORBUG-19582
Change-Id: I5b73ff7fe52e7e1259a8aa98c97c9dbedd5e3c20
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
When using locator in the external help window, open help pages or show
the topic chooser in the external help window, not the main window.
Change-Id: I792223147f1eb00addafb2618017536c126c71dd
Reviewed-by: David Schulz <david.schulz@qt.io>
That centralizes all the focus setting, raising of windows, etc. This
was for example already done wrong when opening links in help mode and
external window.
Change-Id: I5036b5caa751d1f36dc442078624a31fb8f573ee
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
And move the "Show Sidebar" button into the status bar that we
need now anyhow.
Change-Id: I24bfa0991cbdcdba4d1a8cd6cbacde28d459972d
Reviewed-by: David Schulz <david.schulz@qt.io>
The variant in Bookmarks was left aligned, which is obsolete due to the
textmark overview tooltip. Bookmarks and Help now use the same icon which
is in Utils.
Change-Id: I0f7899de2f7a8803aa8493659d2991ac13739144
Reviewed-by: David Schulz <david.schulz@qt.io>
Context help should have the icon that closes a "panel to the right".
Change-Id: I954171c4f2d604a23bf9c1e6f341de0f5cc87ace
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This way we can use them from libraries, not only from plugins.
Change-Id: Ic35cfd5f04d638d87606bf272b2c00ded1267c1b
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
They are needed in the timeline view.
The change in qtcreator-project.qdocconf makes sure
that qdoc still finds the referenced icons.
Change-Id: I812fba8e57d06d93efc00c295467c83c08cd1784
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
Similar to QTC_CHECK, but has the boolean result of the condition as
value. Use it in the form
if (QTC_GUARD(condition)) { ... }
Replace some occurrences of
QTC_CHECK(condition)
if (condition) { .... }
Change-Id: I8eea02f869eb7a183dfbf4810dace48097880519
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>