If a file is reloaded it should update every translation unit.
Change-Id: Ib61d933e95fcd9fe4d32363ddc06f5edcca55e35
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
...which could lead to undesired asserts:
SOFT ASSERT: "!"Got ProjectPartsDoNotExistMessage"" in file
clangbackendipcintegration.cpp, line 184
Change-Id: If6d67b9f617394ce8f72e7e56699423d47879688
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
cxTranslationUnit() is starting a reparsing if it is needed so in the best
case it is useless. But it can be maybe harmful if the translation unit
isn't already created.
Change-Id: Ie733edac58ab8f7eccb1611ca1554209f8aa8718
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Since we don't keep a local queue anymore, the distinction is
no more needed. Also, this is close to the LLDB side now.
Also move remaining uses of DebuggerCommand::flags to
GdbEngine, since that's the only user.
Change-Id: I61ae0f4e5294e306ab0b202e80f27fb3e3f7a7d7
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
Values are passed through plain str(eval(...)), i.e. no expansion
of non-scalars (list, dict, ...) yet.
Change-Id: I21ceab29504e2bb43aef516f9beeca5470500fdc
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
On Windows it takes more than 500ms to retrieve the first line.
Really wait until we have an entire line then read.
Change-Id: I9f7c222c314ea977179ed549281ef145ba756c73
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
This is useful for compiling and packaging plugins separately from Qt
Creator, where we want to keep the structure of the compilation result
the same as, but separately from, the Qt Creator build directory.
Change-Id: I307f119fc7901e00790ec85bfb01cc3ba5fa6e85
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
These are created by the Dolphin file manager on KDE.
Change-Id: I292bab5fdde43a5bd65f32babbda279c5adeabad
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
The tool tip never has focus, so it cannot become the IContext that is
checked for context help. So, integrate the help id into Utils::ToolTip
and check the tool tip first when checking for context help.
As a side effect the [F1] button and help id for the tool tip is now also
available for use outside of the text editors.
Task-number: QTCREATORBUG-5345
Change-Id: Id975703caf161d1183c247e8ad8bb693b90fd306
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
This reverts commit 85e1b4d089. Setting
that environment variable breaks the UI completely for certain
environments. If Qt itself doesn't enable auto scaling by default,
neither should Creator (for good reason, as it apparently doesn't work
yet on X11).
Worse, Qt Creator must respect the environment settings set by the user,
never override it. This commit was unconditionally setting the auto
scaling, making it impossible for me to override the settings.
Task-number: QTCREATORBUG-15115
Change-Id: I42e7ef1a481840699a8dffff140857f6c0b33713
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
The screenshot shows the code template for a Qt Quick Controls
Application, not a Qt Quick Application. This led to user confusion:
https://forum.qt.io/topic/59078/
Change-Id: I41580fd4abd337176e704adcb9547d8d4bb4ef7a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
The subdirs wizard tries to re-run the NewItemDialog to add
subprojects to the qmake SUBDIRS template it created.
Make this work again.
Task-number: QTCREATORBUG-15057
Change-Id: If5c61970afb3bb4507d4a7de7dde1a6e7078c29a
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
They are invokable by the usual means (Alt+Enter, editor's context menu
> Refactor) plus by the context menu of the editor's left margin for the
related line.
The fixit text comes directly from libclang and is thus not translated.
We modify the text slighty by stripping the diagnostic category prefix
("note:", "error:", ...) and capitalizing the first letter.
A follow-up change should properly indicate available refactorings with
a refactoring icon in the editor's left margin.
Task-number: QTCREATORBUG-14868
Change-Id: I86157c9f824d2a9dedf19087476d02ad1e6cc854
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
...by introducing ClangDiagnosticManager and the helper class
ClangDiagnosticFilter.
ClangDiagnosticManager will get more state in a follow-up change.
Change-Id: Id2c312bc897ea41ed67292b56b24dcfb7975ff4a
Reviewed-by: Marco Bubke <marco.bubke@theqtcompany.com>
Reparsing a document is expensive so we should avoid it by all means. In
this patch we prevent that the same document is send again. It isn't send
too in advance of a code completion if there was no changes before the
the completion position.
Change-Id: I0bb786ba1d4e7ce08611a518cb32f8cf8f4d0037
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
The test relied on logic that was reverted with change
915f68deac.
LookupScopePrivate::findSpecialization() gets a "TemplateNameIdTable
&specializations" with a non-deterministic order. Without the extra
logic, the very first entry will be chosen as the found specialization.
The non-deterministic order comes from the TemplateNameId::Compare,
which calls std::lexicographical_compare() with the template arguments,
which are FullySpecifiedTypes. The result of
FullySpecifiedType::operator<() might depend on a pointer comparison.
Change-Id: I8d69d1bb5831145b1c21a5ea848c0043f17ec415
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Only send the fileListChanged signal at a point where the files()
method will actually return a non-empty list of files.
This fixes one reported issue with the Qbs project, but should
actually fix more than that: The files() list is used in several
places.
Task-number: QTCREATORBUG-15112
Change-Id: I2c8207dccfb70d79f50eb65caba88b1a6a11a071
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
That's LLDB's "compatibility" mode faking a GDB 7.4 interface.
This is not directly needed given Qt Creator's native LLDB support
but might be a useful fallback in some setups.
Change-Id: Ia2c1c731de46b8c668bb0c822f1438fe203aa9c5
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Adds the following improvements to the CMake editor:
* Indentation support (both through Ctrl+I and when pressing enter)
* Insertion of matching paranthesis and quotes (pressing '(' inserts ')')
Change-Id: If9a63b08b3e0897989e4d8ac69e3acc072b0b825
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
The android tools expect to find java and javac in the PATH. Which
is the case on using the distro java, but isn't if the user
installs Oracle's binary jdk distribution.
Change-Id: Ib5f5448724f00b000a969c27d5aad6a420bfc1eb
Task-number: QTCREATORBUG-14155
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
I found this while investigating a bug report.
Change-Id: Ic756dfc4b1dfe1b1a647d5b10441391c97046176
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
As apparently Samsung devices don't have it. The new algorithm
is:
- If it is a 64 bit device
- Either pull /system/bin/app_process64 (64bit process)
- or pull /system/bin/app_process32 (32bit process)
- If it is a 32 bit device
- First try /system/bin/app_process32
- If that doesn't exist try /system/bin/app_process
The old code did a symlink resolution on one of app_process[32|64|],
but I believe the symlink resolution was only needed for a symlink
from app_process to app_process32, which is covered by this code.
Change-Id: Iedeeb247c3059931e1ddf6d01e8b2aab13156470
Task-number: QTCREATORBUG-15006
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
Seems to have been the case since forever, but I don't think
this was ever necessary.
Change-Id: Ieaca8d239ad5d0528d45597f6d1b2a437b422fd0
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>