A document change can generate new image request and if the are not in the
database new task for the collector are generated. But if there are already
tasks for an equal id they would generated twice. So the tasks are now
merged. The auxilialry data is not merged because it is expected that
it is not changing.
Task-number: QDS-3388
Change-Id: Id1aceb564dd9dc7c5a1ea5ae4680d7ee36611cda
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
We have several user questions and bug reports about
SIGSTOP preventing users from debugging, so use SIGSTOP
signal handling as an example.
Task-number: QTCREATORBUG-24500
Change-Id: I2243d45ef4f5354a15712567882861053d3d6a7a
Reviewed-by: hjk <hjk@qt.io>
It doesn't use any information from the qmake project manager, and works
for e.g. CMake as well.
Change-Id: If8348de45b9d5d2ce104ad6004c890508694db9d
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Error messages tend to be posted on stderr, so read all output in
addition to stdout-only, and provide that for error message.
Change-Id: I5f7f38ba1db13ab37cb7a752b4b73c9a9779a57c
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
typdId is required to identify the instance's component while
generating PSDs
Task-number: QDS-2811
Change-Id: I61e0fe977e252c9c2aaeacd425b057c92a7c5b49
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This will simplify the code, no need for mutex anymore.
Change-Id: I85e0cad7ed3b3288ae1eec03f7504590293c4ea5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
HDR images imported to the project are now shown on asset tab, though
they will only have the system default icon as Qt 2D rendering doesn't
support HDR images.
HDR images can also now be dragged into navigator, behaving like other
images when dragged into 3D elements that support them, or creating
a new Texture item if dragged elsewhere.
Task-number: QDS-2128
Change-Id: I16a23e93a2a51d65a2278400d3c6c6ffd3b62615
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
And implement it in the clang-format plugin to use the ColumnLimit from
the style. This would be quite useful if you're working on different
projects with a different ColumnLimit. This way you get an visual
representation and do not only have to rely on clang-format.
Change-Id: Ib0258e3fba6f45f0f46ce612f806527a47868ad9
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
We can't call neither Command::isActive() nor QAction->isEnabled()
from inside matchesFor(), as this function is called from non-gui
thread and it may happen, that the gui thread modifies these data
at the same time. Instead we prepare the needed data inside
prepareSearch().
Change-Id: Ie9ddb8eb7df2c39e968ef117caf3ef1d04ed6a80
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
We can't operate directly on the BookmarkManager and Bookmark instances
in the other thread, as they may be freely modified in the gui
thread in the same time. Since it's uncommon to have
hundreds of bookmarks set, we prepare all the needed data in the
main thread instead, which shouldn't slow down the locator
significantly.
Change-Id: I9df0a8425694632c40138fbe3667499f7fc03432
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The value of m_symbolCache may change at any time in gui thread
inside a call to updateCurrentClient().
Change-Id: I6aad37281ce8ec08f7b0ea5b2143e28dee507f72
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Since we don't guarantee the synchronization between a call
to openConfigDialog() and matchesFor(), it may happen that
these two methods are called simultaneously by two different
threads. In theory, the value of m_includeHidden may be changed
in gui thread by a call to openConfigDialog(), while at the same
time it may be read in other thread, inside matchesFor().
As a safe solution we make a copy of this value inside prepareSearch()
and use the copy later in matchesFor().
Change-Id: I83fb184ff1914e4c02ee799464ff0d89350ab49c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
No need to have the same translatable string repeated at all these
places.
Also add tooltip to expand a bit on what "auto-detected" actually means.
Task-number: QTCREATORBUG-25291
Change-Id: I25d43486758ba17256cf7e1ea2eea0ec3d567b62
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
... when using declarations are involved.
Second attempt.
I have a suspicion that this is not the "correct" approach, however:
a) It appears to fix the problem.
b) It does not break any tests.
c) It's rather high in the call tree, so there's a low likelihood
of breaking something else.
d) Considering the hacky-looking pre-existing code dealing with
using declarations (e.g. LookupContext::lookupByUsing()),
it seems quite possible that there is no "correct" way with
the current infrastructure.
Fixes: QTCREATORBUG-14524
Change-Id: I28c6e53137c21ce158bbd03b92b3db39146116d5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Unshared connections are not re-usable, so our whole book-keeping
procedure is not needed for them.
Change-Id: I1b6ca3d1658d139b6687425cf32f821548dddade
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
If there is no source property set for a node of Image based component,
fall back to component rendering to get the default image.
Fixes: QDS-3669
Change-Id: I44c14c996f0b3f61c82963fb5fc79577748bd33e
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
They are needed for some more advanced actions.
- Move the section to a .qdocinc file that is included as
necessary and modify defines where needed.
- Describe using tooltips to get more info about variables.
- Add a screenshot.
Change-Id: Ieb03ccf7de5f0c493c98ae356cdda4b4d3915832
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
It does not make sense to check the not applied settings of the
settings page when a document gets opened.
Change-Id: I6fda0cf6c524e79e17cc25b54c41527971179f8b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Do not open the server for every open document that belongs to that
server and assign the documents to the correct servers.
Change-Id: I88a743489e7e4b396a112ad772926e90b22626f3
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This effetively reverts 87ec0f349f, which had unwanted side effects.
Change-Id: I03438c18f43b07a6560416af746132bc4471fbb7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Since it's guaranteed, that prepareSearch() is always called
from the main thread prior to the call to matchesFor()
from the other thread, we copy the data inside prepareSearch()
which we will operate on when matchesFor() is called later on.
Change-Id: Idf6a8e683356bb524eb4b5b1ce1e05b0ba065c8b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
By default this option is set to true.
Task-number: QTCREATORBUG-25275
Change-Id: Ia7d628026e4ff7d20cf4b22db89d9b5b6ff5a9ca
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
... when using declarations are involved.
Fixes: QTCREATORBUG-14524
Change-Id: I0c391b88628f40973b6f601e60c64263f62a88a0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
... for the edge case of the insertion location being preceded by a
function whose body is a try-catch clause.
Fixes: QTCREATORBUG-14661
Change-Id: Icc7d5283ead81d644231479317214a8cc177493d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Conan is not used with QDS, so the docs are not a part of
QDS Manual.
Change-Id: I539afb58dd9762d088d2d22ea9793f819f89168a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
This patch restructures the settings part of the
documentation to have all related information is
at one location instead of scattered across the
whole page.
Additionally added some information for so far
undocumented features and fix URLs to referenced
googletest web pages.
Change-Id: Ic897237ea67e9cc11f7d0b55059c47108a6e0f3a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
To HEAD of 1.18 branch.
Change-Id: I1ae87430fa5579074eb44da7278ab3e22ada14ac
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Currently m_directories, m_filters and m_exclusionFilters
are being modified only in the main thread, while in the
other thread they are only read. The access to them is
being protected with mutex when reading in the other thread.
However, we don't lock the mutex when modifying them in
the main thread, so it may happen that the other thread locks
the mutex and reads the value while the main thread directly
modifies it without a lock.
As a remedy, we add lacking lock mutex when we modify it from
the main thread.
In case of m_files its value is being modified in the other
thread, so we add a protection when we use it in the main thread.
In order to avoid a deadlock we unlock the mutex by the end of
restoreState(), before calling updateFileIterator() which now
relocks the mutex.
This patch may potentially fix a crash reported in
QTCREATORBUG-25265 - the last two stack traces from two different
threads, having both a call to Core::DirectoryFilter::refresh().
Task-number: QTCREATORBUG-25265
Change-Id: Ic1adfb71c2325ae06e6c2303d41b758df31d012a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
As Qbs and Meson are supported by Creator, there is
no need to use a Generic Project for them.
Task-number: QTCREATORBUG-25282
Change-Id: I8bca0f6c990d5dc80ef67e4a38c32ad2b49c76df
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>