V4 debugger: retrieve formals and locals.

Change-Id: I47507a4d7d1b429b9c43ed3a7822079efe577327
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Doc: Fixed broken links

There were many links (including the broken) on the Qt Quick
index page and QML type reference page using the html file name
to link to a page or a section within a page. Using html file
reference in a link is not a good approach as qdoc does not give
complete control to the author to define the html file name. This
change updates all such links to use the page \title and \target
names, which are considered to be better ways to link.

Task-number:QTBUG-33360
Change-Id: Ibd1b1e3223a7e205bbdcf21b1b7f6e515749c5c9
Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Clear text node references after sub-tree has been cleaned up.

Task-number: QTBUG-34181
Change-Id: I861e192cee2c683efee79e7404a5c9d70b60691f
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Item documentation: visibleChildren is a list of items, not a real

Followup to I5ec541226fabd72c05ce8ccb8bb7e56f6ec7717a

Task-number: QTBUG-22724
Change-Id: I3f74fda29faba4054c5bb97aad4735f7c5f0f278
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Make qtdeclarative compile with -no-gui

Change-Id: I079f5e09a0099550348388379c496fc8f8cfa27c
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
remove useless CONFIG-=app_bundle

qt_app.prf does this for us.

Change-Id: Ifdbed1028a170f1a5040d9ef38c0adc89ed6da52
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
untangle SUBDIRS

this also excludes qmlprofiler on android, as it is not a host tool.

Change-Id: I0bc2582fa4b951ea1f871cd67ef05d0d15ed9763
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
sanitize dependencies surrounding qmlimportscanner

the tool's subdir must come before its dependants, otherwise qmake -r is
broken (ok, that's mostly academical nowadays).
also remove the unnecessary dependencies.

Change-Id: Idf785522d466d4abb5f864ef4b66784024322339
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
simplify host_build logic again

qt_tool handles bootstrapping fully automatically.

This reverts commit 0fc040ef70513ccaeb9e96f7ca05a3df4d6c7879,
and adds some more.

Change-Id: Icffcf7f487dbf660678c7ee622f94b1063fef7e3
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Explicitly mark subdirs as host_builds in SUBDIRS template

Allows post-processing code to exclude recursing into host_build subdirs.
The alternative would be to have the SUBDIRS logic pre-parse the subdir
project to check if it's a host_build, but that might have a performance
impact, so it's better to leave the information explicit in the subdir
project file.

Change-Id: I468ceeaedce54b13bf672f82b9dcf04cc19d15e1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Use finalUrl in QQmlTypeLoader::Blob::addPragma to fix a bug.

There was a bug in addPragma where url() was being used instead of
finalUrl(). This resulted in an error finding the type if selectors
were used. This patch includes the fix and adds a unit test to cover
the use case.

Change-Id: I18b6c73e96af2e1464931de76f1f8fd804746d82
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Make sure QQuickBorderImage sets its pixmapChanged dirtyflag

Task-number: QTBUG-34298

Change-Id: Ie66f0bdd705335491496f5d583193b32cb7749f3
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Screen attached property: expose pixelDensity property

Because logicalPixelDensity is different than physical density on
multiple platforms, having the actual density is critical to be able
to design resolution-independent controls.

Change-Id: I06bbdc6e6869718058a796ca737668ce69802f2b
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
QtQuick.Dialogs: resolution-independent controls use actual resolution

logicalPixelDensity ended up hard-coded on Android, which made the
buttons and the FileDialog too small again.

Change-Id: Ic1805246c4466d7167d422ba48ae5ec37978d332
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Fix rendernode bug and enable rendernode test.

The bug in the renderer was that the viewport was set before
we called the render node, leaving us with the viewport
set by the render node as opposed to the viewport of the
renderer.

The render node API is a crude and intrusive hack which was added for
webkit back in the day. With the introduction of webengine it becomes
less relevant, but it should still work.

Change-Id: I66a1e3047e018ad6c0bb28044851e9fc65da59cc
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Disable the stack slot allocator

The allocator doesn't work correctly and sometimes assigns
temps with overlapping ranges to the same stack slot.

This fixes crypto.js and qt quick controls autotests running
with the interpreter.

Change-Id: If3d0f90edfac669f89da5174cd58eb345d48f2b8
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Rework exception handling

Start the work to remove c++ exceptions from our JS
exception handling. Rather rely on engine->hasException.
Check the flag after we return from any runtime call in the
JIT.

Implement new try/catch handling code in qv4codegen and
for the JIT that doesn't rely on exceptions. As an added
bonus, we can remove the Try statement in the IR.

Change-Id: Ic95addd6ae03371c43c47e04cac26afdce23a061
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Rework IR code generation for try/catch/finally

Simplify the generated code. Add a special block to catch
exceptions thrown inside a catch() statement.

store the exception on the stack when entering finally and
rethrow it at the end. This ensure correct behavior for
break/continue/return statements inside finally.

Don't check for exceptions after calling push_catch_scope
and pop_scope in the JIT'ed code. This can lead to infinite
loops when throwing inside an exception handler.

Change-Id: I67e9325794e2fd25b0773b21e02fbaadb43faab0

Change-Id: Ic1ea9c0c43eec1d49177dc1ab4552a1da04e96fe
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Implement new exception handling for moth

Add the required instructions and check for
exceptions in the engine before storing any
results.

Change-Id: Ibfaf904d659859e8012920270825211ba202c63d
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Exit the codegen in case we have thrown a parse error

This makes sure we get the right exception in the engine
in case there are multiple parse errors in the code, and
avoids running into assertions.

Change-Id: I8a11c6d043d09caf57a3e4c6aad5834e99cc1761
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>