Commit Graph

7346 Commits

Author SHA1 Message Date
hjk 74b6e90b15 ProjectExplorer: Add LayoutBuilder::addRow() convenience function
... and use it in the DebuggerRunConfigurationAspect.

Change-Id: I1079f1a307d5e4b286d32570c48299d296fa3061
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-08-05 10:53:50 +00:00
hjk 78406916a3 Debugger: Avoid use of QHash::values(...) in QmlEngine
This will be gone in Qt6 and seems unnecessary here as insertion
into the hash explicitly checks containment first, so this was
effectively not used as QMultiHash anyway.

Change-Id: I3f6ef9473930f72ee9b5f81f3623829d63619cc0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-31 13:16:40 +00:00
hjk 6c590531b0 Small Qt 6 migration stuff
- qsizetype vs int
- QJsonValue vs QJsonValueRef
- #include for metatype system

Task-number: QTCREATORBUG-24098
Change-Id: I066d9e3d5c35766b8aa3adc1c5835b23feb20b37
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-29 14:03:19 +00:00
hjk 43b658e9e7 Utils: Drop Utils::SkipEmptyParts again
We require Qt 5.14 nowadays.

Change-Id: Iff245257d3cb19207007c0445ee13814e66152dd
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-21 12:42:27 +00:00
David Schulz 9026dd0033 Debugger: prefer newer debuggers on initialization
Change-Id: If8a6af6b00006eca68ddcb49f900f0135979be22
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-20 04:37:47 +00:00
Christian Stenger 5e8e1a36ec Debugger: Replace QRegExp by QRegularExpression
Task-number: QTCREATORBUG-24098
Change-Id: I3c72ff8ab37c71441227668aea780dea19219c71
Reviewed-by: hjk <hjk@qt.io>
2020-07-13 12:09:28 +00:00
Eike Ziller 10fd921e26 Merge remote-tracking branch 'origin/4.13'
Change-Id: I4240608a7a0529bb2f6612ba84abae46166458f5
2020-07-10 08:02:27 +02:00
hjk b9f47c5f02 Some Qt6 porting
- QVector cannot be forward-declared anymore as it is a typedef in Qt 6.
- 64 bit sizes cause warnings in printf("%d")

Task-number: QTCREATORBUG-24098
Change-Id: I75fc2a1113fb7a6e8c298e985eb7eb8d1a4c21b0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-09 09:59:54 +00:00
Orgad Shaneh 8951ddfd62 Debugger: Support sysroot override
Sometimes the same toolchain can be used with different versions of
sysroots. Support this in command-line and dialogs.

Change-Id: Id49f8e8c50f4856e979eecbbdebc680b57dc69b2
Reviewed-by: hjk <hjk@qt.io>
2020-07-06 16:04:49 +00:00
Leena Miettinen c1df1e5d2e Debugger: Fix UI text punctuation
Change-Id: I022d38ed62293d9db8632efb1ae63ee882e381c9
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-06 13:42:12 +00:00
hjk e1c88116b3 Core/Utils: Migrate further to Utils::Id
The coreplugin/id.h header is kept for downstream for now.

Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66
(cherry picked from commit 430a33dcd9)
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-06 11:15:18 +00:00
hjk 5dd2985a65 Debugger: Use QRegularExpression in QmlInspector
Change-Id: Ib359738c07a5531fe66656bce5ad42c39e4a9ab2
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2020-06-24 06:28:13 +00:00
hjk f7242cdce9 Debugger: Some compilation with Qt 6
Change-Id: Ifffe68a3c902bbad026919171ac906ae05ec86f2
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-06-24 05:43:51 +00:00
Artur Shepilko 3fddc4c475 Debugger: Fix a compiler warning about uninitialized variable use
Change-Id: I9e2ce85b3754bf7c832a8ca32412a2c9900344ef
Reviewed-by: hjk <hjk@qt.io>
2020-06-23 16:31:39 +00:00
hjk c30eab99e3 Debugger: Port cdbengine to QRegularExpression
Change-Id: Ib957e2696b5bc791ecc0e35676edaf8d0a2467a4
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-06-23 05:53:21 +00:00
hjk ae2cc246c3 Debugger: Remove some uses of QRegExp
Change-Id: Ie5bd429468ac0e68fb48f4916d143b5812f54d77
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-06-19 11:15:14 +00:00
Christian Stenger 281ec36ad8 Debugger: Replace some QRegExp with QRegularExpression
Task-number: QTCREATORBUG-24098
Change-Id: I34b8ebee3d58fb724c963098d988fc1955b2d010
Reviewed-by: hjk <hjk@qt.io>
2020-06-19 10:49:23 +00:00
Eike Ziller 1b431fe271 Move Id from Core to Utils
And add a compatibility wrapper for Core::Id, so we don't have to rename
all occurrences from Core::Id to Utils::Id.

This allows us to use Id also in Utils, which makes it possible to e.g.
move Core::InfoBar to Utils without work arounds.

