Add menus to the back and forward buttons in the editor tool bar, that
show history the history. Limited to one entry per consecutive same file
path, because we currently don't have the means to visually distinguish
multiple locations in the same file.
Fixes: QTCREATORBUG-347
Change-Id: I69c5cfaf4c12ec8b59f98eb692c799babca0458a
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Telling the EditorManager to update the navigation history only really
makes sense in the context of IEditor, not if the widget is used in some
other context.
For this reason the code in the text editor widget also had a check to
only add history in case the current editor's widget is the text editor
widget - which does not work in case of e.g. the Markdown editor or the
Compiler Explorer. Signaling the request for adding navigation points to
the IEditor gives these other editors that integrate text editor(s) a
chance to implement this too.
Change-Id: Id1bb3516519f48a3f4448ac226be21e52bb02b2b
Reviewed-by: David Schulz <david.schulz@qt.io>
When Ctrl+Clicking to follow symbols, the original location was added
twice to the history, once in the click handler, and once when the link
was opened in `TextEditorWidget::openLink`
Change-Id: I806165621d7ea229aa963b5b7d83c5327d8e7f14
Reviewed-by: David Schulz <david.schulz@qt.io>
It should use the macro expander if there is one.
Change-Id: I8fb7760f23305f4b243e784d38d44d9bef4c0065
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Lock avd file system watcher changes when executing create avd command.
Otherwise the avd file system watcher sends notifications during
create avd command execution and subsequent avd list command
doesn't report the device which is being added, yet.
Change-Id: I1a0123d1bf14cf76e3a90e7f19416eb634e9c4a6
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Make it possible to pass a list of a mixture of QStrings
and QStringLists for command line's "args" argument.
Change-Id: Iafe3249f074b9568537e72a80e46ec4ed143014a
Reviewed-by: hjk <hjk@qt.io>
This adds support for inheritance to the existing experimental
implementation in tests/manual/layoutbuilder/experimental
and gets rid of the tight coupling and qobject_casts in the
setter implementations. Plan is to use this (minus "bindings"
via *::Id / id()) for utils/layoutbuilder.{h,cpp} later.
The "binding" support via id() is still experimental, and in
its current version not really useful. A possible idea would
be to re-use the Tasking::Storage idea, but it's not quite
clear how to expose that "long distance" (i.e. across multiple,
unrelated top-level builders). However, this is not used in
in current uses of the "old" layoutbuilder, so this is not
blocking anything.
Some notes:
The *Interface hierarchy is not strictly needed, it could directly
act on things in the QObject hierarchy but would then need #includes
of all "buildable" classes, which can be avoided in the current
implementation. Besides, the indirection allows us to tweak and/or
add functionailty to the Qt classes in the indirecting code, that
does not necessarily have to match 1:1 to the underlyings Qt classes.
The std::function based callbacks are quite fat and not functionally
needed and could be dropped by "inlining" the relevant bits from
typical std::function implementations. However, these invariably seem
to end up calling functions through pointers to (ABI-compatible, but)
different types, which is for /user/ code formally undefined behavior
according to C++11 §5.2.10/6. To avoid a discussion whether doing
the same ourselves is tolerable or not, this uses std::function
and pays the price of the overhead.
Change-Id: I6d40c1bd48cf065fcf211eaff8d9a2298bca20eb
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
The new file is still too large, but these functions and data structures
are so horribly coupled that it will take an extra refactoring round to
split them up.
Change-Id: I421a3db6dfc74ea78a35d0ccf1a88d782d863b9a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
We decided to stick with the json based templates for now.
Instead we added the ability for lua plugins to add json wizards too.
Change-Id: I71b91264f77e24c9b2b9a3a0c9a11cf0440673a4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The default for the reload behavior has changed, so explicitly
set the setting when necessary.
Change-Id: Ibcc3e8d2decf3f50dd3d1288c38ec3d027fbc23e
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
The createAvd() command is going to turn off the
avd file system watcher during execution, so this needs to be
a part of AndroidDeviceManager.
Change-Id: Ic8038be53d2be34136649b6b8a44435a4fc87a9f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Rename it to modifyManufacturerTag() and use newly introduced enum
to describe the type of modification.
Change-Id: I8e903891e87d7133ec37e9aecfd303b424a36d15
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Introduce ParsedAvdList struct and return it from the parseAvdList().
This eliminates passing the errorPaths result by reference.
Simplify listVirtualDevices() implementation by removing some local
variables.
Adapt the tst_AvdManagerOutputParser test accordingly.
Change-Id: If4670bcc81ce36416c1fe35e8ee57e822f82516f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Allows a plugin to automatically forward the "print" command to
the output pane instead of only to qDebug()
Change-Id: I10fb8063bc1713eaaf77368ea7f760270df190b3
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
- Split the topic into how-to and reference topics
- Remove redundant information
- Make the instructions consistent with the remote Linux topics
- Include info about SSH connections from the remote Linux topic
- Add the \B2Q macro for "Boot to Qt" and use it where possible
(some UI text still says "Boot2Qt"
Task-number: TCREATORBUG-29361
Change-Id: I7fe5f957049d84ec7402f4c11a070ac2d44fcb38
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Inkamari Harjula <inkamari.harjula@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
When ADB signals a change about the list of connected devices, the whole build/run steps tree gets deleted and recreated.
The AndroidBuildApkStep is a part of that tree and starts one or more
"keytool" processes on creation/init. They were started with their own
event loop. Those synthetic event loops caused a change in order of
deletion which led to crashes with obscure backtraces.
This change removes the event loop creation from "keytool" calls. The
crash is avoided.
The calls take ~0.5 seconds. The short UI freeze should be an acceptable
hotfix trade-off for a crash in QtC13. If 0.5 seconds freeze seem too
much, a better fix could be done in QtC 14.
Fixes: QTCREATORBUG-30645
Fixes: QTCREATORBUG-30770
Change-Id: I8842dc87023142ae75572bf255c7f1ec808d9bab
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Before calling clickOnTab we used explicit waitForObject calls
sometimes.
Move these waitForObject calls into clickOnTab as the workaround
inside clickOnTab lets assume that the call of waitForObject
beforehand could fail.
Change-Id: Iba3bd952bfeec3738417ab6e2ea735665acb504d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
... and use it to register the InsertVirtualMethods quickfix.
The resulting registration pattern encourages the presence of tests and
easily allows minimal visibility of the classes involved.
Change-Id: I85fba0b983b51d84b6fae1f6fe51b63eed0ee336
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This patch creates a new document for Qt Design Studio
Property Effects.
Fixes: QDS-11087
Change-Id: I53287ae9635161a5a48c9cdaed045977944f34c0
Reviewed-by: Mats Honkamaa <mats.honkamaa@qt.io>