qtcreator.qbs contains a syntax error
which Creator does not ignore anymore.
Change-Id: Ifddeea5b81080c1388b35f2c2378f0f2eabbd318
Task-number: QTCREATORBUG-14828
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
...apparently they are enabled by default.
Change-Id: I6bda380655050c62e124de451a8aefd440cf4b91
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
On some platforms the style reports touch support and
ScrollViews become flickable.
This is not what user expect from a "normal desktop" application.
Task-number: QTCREATORBUG-14818
Task-number: QTCREATORBUG-14822
Change-Id: Ie15fd66667dca1c0863a29e87ff76583d9aa3eee
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Removing a target setup widget might lead to removing a kit,
due to some kits being temporary for importers.
A kit removal then would lead to a target removal and this would
make the code recurse into the widget cache.
Fix that by ensuring that we disconnect from the project first in
ProjectWindow::deregisterProject. And also remove the clearing of
the project window, instead simply clear the widget cache as each
project is closed.
Change-Id: I278c43ef4ba77217428c5c36f0a07d0d96cb3022
Task-number: QTCREATORBUG-14694
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
...for the following case:
void fun1();
void fun2();
void g()
{
fu // Type 'n', wait for the widget, hit return to choose the item
}
Once e.g. "fun1" is chosen, the completion is triggered again but the
processor (and as result the assist interface) is not freed.
The assumption was that for the AsynchronousWithThread case
IAssistProcessor::perform() would either return 0 (async completion was
started) or != 0 for an immediate proposal. It turns out there is a
third case: no proposal if the completion is not applicable, e.g.
choosing an item in the example above will retrigger completion, however
no completion makes sense for "fun1()<CURSOR>" for an idle editor.
Workaround the case with a getter/setter in IAssistProcessor. Proper
solution should (slightly?) rework the IAssistProcessor API.
Change-Id: I44dde8287998d54ded1ea07e7c39a5157cf62029
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Leak happened if the user triggered the completion again, before the
results for the first completion arrived.
Side note: This is one more reason for using smart pointers to manage
code assist objects.
Change-Id: I582d364286ca47f8622383f3365ad4e5933eb2df
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Manually managing the ownership of the code assist objets gets messy. We
should use smart pointers.
Change-Id: I29fe665e52438a79c3268b74898c583bb302f1fc
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Update the screenshot to show the format
in which the key names must be entered.
Change-Id: I54187e6d456462ffd7b74f7ff424e28779b60b73
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
When checking for anchors cycles anchors might be invalid.
Change-Id: I94778578dea5562ee5dad3c565c7b877c18996aa
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
The tests were broken since the qmake project manager switched to an
asynchronous loading.
We can't simply check if there are loaded projects because at time the
tests are executed there are not any. The user has to set some
environment variable in order to make these tests run.
Change-Id: I94778578dea5562ee5dad2c565c7b877c18996a7
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Triggering completion happens often on invalid code, which leads to
diagnostics from libclang. Suppress those by default, but allow to
inspect them with the logging category:
qtc.clangbackend.verboselib=true
Change-Id: I802ae58fe1b5244f3228ee73a181ea362de20608
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Android Studio is currently not supported.
Change-Id: I92857da61fd1b7ade2972d62b1dc236a6ac33aed
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
If source files were located in a separate folder from their product
(e.g. the rather common case of a subdirectory), then the "Rename"
and "Remove" actions would not be available for them in the project
tree's context menu.
Change-Id: Ieecf5372619ab3fcf275a55d7850445e3aa44a0d
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Should work at least on Arch Linux and Debian family.
Requires packages:
* Debian: google-mock, libgtest-dev
* Arch Linux: gtest, gmock (AUR)
Centos provides gmock source in gmock-devel package, but it doesn't provide
gtest source (in gtest-devel), so it must be downloaded and configured.
Change-Id: Ia507e8209848cb05743bb6f5956ce052f5558010
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
AttributeError: 'NoneType' object has no attribute 'startswith'
Change-Id: Ieb08c33cce06ad484de856b249ab4723b01d520e
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
* Rename some members/functions to clarify their meaning.
* Ensure that the position for the proposal widget is at start of the
identifer, so that the filter prefix will be found correctly in the
GenericProposalWidget. For certain cases the completion were
calculated but the widget was never shown:
Case 1:
void f()
{
<COMPLETION_CURSOR>
}
Case 2:
void f()
{
st<COMPLETION_CURSOR>
}
Case 3:
if (true)
<COMPLETION_CURSOR>
Case 4:
foo. mem<COMPLETION_CURSOR>
Change-Id: Ie79e01e8a22f8ec306136ec4ccbfffd544edd573
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
More precisely, free us from specific Q_MOC_RUN/QT_NO_META_MACROS code
paths in QtCore/qobjectdefs.h.
In order to track signals and slots we provided custom definitions of
e.g. "Q_SIGNAL" by including qt5-qobjectdefs-injected.h with "-include".
We also had to ensure that those macros were not overwritten by Qt's
qobjectdefs.h, which we did by defining QT_NO_META_MACROS. However, this
came with a cost: we needed to replicate all the other macro definitions
in the Q_MOC_RUN/QT_NO_META_MACROS code path, e.g. Q_INTERFACES. This
bound us to specific versions of qobjectdefs.h and occasionally we had
to adapt (see change 4eafa2e02b).
The new approach wraps Qt's qobjectdefs.h with the help of
"include_next". In the wrapper header, we only redefine what is
necessary.
The "include_next" directive is originally a GNU extension. Clang seems
to support it unconditionally, as [1] implicitly states.
[1] http://clang.llvm.org/docs/LanguageExtensions.html#include-file-checking-macros
Change-Id: Ic1a263f94b178349cb32bfdbb074ad5e6e0761ee
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
...makes the high-level function build() less noisy.
Change-Id: Ib09fba315845a604166489fd400d0be14e16fc23
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Old value fails with Qt 5.5.0.
Changing binary value 0.00110011 to 0.0011.
Task-number: QTCREATORBUG-14757
Change-Id: I6de62241089d50256cfef6f7cba61389da58b6ed
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Commit d765cd73a2 pulled in more stuff into the diassembler.
Change-Id: I83e0907abaef84a9cebb3c63d957182707af012d
Reviewed-by: hjk <hjk@theqtcompany.com>
In the QmlEngine, a few tr() have been replaced by
QCoreApplication::translate().
In other files, Q_OBJECT has been added to the class definitions.
Change-Id: Ia0505c19934dc691cd3d67f4946293290c2fec68
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
Recent builds of GDB started to deliver *running and *stopped
notifications for expression evaluation, even unpaired at times.
Since we know that we are stopped when we start variable extraction
and we are stopped when it ends, the intermediate notifications
can be ignored.
Change-Id: I800082afb7df600ad4e6f97b534f4ea901c02d8a
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
using CodeCompletions = QVector<CodeCompletion>;
using CodeCompletionChunks = QVector<CodeCompletionChunk>;
Change-Id: Id729a43566c23dc000e44d79ccf4a49e4f235f51
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
We can not offer proper constructor completion with libclang <= 3.6, so
fall back to normal/global completion.
Change-Id: I90bb8d981ae20ed4c228f829ad4267221b92f8a1
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
The renames will improve the readability of the follo-up change.
Change-Id: If1f5ae2a2798c13ce7268e436dae1b3963f01d5e
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>