Commit Graph

86026 Commits

Author SHA1 Message Date
Eike Ziller
9fd732712e Projects mode: Fix invisible tool bar above build system output
Amends d2500dc77b

For some reason, even if the title widget returns a size hint of height
0, it is still painted, but doesn't even reserve space in the layout.
So, the title was painted over the tool bar that we add to the dock
widget for the build system output in projects mode (in the right side
bar).

Set the visibility of the title widget in addition.

Change-Id: Ia00d73baba22294a57d689118565dc0fe3ee5617
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-01-26 14:12:22 +00:00
Alessandro Portale
2c45a3ffe4 Theming: Update of color tokens
Token_Background_Hover is gone.
Token_Foreground_Default, Token_Foreground_Muted and
Token_Foreground_Subtle were added.

Existing token colors were changed.

Change-Id: I9505ee54dd02f78bd722c0dcfe42ee6ae4e48d13
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-01-26 14:08:00 +00:00
Eike Ziller
cdef799321 Remove RestartDialog in favor of static function
The pattern was always to create the dialog and exec it, which can be
done as well with just a function call.

Change-Id: I3934cf5d869211713902abd333aa64d87ec59f32
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 13:59:14 +00:00
hjk
fca5c4fe96 TextEditor: Move BookmarkFilter class definition to .cpp
Change-Id: I6da2710afde7af153353e184de72df2325dc4644
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-26 13:50:08 +00:00
hjk
994e83b839 TextEditor: Move some functions from the plugin pimpl to the plugin
Since the plugin class is in the .cpp now pimpling is not really
useful, this goes a step into the direction of removing it.

Change-Id: Ia55d60749372d868a94884337f0e0f52ec2cc1b5
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-26 13:50:00 +00:00
Eike Ziller
bc145f2d36 ActionBuilder: Add documentation to adopt
Change-Id: I875ebac532a463572c4723e6973fd87ff27f4fe2
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 13:31:01 +00:00
David Schulz
73c03faa2d LanguageClient: add LanguageClientManager to object pool
instead of the language client plugin and make sure the same
functionality is still reachable from the outside.

Change-Id: Idff8db221e03afb4100c2e4879b7dfeb3e14e59b
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 13:12:23 +00:00
hjk
6218520b63 iOS: Move build configuration factory definitions to .cpp
Change-Id: Ia4a52e61488900fca013a50185ae534faa8816eb
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 12:58:53 +00:00
Christian Kandeler
79e323afbf Update qbs submodule to HEAD of 2.2 branch
Change-Id: Ibe9fab31e5dedac362aa469c6d2cd058015a6020
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-01-26 12:50:19 +00:00
hjk
7f061c723a CppEditor: Move CppHeaderSource implementation and test to same files
... and remove the now-empty cppeditorplugin.h

Change-Id: Ia28b180c280ba7b10ce0f2826f2ac69d128a453c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-26 12:44:53 +00:00
Christian Stenger
e71d16ef90 Axivion: Minor clean up
Change-Id: If2ed91a7778e18e25edb3bc05b0017e14b05fc27
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 12:36:57 +00:00
Christian Stenger
08e21a3346 Axivion: Refactor link handling a bit
Do the costly part only when necessary.

Change-Id: I9b884ee3411476e16569f09921409b33229de5e9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 12:36:48 +00:00
hjk
109ec1e443 CMake: Hide CMakeManager implementation in .cpp
Change-Id: Ia66d73cd060d17c2d25a1d5b89155ab4e7a6b62b
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 12:31:05 +00:00
Eike Ziller
acedf93ba3 Remove CommandButton
The same can be achieve with a factory method in `Command`, similar to
the existing ones for actions and buttons which synchronize their tool
tips with the shortcut.

Change-Id: I7e17654706b902dfa14f37b958fc2a60705d5cb5
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 12:25:26 +00:00
hjk
34087df11e CppEditor: Move plugin class definition to .cpp
Also remove the globale instance variable which is not used anymore.

