Commit Graph

61529 Commits

Author SHA1 Message Date
Aleksei German
1278c01c1c QmlDesigner Tool bar for Binding Editor
Task: QDS-843
Change-Id: I8faa5816067ee8de91fd225d856d6bac2a6eda58
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-10-15 13:10:30 +00:00
Thomas Hartmann
18ff97581a QmlDesigner: Show 3D scene with multiple objects
A View3D can have multiple root nodes, which are
automatically aggregated in a single root node.

Change-Id: I3ad11eff5a8beadbd53f0fc8cdcaecd78772768b
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-15 13:08:57 +00:00
Thomas Hartmann
db3dc34a12 QmlDesigner: Introduce QMLDESIGNER_QUICK3D_MODE
We should enable the 3d edit mode only, if there is
QtQuick3D import. Additionally there should also be an option in the UI.

Change-Id: I2010f2cdd6546c63a2263b8ee02480d4f13177c2
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-15 12:43:27 +00:00
Thomas Hartmann
41a7cd15be QmlDesigner: Fix assert
TimelineWidget::invalidateTimelineDuration() is called
by TimelineView::instancePropertyChanged(), which is a callback
from the model.

Those callbacks are not supposed to mutate the model and write
access to the model will trigger an assert.
The method setCurrentFrame() calls ModelNode::setAuxiliaryData().
The reasoning for this behavior is to avoid events casades from
the get go and to avoid that a view has a side effect on
the operation of another view.
This way we also avoid any circular information flow in the application.

In theory a view should never act as a 'gatekeeper' like in this case.
The simple 'hack' for trivial cases is to use a timer.
Generally we try to move the logic into the model in such cases.

Change-Id: I0b46bb38ee0a9603d4617f1a13d8cfcd2e7378b8
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2019-10-15 09:08:13 +00:00
Christian Kandeler
c13b20f160 Target setup page: Do not dereference potentially invalid Target pointer
Fixes: QTCREATORBUG-23075
Change-Id: I60d332b3ff18cf7c83e63cb87730b44ee2a47502
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-15 09:03:45 +00:00
Christian Stenger
982344a799 Dumper: Remove old workaround
This part had been added for lldb provided by Xcode 8.
Even LLDB 3.10 is rather old, so probably no more necessary.

Change-Id: I823ee15869cc60cb8504fa6969758b5f7c3a74ab
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2019-10-15 04:42:06 +00:00
Thomas Hartmann
5b325b1748 QmlDesigner: Do not try to create objects with invalid version
Change-Id: I15eb8cf006bf8a58eaba4140f062fbf14e417f47
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-14 18:29:20 +00:00
Thomas Hartmann
9a6157becd QmlDesigner: Fix crash
There is no guarantee that the timeline is valid at this point.

Change-Id: I48a31b1f4c305c4764d8bebee9de16e51aec4a47
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-14 18:29:01 +00:00
Alessandro Portale
c5bcac1cdd McuSupport: Split up package creation in options page
Shorter functions.

Change-Id: Ia984c13d2d6810f194975fa905d0a019415053ea
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-14 15:38:15 +00:00
Thomas Hartmann
684b516dc0 QmlDesigner: Add missing const
Change-Id: I144c53bd3c9d1fe49edb377a5cc724562ea53d07
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-14 13:38:27 +00:00
Alessandro Portale
874f0119b5 McuSupport: Adjust application template to Qul_0.2.0
After update to 0.2.0, QUL_ADD_QML -> qul_target_qml_sources

Change-Id: Ia1e77f76b9c6aca6e1f4578ef53c5eb7246fffa7
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-14 13:37:25 +00:00
Thomas Hartmann
14ab9db519 QmlDesigner: Fix keyboard focus on mac for 3D edit view
We used LSUIElement and QT_MAC_DISABLE_FOREGROUND_APPLICATION_TRANSFORM
to hide the puppet process on macOS.
Unfortunately such a process cannot get any keyboard focus.

Change-Id: I73ae919a6a2fd5a733e92a37541baccddc135326
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Pasi Keränen <pasi.keranen@qt.io>
2019-10-14 11:31:46 +00:00
Tobias Hunger
0a74ca6f8c ProjectExplorer: Fix broken layout on Run settings page
The Deployment and Run settings were too small.

