... without subclassing. This is useful in situations where there
are small modifications needed for simple aspects that are themselves
exposed as members of an aspect container in a header but we
don't want to create a subclass for it.
Change-Id: I058643137c38e564072af9a2f45b1576ea058651
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Aspects are supposed to self-register in their constructor, or
if really necessary, by manually calling AC::registerAspect.
Change-Id: I6c6c46162d49d70c3cefebad8fec968a27faeadb
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Allow QProcess to do the setsid() call for us. Unfortunately, the
nice()-setting feature wasn't approved, so we need to keep the modifier
for that.
Change-Id: Icfe44ecf285a480fafe4fffd174d111b806eb3a8
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
The patch was done by
- duplicating StringAspectPrivate to FilePathAspectPrivate
- basing FilePathAspect on TypedAspect<QString>,
duplicating the needed used parts of StringAspect interface
and implementation
- dropping m_pathChooserDisplay from StringPathAspectPrivate and
all other *displays from FilePathAspect private
- remove related things until it compile
- remove now unused members in the privates.
Change-Id: I6ad710135dc4d3fc2f48bb620b502c20e717aa42
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
NimToolChains are the only ones with Constants::C_NIMLANGUAGE_ID,
no need to double-check with dynamic cast.
Change-Id: I1542128903261f8cfd2e20533b0589f9ceb7bc50
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Turned out to create a too strict tie between settings and
settings pages, we are more flexible with delaying/avoiding
initialization without these.
Change-Id: I948af675e29c7da34bfccd490c1c1b999923f279
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
...when that doesn't have any advantages.
Change-Id: I0c58e30ae0b9e278e3336646332279f6243719d0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Explicitly disable loading ClangCodeModel plugin to avoid slowing
down the load and parse of the projects by the indexer as we are
measuring the time for these.
Beside this adapt the expected tree for macOS - there are a couple
of files and subtrees that are present only conditionally.
Change-Id: Ibc000d0908e652700820f8eee4b17effdf48f637
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
The point of Python3 returning objects instead of lists is that
it will iterate just as far as items are actually being used.
Change-Id: If4d9742bb47aa9cac1166a0ff6f10d211829fd85
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
No real difference in performance, just stuff closer to its use.
Change-Id: Ib41209fc90872743a3baa692c9bc32c87e951ad5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
When creating a command line project from wizard we end up
with code that is not compilable on Windows when using too
old Qt versions. Explicitly do not use the older Qt versions
as this fails to build and the whole tests would need to get
adapted to handle this appropriate instead.
Change-Id: Ia8a253a0c5d8d20ea181dd33dc8d31cb83cb31c3
Reviewed-by: Robert Löhning <robert.loehning@qt.io>
Delete the RunControl directly when it's not running.
Do it in two cases: when tab is closed and when
tab is reused with a new RunControl instance.
In other case, queue the call to initiateStop,
so that any possible deleteLater() is called when
the nested event loop of the shutdown is already spinning.
It looks like the amended changes introduced the hang
when compiled against Qt 6.5. When compiled against
Qt 6.4 the regression doesn't occur.
The regression is caused by
449b45ff34ce4a45e5d6a24967566f69f43ebbb6.
Amends c1f6d70445
Amends 6e16512eba
Change-Id: Icb3ba757f32bccb3daae675b2eb516f75b84530a
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
The parent function isn't used anymore after the amended change.
Originally, it was introduced in
9d206a2bc4, when things still relied
on QObject hierarchy.
Amends 06a57f8c42
Change-Id: I9e3a2bbaf4c4cac308a18cbe5cf5905f2655443f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
This holds a path list, i.e. possibly several directories, separated
by ';' or ':'. PathChooser can't handle that. Long term this could
be something more sophisticate, but for now it's more a "string" than
one FilePath.
Change-Id: I6665c131e698db3afd268d6ab9bcf3d76a7c7289
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This is meant for cases where we get a raw ':'/';' separated list of
directories.
Change-Id: I9ef8888f71700d553213949a867f62dec763054c
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This does not change the current timing of construction a lot as
the GerritPlugin may need it immediately in some cases, in any
case the gitGrep instance will need it.
There's nothing big going on at destruction time, so the prolonged
lifetime until really close to the end does not hurt.
The reason here is that this way we will avoid cases like in change
5e5b90a9a1.
Change-Id: I326d83c1a3d21114322ac6cce8d9e9b782faacdc
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Add a command line argument for overriding the default plugin path
(useful if you have installed custom designer plugins in a different,
compatible Qt version), and one for adding plugin paths (for example to
separate builds of custom designer plugins that haven't been installed
anywhere).
This feature is only enabled when building with Qt >= 6.7, which added
the option to change the plugin paths for designer.
Change-Id: I990b26056477e3e41c6afe82479383d8bc7c45d0
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
... also for the manual fallback (ExecutableAspect::makeOverridable)
Change-Id: If660c9e26005ce88b3712472d44cf46c95379acb
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
... after a StringAspect/FileAspect split, instead of relying on
the current inheritance.
Change-Id: I7dd91f402636d35a15e9d1618b73c0981777b06e
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Pasting large amounts of data on macos would block the App indefinitely.
The issue was a blocking call to ::write. The first fix for that was to
set O_NONBLOCK on the tty stdout fd. The second fix was to pass the
actual result of the write back to the caller so they can react to it.
In the TerminalSurface we now check if the write was successful and
if not we buffer the data and try again later.
Change-Id: Ibc92cce57fad88b5e9aa325197b42e17bec5e746
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
... instead of a IOptionsPage-derived class.
Change-Id: Ica45b1752fc4e6f83e9dfae25c5e9dcd1fd9c9ba
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
It hasn't been about just deploying Qt for a very long time.
Change-Id: I72fb070db505909500d2e68f2bafb198c3342c2b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
A confusing amount of TextCommand or Utils::Command objects or
-returning functions were called 'command'. Rename a few to make
future reasoning simpler.
Change-Id: I872b2e841cb40a4533e5ebcd37cb05489158cec7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>