Change-Id: Ia054f79570b2fb650db31bd8560a08b0c9fe4c8c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-26 12:20:52 +00:00
hjk
9cc3988acd CppEditor: Remove some CppEditorPlugin member functions
Inline renameSymbolUnderCursor() and  switchDeclarationDefinition()
implementation on the caller side. Also use the widget that's known
there instead of the currentCppEditorWidget().

Change-Id: I158bef34234ce199accf25861062c97491bea381
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-26 12:16:52 +00:00
hjk
3c9238d29a CppEditor: Cleanup plugin header a bit
Change-Id: Ifff36ba362d8f9376936a46050e9a01f7b80a26c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-26 12:08:34 +00:00
hjk
4df8101d4b CppEditor: Reduce visible CppIncludeHierarchy interface
... and remove related helpers from the plugin class itself.

Change-Id: Ide4b0596d0822b0737b341fa2fb08965f11cb018
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-26 12:04:37 +00:00
Marcus Tillmanns
debee7cdf1 Utils: Add iterator check
Change-Id: I761f6e1871c092e35878f07a7c416c4e47781980
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-26 11:33:10 +00:00
Eike Ziller
a0716261a8 ModelEditor: Use namespace Core
Less noise

Change-Id: I3b1d42f1d269b7659be0a73ca5cec6bd5a835702
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 11:32:19 +00:00
Eike Ziller
4900ce90e3 Core: Remove CommandAction class
In favor to a method in the Command class that creates an action,
similar to how there are the methods augmentActionWithShortcutToolTip
and toolButtonWithAppendedShortcut already.

Change-Id: Id5f778bd01babb556cd9d3ed7ef0bb68d78887bd
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 11:32:11 +00:00
Eike Ziller
f22fa5275e Use ActionBuilder for Markdown editor
Also add method that sets the ParameterAction for the context action.
That is an alternative to "binding" the context action, and is useful in this
case, since we do not have a QObject that we can use as a parent for the
constructor that creates the ParameterAction from scratch.

Change-Id: I6ba05208d33460cfa2df9ce8247f7ca30624c22f
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 11:31:57 +00:00
David Schulz
d9404208da ProjectExplorer: declare only relevant aspects as features
This will disable python kits for all Wizards that require a valid Qt.

Change-Id: I4a8d6dd60629ddb556e49c067200acba8ef080d2
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-26 11:27:32 +00:00
Jarek Kobus
bd81ef4127 SynchronizedValue: Limit code repetition
Change-Id: I7d76d80db3d7345ba989c9346030b07be9754b3f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-01-26 10:57:46 +00:00
hjk
17463757ce ResourceEditor: Remove some indirection
Change-Id: I930e7e35401e6c6d8b3e1245e6a7c663f131d345
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-26 10:45:14 +00:00
Marcus Tillmanns
dbee11f5b4 Environment: Fix incorrect usage of appendOrSet
appendOrSet will append to existing environment variables which is not
what we want for all the changed locations in this commit.

Change-Id: Icf6b110acc59261659839375672943ec21923da1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 10:33:34 +00:00
Eike Ziller
b8c9d79b9f Remove focus rect from some input fields on macOS
The focus rect on macOS needs some space around the widget itself,
otherwise it looks wrong. We already removed the focus rect for various
input fields like locator and search (cmd+f), also remove it from filter
input fields for the various output panes.

Change-Id: I048453c06264c51ec28b5a0c9368fad7c01dc5a7
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
2024-01-26 10:31:07 +00:00
Leena Miettinen
f8f82f259a Doc: Split up Using FakeVim into how-to and reference topics
- Move contents around
- Remove obsolete information about color scheme
- Fix keyboard shortcut for toggling FakeVim mode

Task-number: QTCREATORBUG-29361
Change-Id: Icb1c76e014b34d582e40d597bb1279df53e2c02b
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 10:13:54 +00:00
Marcus Tillmanns
a25bbf23c6 Utils: Fix error prone default value of appendOrSet
It was not readily clear that Environment::appendOrSet/prependOrSet
needed a value for "sep", otherwise it would just concat the values without separator. This got apparent when looking at usages of
appendOrSet.