Change-Id: I98108842a18b9cd7ea9ecf87eaf433df181a215b
Reviewed-by: hjk <hjk@qt.io>
2019-10-14 10:50:27 +00:00
Denis Shienkov
f9c23402e1 BareMetal: Handle missed SDCC compiler errors
... in a form like:

 main.c:11:21: error: macro "usb_disconnect" passed 1 arguments, but takes just 0

Fixes: QTCREATORBUG-23085
Change-Id: I749539881606d27aa0cd4c2fc1c136484d13976c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-14 09:22:04 +00:00
Denis Shienkov
9035a8b17e BareMetal: Handle missed SDCC assembler errors
... in a form like:

 autovec_sdcc.a51:7: Error: <o> .org in REL area or directive / mnemonic error
 autovec_sdcc.a51:8: Error: <o> .org in REL area or directive / mnemonic error
 autovec_sdcc.a51:8: Error: <q> missing or improper operators, terminators, or delimiters

Fixes: QTCREATORBUG-23084
Change-Id: I346b1970a90bc515a647477d089e66e742567733
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-14 09:21:15 +00:00
Denis Shienkov
6d089f33f7 BareMetal: Parse missed SDCC compiler warning
... in a form like:

 at 1: warning 117: unknown compiler option '--xram-loc2' ignored

Fixes: QTCREATORBUG-23083
Change-Id: If428cb7317d0c13246fcb0c1741d015a80af91b7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-14 09:19:55 +00:00
Vikas Pachdha
9dd96adb7c iOS: Fix failure to run an app on iOS version 13 onwards
Use secure API to start the gdbserver service

Task-number: QTCREATORBUG-22950
Change-Id: I685162b7ec90d738c5f42e094f5046367936530f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-10-14 08:31:13 +00:00
Aleksei German
b84fecfb7d QmlDesigner Fix for ColorButton dragging issue
Change-Id: I2e69a732f6dcdbbe8bf5f0516df76736971d96cd
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-11 14:43:55 +00:00
Denis Shienkov
5535bc04ee BareMetal: Handle warnings from BL51 linker
It handles an additional linker warnings, in a form like:

 *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    SEGMENT: ?PR?GPIO_TASK?GPIO

Change-Id: I58420ea19d4b562c0307be11808be435e02a3f27
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-11 13:09:45 +00:00
Nikolai Kosjar
6ee08c0289 Clang: Simplify include paths in tests
* The paths on Linux are always "canonicalized" by
  GccToolChain::gccHeaderPaths(). Therefore, canonicalize the paths in the
  tests, soo.
* Introduce some helper functions to shorten the code.
* Do not break the strings literal paths as this complicates comparing
  them.

Change-Id: I0fc8acde0e455a7974baae0d9fdffd3a4060ff74
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-10-11 13:08:46 +00:00
Nikolai Kosjar
6156c59c62 Clang: Put clang's resource dir after /usr/local/include
...also on Linux.

That's what clang invoked from the command line does.

Change-Id: I59c48d11fab3b944bb42ca7bb4cd9093a735df60
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-10-11 13:08:28 +00:00
Denis Shienkov
ceecd22e5f BareMetal: Improve KEIL parser code a bit
It is makes sense to move a handing code of each
regexp to the separate method to simplify maintenance.

Change-Id: Ibd2c999f2ea48f51dca2ccfcbaada47e4c34e8a6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-11 13:06:39 +00:00
Nikolai Kosjar
85b45920fb Clang: Simplify regex patterns
...by removing pointless backslashes.

'/' is not meta character, therefore escaping it with a backslash is not
needed.

Change-Id: Ic0bd1f85b3eed721cad67f4b4d616352ea9e098a
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-10-11 12:50:03 +00:00
Nikolai Kosjar
5165c037eb Clang: Avoid consuming gcc internal include paths
Given the (default) include paths of GCC, e.g.

 /usr/include/c++/7
 /usr/include/x86_64-linux-gnu/c++/7
 /usr/include/c++/7/backward
 /usr/lib/gcc/x86_64-linux-gnu/7/include
 /usr/local/include
 /usr/lib/gcc/x86_64-linux-gnu/7/include-fixed
 /usr/include/x86_64-linux-gnu
 /usr/include

discard gcc-internal paths like /usr/lib/gcc/x86_64-linux-gnu/7/include
as they are not relevant for clang and even confuse it with regard to
 #include_next.

Paths below the gcc install dir are considered as gcc-internal. The
install dir is queried with

  $ gcc -print-search-dirs

