It typically doesn't take more than that. On Windows it might be more,
but for this we have the slowly increasing progress.
Change-Id: I4cae5ec6d8488f31387a306f841798ca079cdac5
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Report the commit data fetch result, including success state and error
message, through the QFuture. That also removes the need for creating a
fetcher QObject and the logic to make sure it is deleted.
Also exchange QtConcurrent::run by Utils::runAsync.
Change-Id: I9c0c03eff2eaa32f577b4599ffda58b0c09de59b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* pragma once
* member initialization
* s/struct/class/
* Introduce a static GitPlugin::client() method and use it
Change-Id: Ifdcac86dd16f3cdba11d564d03e9a15f00a6afdb
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
It is now deduced from either the type of the
QFutureInterface<ResultType> function argument, or the return type.
Change-Id: Iddab3cc329206c649a6e55a44b2de2d406701dee
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
* Remove unused includes
* Remove QObject qualification
* Use a raw pointer for widget instead of QPointer. It is owned by GitGrep.
Change-Id: I4e2c9878289ed3491bfd7b0565a683bc01e485f3
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
* Logs the command in the Version Control pane
* Simplifies the client code
Change-Id: I398d57ab12ed6ba6bab1878934b929083f0bf6cb
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
User can provide a path to the dialog so this can be handy even without
an open project or file.
Change-Id: I1ed96fe56b6ab76ca98f8d81ef60b217e66d0661
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
If the process is already finished, and cancel is triggered Creator crashes.
For example, search for "q" in qt-creator, wait for >200K popup, then wait a few
seconds for the process to finish and press Cancel.
The reason for the crash is that reportFinished() is called twice - one from
GitGrepRunner::finish() and another one from Utils::runAsyncImpl().
Change-Id: I61d379f5e3a5ae86c9a48a3751dbb2e00203516d
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
- If the git config contained old entries for submodules that were
removed (they are not cleaned from the config automatically),
it would add submodules with empty "dir", which lead to infinite
recursion
- When recursing into submodules, we need to prepend the paths from the
git output with the relative path from the main repository
Change-Id: I0bc6a1973f4cdeb1c3f09c05cd7736c25471f72e
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
When executing mergetool from the commit editor it is unlikely that the user
wants to do anything but to commit.
Change-Id: I1302951c4afee554b35a261d60f402b56c077681
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Flow:
* Open a commit editor with unmerged files
* Double-click an unmerged file
* Resolve the conflicts with the mergetool, save and close it
* The window is activated and the file model is refreshed immediately, before
the mergetool process has exited.
When the mergetool exits, repositoryChanged is emitted. Use it to refresh the
file model again.
Task-number: QTCREATORBUG-15569
Change-Id: Ibce7301bc46fe3a5a378a4c15b882e1bb6bbf3c3
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Instead of describing icons via file name or in the themed icons case
via
a string that is a list of mask/color pairs, we have now a class for it.
Icons are now listed in per-plugin *icons.h headers.
RunControl::m_icon was The only place left where an icon property was in
fact a string. This patch changes that member to be a Utils::Icon.
Change-Id: Ibcfa8bb25e6d2e330c567ee7ccc0b97ead603177
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
* Use a common method to do the basic setup for all the different
actions.
Change-Id: I92e1d959c45e70c8145b7665dde8827edaf2331d
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
dependeOnNumber and neededByNumber were not initialized.
Change-Id: I12b90b842d540ae0e8ac9ff5be1be2ace2473ba8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Right-clicking a commit on blame shows the parent commit relevant for this file.
In case the file was renamed, fetching the parent can fail (since the file with
this name did not exist before the requested commit).
Using the direct parent is good enough, and should work for all cases.
What the user is really interested in is "how did the file look before this
commit", and the exact "previous" commit is not really interesting.
Change-Id: I7d74efce5f2b065f62e978ba5f14d3010a5f2c7f
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Change-Id is not unique. It can be reused on several branches of the same
project, or across projects.
Change number is unique.
Change-Id: Id68ae63b4d745817a2cac764fdc8ceebdcb3faa4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>