Instead there are now three options, "Auto", "Colon" or "Semicolon"
with the default being "Auto", which determines the separator based on
the Environment::OsType.

Usages of appendOrSet and prependOrSet are also fixed with this commit.

Change-Id: I868e14ce38f50be9cd07292fe3f22663a62d116d
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 10:10:03 +00:00
Marcus Tillmanns
56f42c319e Terminal: Fix env separator
Change-Id: I738ff27d37df95170bbdc9f55fbaf6430ebb5a40
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-26 09:36:33 +00:00
Christian Kandeler
946efb14b1 QbsProjectManager: Move progress bar future to QbsProjectParser
It was very odd that it was held alongside the parser in a different
class.

Change-Id: I187b2260e079f0bf88bfc73447b7dec7f6497dca
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-26 09:32:45 +00:00
hjk
167cd3378d Qbs: Use Store instead of QVariantMap in a few places
Change-Id: I0636fad4ca032ec6657f2e35154c2e0ea4d0c9ca
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2024-01-26 09:20:33 +00:00
Artem Sokolovskii
e1f7469afb ClangFormat: Replace checks widget with editor
The existing approach utilizing the widget poses maintenance
challenges, primarily due to the dynamic nature of clang-format
settings across versions. The widget necessitates regeneration
for each new version, and compatibility issues arise when users
have different clang-format versions on their devices.

The updated solution adopts an Editor integrated with a yaml
language server, offering the ability to highlight and provide
code completion for the .clang-format file. This resolves the
widget regeneration issue and ensures compatibility with various
clang-format versions.

- Replaced the checks widget with an editor
- Introduced a line for yaml language server schema
in .clang-format files to enable autocompletion.
ToDo: Enhance schema accessibility without relying on this line.
- Added Ctrl+Space shortcut for autocompletion
- Added Ctrl+S shortcut for saving
- Eliminated outdated logic related to the checks widget
- Fixed copying and removal of clang-format settings

Change-Id: I2e3fbf19abe2f4df031f6ba5faffd47e07274346
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2024-01-26 09:19:25 +00:00
hjk
78a909390c RemoteLinux: Use more restrictive #include in linuxprocessinterface.h
Change-Id: Ib234ed21762b27064b7f062bd43f25bce8264d37
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 09:18:10 +00:00
hjk
841081d517 Utils: Remove odd QTreeView declaration from environmentfwd.h
... and use one when it is really needed.

Change-Id: I583fb775e5d625833816ac380ea74bf24b67d8e7
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 09:07:32 +00:00
Jarek Kobus
5ae37f2f84 ImageScaling: Reuse LoopList
Instead of LoopRepeat + container capture.

Change-Id: Ic37c4ff53c4ce2a217a258aa4af1272ac3d8ab29
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 07:51:27 +00:00
Jarek Kobus
e1f0da4e20 ClangToolRunner: Reuse LoopList
Instead of LoopRepeat + container capture.

Change-Id: I5bce612279cf63f6ad1237569b55baad9a98e2ce
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 07:51:22 +00:00
Jarek Kobus
507933467f AutoTest: Reuse LoopList
Instead of LoopRepeat + container capture.

Change-Id: Icb243d7ac902eed95503d7d1a5ac007f4f6c705d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 07:51:16 +00:00
Jarek Kobus
e826e3ad7e TaskTree: Use QMutex consistently
There is no noticeable difference between using QMutex vs std::mutex
in release build.

It looks like std::mutex is about 15% faster than QMutex in debug
build, but that's not relevant.

Get rid of #include <atomic>.

Change-Id: Iae67d5028c5ae3cb412e50d629bfc09b38417dfc
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2024-01-26 07:51:05 +00:00
Christian Stenger
7c246f025c Axivion: Start handling total row counts
Include them only for the first fetch of an issue kind to
avoid costly additional access.