Some GCC distributions, like MinGW, ship the standard library headers in
the install dir. Ensure to not discard these.

Fixes: QTCREATORBUG-22898
Change-Id: Ia85258fb01b72ad073e71390e003fe8268e3b01f
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-11 12:49:06 +00:00
Christian Kandeler
7a87dc0484 TargetSetupPage: More improvements
- Do not claim we are parsing unconfigured projects.
- Use our concept of a "usable" kit in some places that still used just
the kit's "valid" attribute.
- Merge two labels that belong together.
- Get rid of unneeded state and indirections.

Fixes: QTCREATORBUG-22963
Change-Id: I2481439435e92e98b7e0ba5053a1e8843a961aec
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-11 09:22:57 +00:00
Christian Kandeler
e0ebda45db QbsPM: Fix look-up of executable on Desktop
... if installation at build time is disabled and a dedicated install
step exists.

Fixes: QTCREATORBUG-23039
Change-Id: I7115368bb1993ebdb48200d2a9c55c34a7bdceec
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2019-10-11 08:56:00 +00:00
Thomas Hartmann
b6790e82a4 QmlDesigner: Use core profile for edit view
Change-Id: Ic62ec2cc54d9bf30fa41cccdb5b10e9b75c67290
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-11 08:10:56 +00:00
David Schulz
1281774c6a TextEditor: Fix backtab behavior of multi line selection
Check available spaces infront of current column on each line before
removing the text.

Fixes: QTCREATORBUG-16970
Change-Id: Ie6560ce706297f6818a84ca863abc9b106728890
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-11 06:24:26 +00:00
Christian Stenger
41f8186d68 QmlDesigner: Fix missing include
Amends ed97d73da8.

Change-Id: Ie2168164bacb326513b5481760f5c23db4c27c40
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-11 05:31:02 +00:00
Orgad Shaneh
facebc6184 CMake: Fix build with Clang 9
Change-Id: Idf82175de1670259abd27df54b2c776e943a11e8
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2019-10-10 15:59:34 +00:00
Orgad Shaneh
b519c8bc92 Utils: Fix display of first argument
Broke in 00b692e67e.

Change-Id: I65fae0f439a49ccce136626c7c88acd9c9c1693b
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2019-10-10 15:14:55 +00:00
Ulf Hermann
3d21c7fdc3 Retain ".pragma library" when reformatting JavaScript files
For ".pragma library" there is a special flag in QmlJS::Directives.
We just need to actually set the flag and query it when re-emitting the
code.

Change-Id: Ia3455fda18aba3219b02ecf092bb28987a6ccef5
Fixes: QTCREATORBUG-22326
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-10 14:05:18 +00:00
Tommi Pekkala
c4aa6d71d9 Fix publickey deployment issue
Qtcreator was unable to create .ssh dir so this will fix it.

Task-number: QTCREATORBUG-22591
Change-Id: I11d6f8e0ccc88ff3bff956edb1912e59ab70092d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-10 13:44:20 +00:00
Christian Stenger
4b76f6c65d AutoTest: Fix Run Under Cursor for GTest
Broke while introducing TestSuite and following the
official terms.
Amends 6189745a3b.

Fixes: QTCREATORBUG-23068
Change-Id: I02a8c72debface1e15b2e1901ec6115e210a0312
Reviewed-by: pawelrutka <prutka13@gmail.com>
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-10 13:19:31 +00:00
Mahmoud Badri
ed97d73da8 Snap duration bar handles movement
When dragging a timeline's duration bar start, end, or center handle
while shift is down, snap the movement.

Task-number: QDS-1068
Change-Id: I713e27167ce358ba3e1e468b779363dd9f17b2ae
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-10 12:10:34 +00:00
Ulf Hermann
4d7c644268 Fix parsing of QML version tokens in the presence of "as Foo"
The previous code would omit the minor version, leading to a test
failure.

Change-Id: I3dccee5252a54806f8e1e5bf5c49eff149d9b936
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-10 11:34:52 +00:00
Christian Stenger
4636bb6907 Debugger: Prevent crash on shutdown
It may happen that the global log window gets destroyed
before the log windows of a running engine when
QC is closed after an unsuccessful attempt to debug.
Avoid accessing it when trying to write output that
has not been processed so far.