Change-Id: I5555d05b4e52f09d501dbfe5d91252a982a97c61
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2020-06-18 05:58:23 +00:00
Eike Ziller 0eefc5b70d Add a menu to Debug mode that switches perspectives
Set a menu for switching perspectives on the debug mode icon. When icons
& text are shown for the modes, there is an additional arrow to the
right of the mode that can be clicked to open the menu. This
functionality was added in 4.1 for that purpose, finally use it.
Do not show and arrow in "Icons Only" mode, so it stays small, but make
it available on right-click as well.

Change-Id: If19877b5231b7f01f0b3fd98cf65e8eaf9da1a5f
Reviewed-by: hjk <hjk@qt.io>
2020-06-17 06:48:17 +00:00
hjk 1c81a3b3e8 All: Use Utils::SkipEmptyParts
Task-number: QTCREATORBUG-24098
Change-Id: Iab45de9a9c17ddc39a0e343b1175d4f6cb94b098
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-06-17 05:55:25 +00:00
hjk 816a1df45a Debugger: Remove one use of QStringRef
This is a guinea pig to check whether using u"..." is ok
nowadays.

Change-Id: I402816d8892211e67fb6227cd0441c20c0b33818
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-06-16 07:35:04 +00:00
hjk 82e25e71c8 Debugger: Remove left-over comment
Change-Id: I5fecaed75cb2b5368e904ea4202657e56361f0d5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-06-15 15:02:02 +00:00
Alessandro Portale 0be309bcf1 Various places: performance-for-range-copy
Change-Id: I475990d32a5211d31a77782667a2dfedba134137
Reviewed-by: hjk <hjk@qt.io>
2020-06-15 05:58:46 +00:00
hjk afde217f28 Debugger: Convert a QRegExp use in source path map
Task-number: QTCREATORBUG-24098
Change-Id: I1ee441a60cbf362d38459bcef869e02d7fca9b7e
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-06-10 07:07:23 +00:00
Eike Ziller d1a2de747e Debugger: Use dialogParent instead of mainWindow
Slipped through in 5b364de168

Change-Id: If316f7310b3861630b58ef9f8fb152cc30de8ef1
Reviewed-by: hjk <hjk@qt.io>
2020-06-03 11:45:48 +00:00
Eike Ziller 5b364de168 Use dialogParent() instead of mainWindow()
There are very few reasons to use mainWindow() directly.
Especially for modal dialogs, using dialogParent() is important, since
that guarantees the stacking order in case of other dialogs currently
being open.

Change-Id: I7ad2c23c5034b43195eb35cfe405932a7ea003e6
Reviewed-by: hjk <hjk@qt.io>
2020-06-02 11:44:53 +00:00
hjk 14666c801a Debugger: Drop 'set print object on' for GDB
This does not seem to affect the code paths we are using through
Python.

Task-number: QTCREATORBUG-23965
Change-Id: I2e20d6d3c1937d56293e81b74c453e83a92ddc4c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-05-25 10:01:03 +00:00
David Schulz 317d0a77a1 Revert "Debugger: use correct environment for the cdb process"
This reverts commit 4749550fbc.

Reason for revert: The debugger environment doesn't contain all path adjustments from the run settings in the project mode.

Fixes: QTCREATORBUG-24045
Change-Id: Ic714e7b99d51d51f74297f916817f302e8c4e1bb
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-05-20 06:21:30 +00:00
hjk c6007f5a2c Debugger: Funnel some LLDB message to the AppOutputPane
This could be extended to the other bridges, not done in this patch.

Change-Id: I620290049b7c95f8e3fb7584d4ca99a42fd343d4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-05-18 06:47:10 +00:00
hjk 73865034c6 Android: Use adb:// in ConnectRemote
This is apparently the right thing to do anyway and also helps to
select the right emulator or device when multiple ones are connected.

In that situation otherwise an error

  "Expected a single connected device, got instead 2 -
    try setting 'ANDROID_SERIAL'"

would occur.

Change-Id: I650a221d1a321d4dd9035411f85c7a68244c20e2
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2020-05-15 11:37:35 +00:00
Christian Stenger 5104798b8c Check for selection support of clipboard
Setting the data on a non-supported MIME data will fail
and get deleted.
Checking beforehand gets rid of a warning printed by
QClipboard.

Change-Id: I5b5a371ce5b904f61a1aed5ea21a98908155357b
Reviewed-by: hjk <hjk@qt.io>
2020-05-14 13:19:18 +00:00
Christian Kandeler b02f6b5d30 ProjectExplorer: Give the Task class an explicit summary
We'd like to create more useful tasks from compiler output, that is, try
harder to identify consecutive lines that refer to the same issue and
create one task for them, rather than one for each line. In such
"aggregate" tasks, the first line will not necessarily carry the main
information. Therefore, we make it explicit what this main information
is by introducing a dedicated summary member.
Also streamline the font handling for compile tasks.

