To reduce the changes done to the document iterate from the start and
back of the replacement text and check whether the document already contains
the proposed changes.
This also fixes the misplaced snippet part in the if else snippet.
Change-Id: I4519ed101cc03e7c49b3a9b775087361c3fd158d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
... in the ClangFormat settings (rather than the default of just
indenting).
As opposed to files generated by the wizard, quickfixes are often touching
existing code, and since ClangFormat works on line granularity, users
will experience unexpected re-formattings when ClangFormat is in indent-
only mode.
Therefore, do the formatting only if the user has enabled it in the
ClangFormat settings.
Change-Id: Icb30f166f2b6fb94113a8f25c4a5f92ff8bca9b0
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
- avoid manual line breaks
- fix plural
- add some translator comments
- explicitly name an output pane
- use imperative for placeholder text
- it is a Markdown editor nowadays, not a viewer
Change-Id: I8418cfe0294c028b7d873305db0af4c25bc1097f
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Instead using of default code style settings, this commit
modifies the ClangFormat plugin to use the code style
settings that were set before applying ClangFormat.
By doing so, we preserve the previously defined code style.
Fixes: QTCREATORBUG-29185
Change-Id: I347d44d5ed49a2c50e130a983b62c844c8964391
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Previously, ClangFormat was getting the style for a file
every time styleForFile was called, which could cause
unnecessary delays and impact performance. This commit
adds caching of the current style with a timeout of 1s,
so that ClangFormat can quickly access the cached style
instead of recalculating it each time.
Change-Id: I33c114d51d6ce1acd0b6d9d2a28e2b6712e149dd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
After starting Qt Creator with the Beautifier plugin, turning its
automatic format on save option on, and restarting Qt Creator _without_
the Beautifier plugin, clang format was no longer formatting on save.
The clang format based formatting is supposed to be disabled if
- the Beautifier plugin is enabled, and
- its automatic format on save option is enabled.
Fix the check for the first condition, the plugin can be present but
disabled, explicitly check if it is enabled.
Change-Id: I5c9c270dd47ceec665aebca5b613f0c4a5357d72
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Add file size threshold to prevent qtcreator freeze
when a file is big. The default value is 1MB.
Change-Id: I356c64cd5ca99a34413043896076dbab859538b6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Improved conversion from ClangFormat style settings to
CppCode style settings and the other way around.
Task-number: QTCREATORBUG-29069
Change-Id: If4f75259f7fe77397fc144a83370749a49d25297
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Code style preferences are grayed out even when formatting mode
is set to disable.
Fixes: QTCREATORBUG-29129
Change-Id: Icf82fa0751f9291122c2af55111b6bd5fac85c7b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This removes apparently unnecessary resize() calls on QWidgets based
forms which get anyways added to layouts and resized. Most of these size
values looked "accidental", i.e. neither divisible by 2 nor by 5, in
most cases a remnant from the ui inlining.
Change-Id: I95da3b93f2915ef955b5235e5c2ecc94b51f813a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
Amends a0f6e8dc04
The issue is that pthread.h is including <process.h>, which ends up to
utils/process.h since it's first in path.
Change-Id: I525384083b6952aded4b77c29d00d85f084c60f9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Everying is a LayoutItem now, and everything is split into
a proper setup and execution phase.
Execution happens only via LayoutBuilder (directly or via
convenience wrappers in LayoutItem).
No direct access to the widget in creation, funnel out is
via the new bindTo() facility.
Change-Id: I7eb38fd736ae57a68f9a72a6add5c767da82b49f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Fixed the behavior when the preview does not update when the Override
checkbox was not enabled initially. Currently, the preview is updating
when Override the checkbox is enabled.
Fixes: QTCREATORBUG-29043
Change-Id: I8a2a6f3cd5890b66d4bffd0c84aeafb5a29fba48
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Add feature to grey out the Clang-Format Style configuration widget
after unchecking the 'Override' checkbox.
Change-Id: I94bbb1f4436f3caeaed55d49582211257e480d0d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
... out of SessionManager.
The idea is to later move SessionManager into the Core plugin,
which both is sensible conceptually and also prerequisite to
merge the Bookmark plugin into TextEditor plugin.
Currently, only the interface is split, as the load/save
implemetations are non-mechanical to disentangle.
Change-Id: I31631db3094ea192825a2ccaa6add6188662940b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Create std::string explicitly using pointer to data and data size.
SmallVectorImpl<char> doesn't include terminating \0, so passing
data size is needed.
Fixes: QTCREATORBUG-28812
Change-Id: I63bd290e990ec8e4cd4fb609764a79e6feff92bc
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>