Change-Id: I41296cc37bab1e4f1272b05dda1979d813981aa7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-10 11:03:45 +00:00
Mariana Meireles
26cb6994c4 Corrects the project type supported
Change-Id: I9434ed86d4d20e44abbe2cd07f9a7d838a53761a
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-10-10 10:26:24 +00:00
Cristian Adam
0097ffc41a CMake Build: Add build for winrtdebughelper
Fixes: QTCREATORBUG-22919
Change-Id: I22c24b4633e16b74fceab8122e7f95736768377b
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-10 10:04:23 +00:00
Cristian Adam
85273abf90 CMake Build: Add support for qtcdebugger
Fixes: QTCREATORBUG-22920
Change-Id: I196ba1d987e95a5e33f3b6de2aa70b6720bc7f33
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-10 09:40:38 +00:00
Cristian Adam
d2c6a8ffb9 CMake Build: Add build for wininterrupt
Fixes: QTCREATORBUG-22918
Change-Id: I5158a5356c9d083b1bc43bd028e767d16a9ecab5
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-10 09:40:29 +00:00
Cristian Adam
84756c69e9 CMake: Use non translatable names for build directory names
The CMake build types names are translated, which is fine in UI,
but we shouldn't use the translations in the directory name.

Debug/Release/RelMinSize/RelWithDebInfo are known in CMake world,
and don't cause any problems with MSVC when having translations
for Russian / Japanese.

Fixes: QTCREATORBUG-19984
Change-Id: Ia19326f0ca5d277b549f1b82bc569518f7b5c441
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2019-10-10 09:40:05 +00:00
Christian Kandeler
8205eadeb1 BareMetal: Add deploy configuration
So that users can add custom deploy steps.

Fixes: QTCREATORBUG-22977
Change-Id: I4c8f881d5721c73fecb6e34e5e010fe8b82edcde
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-10 08:34:47 +00:00
Orgad Shaneh
132abc789d ProjectExplorer: Apply low priority build immediately
The MakeSteps are instantiated when the project is opened, but if the low
priority setting is changed after that, it was not applied until reopening
the project, because the setting was only tested on the ctor.

Moved the setting test to actual execution.

Task-number: QTCREATORBUG-23048
Change-Id: Ie0bcbe07f6d9a09b173f7e0fa6f1d5d12b4ac601
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-10-10 08:07:44 +00:00
Christian Kandeler
d56e88d36a RemoteLinux: Fix look-up of remote file path in deployment data
If the deployment configuration contains an "install into temp dir"
step, then the local file paths of the binaries built by the build tool
will not be in the list of deployable files, because all deployables
come from the temporary install dir. Therefore, look for just a file
name match as a fallback.

Fixes: QTCREATORBUG-21235
Change-Id: Ie3fad515515b4f28cc6bdef1254f4c05a0557569
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-10-10 07:42:18 +00:00
Alessandro Portale
2f7aafbe09 McuSupport: Use module version for import in wizard generated code
Allows Qt Creator to work with the qml document, e.g. open it in Qt
Quick Designer. Qul does not require an import version but accepts one.

Change-Id: Idd52bc855b31cf7d25a8a6b524f629e2904bda17
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-10-10 06:58:32 +00:00
Thomas Hartmann
4aee89d472 QmlDesigner: Fix states for QmlVisualNode
Adding, removing and editing states does now work for
all QmlVisualNodes and is not restricted to QmlItemNode anymore.
This makes using states possible for scenes that have a QtQuick3D.Node
as root object.

Change-Id: I51fb17434e7e663823c8c8962e683634324d86d0
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-09 19:55:39 +00:00
Cristian Adam
d769db2c78 CMake Build: Enable PCH build with the latest CMake version
The almost 3.16 CMake version has support for C and C++ PCHs.
The library that creates the shared PCHs needs to have also
a dummy C file.

Change-Id: Ifc9e2ae43522dd5fda5261e938901f6a8ad1898c
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-10-09 15:52:08 +00:00
Cristian Adam
fe85b9cd82 CMake Project: Make sure the tree has focus after adding an item
Adding items and losing them in the tree was a bad usability feature.
On Windows that was the behavior.

Change-Id: Ic0f9b41fce79844aaf8803713cb0220c4618c127
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2019-10-09 15:21:48 +00:00
Cristian Adam
e186df1ba3 CMake: Properly reset CMakeTool on file path change
Fixes: QTCREATORBUG-18530
Change-Id: I46842aeb4bcfc2ae1267a485fd454b888cd1a885
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2019-10-09 14:27:57 +00:00