Change-Id: I933f2643a13c710dab1ab548c56669b129026eb5
Reviewed-by: hjk <hjk@qt.io>
2020-05-14 08:23:59 +00:00
Nikolai Kosjar cdc97f523e Debugger: Fix warning about unused variable
Change-Id: Ib26f94d54f7e9570efa69cdfefa4253b640bc664
Reviewed-by: hjk <hjk@qt.io>
2020-05-14 06:17:54 +00:00
David Schulz 4749550fbc Debugger: use correct environment for the cdb process
Change-Id: I7027be25df7380810b7c8fbd0e9bc5b9abd67dc3
Reviewed-by: hjk <hjk@qt.io>
2020-05-13 10:59:10 +00:00
hjk 6313489e2c Debugger: And possibility to modify debugger process environment
Might be useful to set ANDROID_SERIAL to get hold of the right device
when multiple are connected.

Change-Id: I8f1f02552a9f57ee8a9ed35ae696d137cc85fe52
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-05-13 09:07:58 +00:00
Christian Kandeler eb96f9900a Fix clang 10 warnings about unnecessary copies in range loops
Change-Id: I3b57869b5a04528518bc432b76768b01e3f53e81
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-05-12 13:45:43 +00:00
Eike Ziller 20ef5c6de3 Merge remote-tracking branch 'origin/4.12'
Change-Id: Ibbf9f16677a58bdcdd3ce63701ffa34db6f44916
2020-05-11 11:36:22 +02:00
Sebastian Verling 38e13e4216 add lower case a-f as address match
As the addresses were only matched against upper case letters
all registers with lower case characters were not correctly parsed
and had zero values

Change-Id: Idc3da0a33b9f075d7a209cad74768e81cced2d67
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: hjk <hjk@qt.io>
2020-05-07 09:34:48 +00:00
hjk 4744473555 Debugger: Start breakpoint manipulation syncronously
The original reason for this was gdb's inability to set certain
break point properties in one go (commands and  so parts of the setup are async
anyway, and using only async paths made the overall setup simpler.
The need to tweak some properties asyncronously still remains, but
for the caller side it's better when at least the initial round is
synchronous.

Change-Id: Ibe542533a6026c7f0f4e49f4244b7e9d2aea7062
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-05-07 07:12:57 +00:00
hjk 2dfa539b96 Debugger: Avoid race condition on setting initial LLDB breakpoints
Breakpoints inserting is async, so they did end up when the process
was running already.

This adds an extra roundtrip. Better, but more intrusive solution
might be to set the initial breakpoints synchronously, but that
would touch all engines.

Change-Id: Ia728a9c5ae8f1d6d29d3cc02b9e2d04952091fe9
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-05-07 07:12:46 +00:00
Eike Ziller be73f41ad4 Merge remote-tracking branch 'origin/4.12'
Change-Id: Ib95ec2c50c4bbaefd4ed0ec5af191ccc846c824f
2020-05-04 10:52:34 +02:00
David Schulz 09b69b274d Debugger: Fix crash after adjusting font size
Change-Id: Ic3b415a3791968f972d2f69ec71c8012c572995d
Fixes: QTCREATORBUG-14385
Reviewed-by: hjk <hjk@qt.io>
2020-05-04 04:22:56 +00:00
Thiago Macieira 0bd53651d4 Fix compatibility with Qt 6 QMutex's non-recursive
QMutex in Qt 6 cannot be recursive. So don't call the constructor to pass the
option that isn't needed.

Change-Id: I9709abb1c3734e10a7defffd1607e76745b5cf0a
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2020-04-30 16:58:11 +00:00
David Schulz 7d429c54e3 Debugger: remove unused variable
Change-Id: I7cddb9cd8ec3b058e04409e6a56490297660ed03
Reviewed-by: hjk <hjk@qt.io>
2020-04-30 06:23:53 +00:00
Eike Ziller e9661e43cb Merge remote-tracking branch 'origin/4.12'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/libs/qtcreatorcdbext/qtcreatorcdbextension.cpp

Change-Id: If6963d1ef7b5a1ea6343f68c8e7ce6fb5f482f21
2020-04-28 15:48:36 +02:00
hjk 1352ec636f Debugger: Simplify 'long long int' to 'long long' in display
This also fixes the StdMap test case with LLDB 9.0.0

Change-Id: I0e4580b7e64d62664a81fd75a5e142717bf3563a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-04-28 09:14:07 +00:00
David Schulz f71286db98 Debugger: evaluate expression before assigning when using python dumper
Fixes: QTCREATORBUG-23711
Change-Id: Ic386b3e4bdd948e74f52116248de1b33a35fe03a
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-04-24 10:58:07 +00:00
Christian Kandeler 02785342ac Fix some clang warnings about unused lambda captures
There are more, but we need to keep those because MSVC believes they are
required. This is the subset that satisifies both compilers.

Change-Id: I0b0a63d5496acc119a7f0513d3a1da0b76fa1fca
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-04-24 08:44:58 +00:00
hjk 4ba131bdd6 Debugger: Handle failed breakpoints as unclaimed
Change-Id: I02a44db5391b174e75fc326ce217b271ee73c464
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-04-24 06:12:35 +00:00
Christian Kandeler 6ad4cf4695 Debugger: Remove unused variable
Change-Id: Ib6e2c2078ff655ca2ca7c841e5f6415f0d63ef6c
Reviewed-by: hjk <hjk@qt.io>
2020-04-23 10:41:28 +00:00