Change-Id: Icebbea5635b1f1d266238f99c43426dc22fb19b9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 07:48:56 +00:00
Christian Stenger
eec7339af3 Axivion: Make issues clickable
For now just a simple approach of using the base directory
using the given path and line information.
Depending on the issue kind there might be multiple locations
but for now only handle one of them.

Change-Id: I046b7c42593aa4c30b843fa8f9145fae35e869d4
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 07:46:45 +00:00
Christian Stenger
42c7f54c68 Core: Fix include
Amends 2796e69ab5.

Change-Id: I472ebca5de8c6e8b16133264b6b867a8abd10825
Reviewed-by: David Schulz <david.schulz@qt.io>
2024-01-26 07:21:47 +00:00
Christian Stenger
921bb9c977 Axivion: Minor ui improvements
..for the issues view.
 * use display names if posssible
 * fill versions and owners
 * use progress indicator
 * extract more data from issues

Change-Id: I91197ce375b8d58a4a09a7a5a9ad005e012c4549
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2024-01-26 05:24:54 +00:00
David Schulz
6d715f15d8 TextEditor: Add case sensitivity checks in optimization
17e2a80e10 added some optimization for
prefix and infix matches of completion items in order to avoid the
expensive regular expression check for the fuzzy match, but ignored the
user configured case sensitivity for auto completions.

Change-Id: Ic340e48abc6636bd2e8abeeddcd880cbdc66d03e
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-26 04:59:28 +00:00
Dominik Holland
681f039d79 AppMan: Fix dependencies of RunWorkers during QML Profiling
Change-Id: Id8a43d31369ae4cf150458dcab4693bf967decec
Reviewed-by: hjk <hjk@qt.io>
2024-01-25 16:47:15 +00:00
Cristian Adam
a8370aaf81 CMakePM: Allow adding files to OBJECT libraries
Amends 7a46bbe667 which only used
`cmakeTarget->productType() != ProductType::Other` which excludes OBJECT
libraries.

Now the fix actually includes all targets which are not UtilityType,
which was the intention of 7a46bbe667

Fixes: QTCREATORBUG-29914
Change-Id: If661828e43d5c566c876546f5527c0b670405e47
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2024-01-25 16:41:31 +00:00
Dominik Holland
e0088357d0 AppMan: Various small fixes
* Always use the correct symbol when debugging
* Fix the TargetInformation::isValid() function
* Optimize RunConfigurationFactory::supportsBuildKey()

Change-Id: I5f007d5c216ff9808adf9f8b878c9cbc9f47e3eb
Reviewed-by: hjk <hjk@qt.io>
2024-01-25 14:48:46 +00:00
Jarek Kobus
53de44444e Get rid of EXPLICIT_MOC
Otherwise it generates the following:

Generating moc_pluginmanager_p.cpp
[...]/pluginmanager_p.h: note: No relevant classes found.
No output generated.

The same for:
moc_cppquickfixprojectsettingswidget.cpp / cppquickfixprojectsettingswidget.h
moc_imageviewer.cpp / imageviewer.h
moc_vcpkg_test.cpp / vcpkg_test.h
moc_clangformat-test.cpp / clangformat-test.h

during compilation.

Change-Id: I65ea5a7caeb0607972c09de1de66337cb7df59b8
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2024-01-25 12:33:15 +00:00
Jarek Kobus
3932cdf8d4 GenericLinuxDeviceTester: Reuse LoopList
Instead of LoopRepeat + container capture.

Change-Id: Ie021c618808dad3ac3e0ba5993009074aa9a8313
Reviewed-by: hjk <hjk@qt.io>
2024-01-25 12:32:59 +00:00
Jarek Kobus
84315d5988 TaskTree: Introduce LoopList
A wrapper around container with convenient
"const T *operator->() const" and "const T &operator*() const" methods.
They mimic the const_iterator API.
Simplifies the usages, as it enough not to capture just
LoopList element inside task handlers without a container itself.

For now it handles just QList container.
To be generalized later.

Change-Id: I10ea3903985cf51529ec5909ac7c19c524de7c68
Reviewed-by: hjk <hjk@qt.io>
2024-01-25 12:32:50 +00:00