Later to be renamed to GerritSettings, and possibly using aspects.
Change-Id: Idd3d9d3de4f9827478129fe210abfa7b80cff84d
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Use a singleton for the main settings, don't pass it around as
shared pointer.
Change-Id: I5c32679452ad631998a688afc9a6e2b154bf3a5d
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Improve code readability by requiring iteratable Group
to be named For.
The For's c'tor requires an iterator element as a first arg.
The For's c'tor allows for passing exactly one iterator element.
It's not possible to place iterators inside Group element anymore.
Change-Id: I9dfe2c0da058abac161f66c4e336da2417c383f1
Reviewed-by: hjk <hjk@qt.io>
This removes the "Precedes: <resolving>" label when
doing git show on a very fresh, local commit.
The same fix applies to "Branches", though not sure if
it's possible that there is no branch.
Change-Id: I08614d47b229bd04256de1a059876d679cc57b99
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Use LoopList element instead of constructing large tree.
Change-Id: Ie10af350c7ed15a7d06363414174042b65c7ec53
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Where they were missing. The text is shown as a paragraph in the
extension manager.
Change-Id: I6e15c89fe4023b222e9c476f4312e13fcb0905c0
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This makes it possible to save it for the session instead/in addition.
Task-number: QTCREATORBUG-793
Change-Id: I95bc20f4912a97863cb88849e32699a689ba6f3f
Reviewed-by: David Schulz <david.schulz@qt.io>
Edited the short descriptions to answer the question
"What can I do with this extension" to help users decide
whether they need it.
In long descriptions, tell users what else they need to
be able to use the plugin.
Change-Id: Iefce7505b61fc77cf38cc915f1f7dbd25c9cb570
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Avoid the redirect that is inevitable nowerdays.
Also, change necessitas.kde.org to www.qt.io, since the orgininal page
is offline.
Change-Id: Ib1823f0df97d2df87822fd2bb7552e2f2c7e971e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This puts the implementation introduced in acf1ecb47f into use, after
significant simplifications in the class hierarchy. CRTP is not used
anymore, and the new tag based dispatch is also used for Layout::addItem,
effectively reducing the number of different code paths.
The Lua based settings access is disabled for now.
Change-Id: Idb6d1a25675378757c5267bdb630bcd4c1f52d34
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Use the global synchronizer from Utils::futureSynchronizer() directly
Change-Id: Ic8843bc1ff7951c041529a258f36117f08ec4b35
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
The running VcsCommand may leak on shutdown. Make them always
a child of a guard object.
Change-Id: Ie2d07d15cd13f1c08636bb1e9c5face09c6a782d
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Previously the SettingsDialog did not call Aspect::cancel().
Without this, the volatile value is not reset if the user did some
changes before pressing cancel.
This "should" mean that re-opening the settings dialog should present
the changed values again. But since not all aspects are implemented
correctly, they reinitialize from their value instead of their
volatileValue.
When the Settings Dialog is reopened and applied, a warning is triggered
as the container thinks its dirty, but the Aspect::apply returns false.
Change-Id: I8fac66fc95f9118d69c789ced22481d121769f0b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Rename process.h back to qtcprocess.h
MSVC's "threads" standard header includes <process.h>, and that ends up
including our process.h from Utils.
There already was a hacky workaround in place for a similar issue with
MINGW, but that doesn't work with MSVC because that doesn't have
Simply use a name that doesn't conflict.
Change-Id: I1159cd2096b4f2dbc4a1728d0131dd6edd30ebd3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
Settings labels are lower case and end with ":"
Change-Id: I729d25569790899a8d26966914ee8b872a48bcb0
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Git allows mapping authors and mail addresses:
https://git-scm.com/docs/gitmailmap
While using this file already worked for (instant)
blame, log and show still used the original values
from the repo. This patch makes the display within
Creator consistent.
Change-Id: I3c0e764c435a505e285941f4fdc91131f85af590
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Both VcsBaseClient::vcsBinary() and VcsBaseClient::processEnvironment()
get an additional parameter "FilePath target" to allow selecting binaries
and environment based on where the repository is located.
This allows to select e.g. a git binary on a remote device, and the
environment of the remote device for each VCS operation.
A bunch of file path operations are either fixed or ported to actually use
FilePath correctly.
Change-Id: I6afc645772fde3dff3ec19c13efe538e5888e952
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
It was always zero as Detached HEAD is a special
branch that is not actively queried. It can be
enabled later, but the quick fix is to disable it.
Change-Id: Ib191e1b5551a13bc4911184e12e06a0b4dc28ddf
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Using HEAD is wrong as soon as the branch is not
checked out. Instead the branch name must be used.
Amends 960ac1adf4
Change-Id: Id10b4012455ccb9b393404413a369f241edc098e
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Potentially more stable api long-term. Also simplifies the
user side code a bit.
Change-Id: I6913e27e2a5dc14907e72f252081cdbed34842a3
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Create the editor parameter structures in-place, and also
include the other two parameters in the struct to simplify
the signature of the c'tor.
Change-Id: Iff7d5ddf3096f4a3ed18e53265ae74806823af32
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
The classes derived from this had a dual role of implementing the
version control interface (IVersionControl) and as the plugin pimpls.
The name was focusing on the latter, but plugin pimpls are being phased
out in the new 'setupFoo()' world, so only the version control interface
part remains.
Change-Id: I60396f1729c736bc6c9e4fca250a5926e9d60f51
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
It has been wrong forever, but it just doesn't make
sense to have an add action for remote branches.
Change-Id: Ia9a96d85f95821f27215e0a172435f38abcd685f
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
We want to return an empty string when "Remote Branches"
is selected, instead of an empty optional.
Broken by 224e4eeb59
Change-Id: I5af06fafec48910226fdedf4a15079444cc54b6e
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
More similar to svn, cc, bzr, and Gives the user a chance to specify
something different. Plan is to make this also work with remote setups
[and possibly a per-device option, or automatism]
Change-Id: I18c1a90642c9cbe2ef9419103f3919c4a19122e5
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
It became the defacto-type for action when ActionBuilder started
creating them as default.
Change-Id: I1008d60b78ea83919ce1c80a7ef828527fe9902c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Rename ProcessResult::Hang into Canceled.
Change the behavior of the Process:
Whenever the terminate() or kill() is called, including
indirect calls through stop() or runBlocking()'s timeout,
mark the process result as Canceled.
In this way the Process running by a call to start()
may also finish with Canceled state. Before it was only
happening for processes started via runBlocking().
Adapt the runBlockingStdOut_data() test accordingly.
Get rid of ProcessInterface::m_canceledByUser field.
Use ProcessResult::Canceled state instead.
Fix existing 3 usages of m_canceledByUser field.
Use standarized exitMessage() method for them.
Add automatic measurement of process execution.
Introduce processDuration() getter.
Use it for reporting exitMessage() instead of timeoutS().
Change-Id: I1a68559ce844caef863a97a6b0577b0238011f70
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
`TextEditorWidget::fromEditor(editor)` fails in the
DiffEditor, so this message is no warning but rather
an info.
Change-Id: I1635b77910e609bda470d2f657916bbc98860af4
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
The timeout is only used with runBlocking(), otherwise it's no-op.
Change-Id: I7d81e4a73c7182bd19c435c112a2d64c3f40ba2e
Reviewed-by: Orgad Shaneh <orgads@gmail.com>