Re-enable the options after the attributes have their final names.
Add options for enabling scaling.
This reverts commit 051684f125.
Task-number: QTBUG-46615
Task-number: QTBUG-48379
Change-Id: If862061c688f9febff3b9511a4f19649b07d2011
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
To be re-enabled once the attribute names are final.
Task-number: QTBUG-46615
Change-Id: Id463167ab102e3c2f3af4fe39675853eae3bb851
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
Loop over argv to filter out the arguments that need
to be set before Q[Gui]Application creation and use
QCoreApplication::arguments() for the remaining arguments.
This prevents Qt's arguments (-geometry/-platform...)
from interfering with the URL argument check.
Change-Id: I2a88478534179b79578f7fb979a6b264a4fae44d
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Change the argument parsing to use QUrl::fromUserInput()
defaulting to local files. Do version check only for local files.
Wait until loading is complete.
Change-Id: I0261958d7cf2e67fd23407c03d89486703bebd52
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Print the build information and connect to
QQuickWindow::openglContextCreated() to print information on the
GL driver (similar to qtdiag).
Set a window title indicating render type and Qt version.
Task-number: QTBUG-46030
Change-Id: Ib4376126bf9c63f4cab8cb530ff1da66394b634b
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Replace boolean option controlling context sharing by a vector of
QCoreApplication attributes (bearing in mind that for example
High DPI changes might add more attributes) and add the GL switching
attributes.
Task-number: QTBUG-46030
Change-Id: I934dd8910b7b50ec96ae9e00823649c9df6a00ef
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Qt copyrights are now in The Qt Company, so we could update the source
code headers accordingly. In the same go we should also fix the links to
point to qt.io.
Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9
Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
This feature is effectively not maintained, experimental and undocumented.
Consensus on the mailing list is to remove it:
http://lists.qt-project.org/pipermail/development/2014-December/019384.html
Change-Id: Iaa73b3e90806c338ef81bbd4307ddd2addd37964
Reviewed-by: Christopher Adams <chris.adams@jollamobile.com>
We can use the new application attribute for this now.
Change-Id: Ia0a6d13d36316ec9becfb5d3251b8461ac73a2d0
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
They are not meant to be used like that. If you want formatted output to
the console, use stdio.h functions or std::cout. Otherwise, you get
something like:
$ qmlscene -h
[233103.196] (126848)(usage|?qmlscene?|__libc_start_main|?qmlscene?): Usage: qmlscene [options] <filename>
[233103.197] (126848)(usage|?qmlscene?|__libc_start_main|?qmlscene?):
[233103.197] (126848)(usage|?qmlscene?|__libc_start_main|?qmlscene?): Options:
[233103.198] (126848)(usage|?qmlscene?|__libc_start_main|?qmlscene?): --maximized ............................... Run maximized
[...]
I've replaced all qDebug with puts/printf and most qWarning with fprintf
to stderr. In my opinion, some of the qWarnings aren't errors, so I
replaced those with puts/printf too.
Change-Id: I3e493950bc4a588059fec6c7441b010c2780dffd
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
This reverts commit 427646b8d7.
It seems that it should have been more correct, but we are still not
shipping English translations, and static QString find_translation()
in qtranslator.cpp will return any language which is in
QLocale::uiLanguages() for which the translation file is found.
That is a long list on OSX.
Reverting the patch means find_translation() is not called in
such cases. This change can be re-done whenever we are more sure
that the attempt to find a translation will succeed in finding a
sensible one, or fall back to not translating, rather than choosing
a language that the user didn't intend.
Task-number: QTBUG-41977
Change-Id: I425946cc71cec96b4f38629eb2b7e80220c5236d
Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
As the docs explain, the variant of QTranslator::load() taking a
const QLocale& is better because it "uses QLocale::uiLanguages()
and not simply the locale name, which refers to the formatting of
dates and numbers and not necessarily the UI language." And, using
a default-constructed QLocale permits QLocale::setDefault() to
override the system locale, so for example an application's
main.cpp can do that before constructing a QQmlApplicationEngine.
Task-number: QTBUG-7329
Change-Id: Ia29a4c894087c92b071c0fe484728866f2660fe6
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
It was giving up too early because qmlscene_??.qm doesn't exist.
The file qt_??.qm links to all existing Qt-provided translation files,
so it is enough by itself unless there are application-specific
translations besides.
Change-Id: Iebedf54ddb4eef4f4d7da8a7fade1850a366aee8
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
This affects the location of the QSettings files or registry entries.
Other parts of Qt are using this organization name so it's good to
have all the settings in the same place.
[ChangeLog][QtQuick] tools and examples consistently use the
QtProject organization name
Change-Id: I1fae4eaed0248411fe95dda9572d38006648b162
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
This removes QSGContext::sharedOpenGLContext and replace its uses
with QOpenGLContextPrivate::globalShareContext, which is also going
to be used by QOpenGLWidget and QQuickWidget.
Change-Id: I1e296c3e6832f717caaf31ba7d7b27c06249219b
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
This is required for running QWebEngine inside qmlscene. It can be disabled
with --disable-context-sharing and it remains off in QtQuick. Instead apps have
to use QWebEngine API to enable this, where this patch here is merely
convenience.
Change-Id: I123893a7c8c644c49c66fe2b42d2b7b2e03622d9
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
When using the tools qml and qmlscene with dummy-data it will crash or
behave wrong, due to the dummy-data component will get the state not
ready, if the dummy-data qml-files does an import of another folder or
a js-file. By changing the way of loading dummy-data, by letting
QQmlComponent handle the file opening instead of using the setData()
method, qmlscene and qml will be able to handle this type of
dummy-data.
The tool qml also needed to load the dummy data before loading the
regular components, otherwise the dummy-data would not be ready for the
other components to use.
Task-number: QTBUG-32721
Change-Id: Ia1cc2b2626187e23c7d7313be788202d91b12471
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Propagate error conditions from createVMEMetaObjectAndPropertyCache to the caller
and properly clean up refcounts (using QQmlRefPointer)
Also fixed qmlscene to report errors if create() failed.
Change-Id: I75d984798a197c102078e5d5638ed92f167ab49f
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
The necessity for this is documented in the
QQuickWindow::incubationController() accessor. Bug 31203 is about
writing a custom main() with a QQmlApplicationEngine, not about
qmlscene, but the same workaround is necessary for both. Hopefully
soon we find a way to make it unnecessary, but for now it is.
This fix also doesn't take care of the QtObject { Window { } }
use case.
Task-number: QTBUG-31203
Change-Id: Ic9a5e4a23ac918593138dc9cab3de6cd36453eaf
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
That way Component.onCompleted() can optionally do showMaximized()
without being overridden.
Task-number: QTBUG-31260
Change-Id: I6f5c3025efd3b38809be85da4172241695168a6c
Reviewed-by: Nikita Krupenko <krnekit@gmail.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
- last line was not aliged correctly with the previous lines.
- usage of capital letter was inconsistent.
Change-Id: Ied7caab8296a635e105764bc2e95aa9e78f1cfcb
Reviewed-by: Alan Alpert <aalpert@rim.com>
While the process should terminate immediately with a non-zero exit code
on component error, it does that in the next line already. The main
difference is dropping the backtrace, which is not useful in this case.
Change-Id: I866ea00e62cb9d1b7c506b9819cd9bb2750ac81f
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Setting Window.color in QML takes effect immediately.
It was only possible to set the property at startup.
Examples demonstrate new Window property features.
Change-Id: Ic5b43d0d84371f3fe5c42223ccc98e6de27aed10
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Depends on patch Ie4424ec15fbdef6b29b137f90a2ae33f173edd21 in qtbase.
Change-Id: I9614cc2c7ed119c663b3f6f99267483e291e529c
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Before, it assumed that the root is an Item and needs to have a
Window created. But it's useful for an application to have a Window
as the root, and it was already possible by writing a different C++
main function (see qtdeclarative/examples/window/window/window.cpp).
It doesn't take much to give qmlscene this flexibility too.
Change-Id: Ie808e78a42074e13aa9d3c87723ec9ac8fdbaf4a
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Change copyrights and license headers from Nokia to Digia
Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Don't unnecessarily refer to QApplication for installTranslator();
this is a static member of QCoreApplication.
Change-Id: I7b0e0e30abe1f3a5c114136f1107de3fd7dbc815
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
QQuickCanvas is now called QQuickWindow
QQuickCanvas::rootItem is now QQuickWindow::contentItem
QQuickItem::canvas is now QQuickItem::window
QQuickItem::ItemChangeData::canvas is also renamed window
QQuickCanvas::grabFrameBuffer is now QQuickWindow::grabWindow
The functions related to the color property have dropped the clear from
their names.
The first three changes have interim compatibility measures in place to
ease the transition.
Change-Id: Id34e29546a22a74a7ae2ad90ee3a8def6fc541d2
Reviewed-by: Martin Jones <martin.jones@nokia.com>
There's no need to heap allocate our QQuickView, and there's no need to have a
seperate pointer to QWindow when we can just use the QQuickView directly.
Change-Id: Ia2bc83c9dc83d1df1ec793836793f752d67e9415
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
The option makes qmlscene request a format with alpha for the QQuickView.
Change-Id: I6490e606dd0af534147de95783f3a2ddfa8c52c8
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Sometimes it is useful to be able to resize a view from within QML, for example,
when writing QML which must operate in both portrait and landscape conditions.
Change-Id: I10564bb3c8661fae6c1d175985268a409dc3dafd
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Useful for running tests that have no interactive element, where all
computation is performed in the initialization phase of processing
the QML source.
Change-Id: Id3f87fc504a30eb4e351804a98fe265db8fe93c9
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Symbols beginning with QDeclarative are already exported
by the quick1 module.
Users can apply the bin/rename-qtdeclarative-symbols.sh
script to modify client code using the previous names of the
renamed symbols.
Task-number: QTBUG-23737
Change-Id: Ifaa482663767634931e8711a8e9bf6e404859e66
Reviewed-by: Martin Jones <martin.jones@nokia.com>
QtQuick1 is now contained in a separate repository.
Task-number: QTBUG-23737
Change-Id: I09eae67af5693a22b896b916f816f73ccc3a89b1
Reviewed-by: Martin Jones <martin.jones@nokia.com>
As in the past, to avoid rewriting various autotests that contain
line-number information, an extra blank line has been inserted at the
end of the license text to ensure that this commit does not change the
total number of lines in the license header.
Change-Id: If39bd256b0fa85eba17ea30f8ab87ea27d758908
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Update copyright headers from before 2011, and a couple of new ones that
were merged after the previous change to copyright headers.
Change-Id: Ia76e08e2734afa4ef3f1207dbcda5ff3bc81b366
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
What was traditionally the QQuickRenderLoop which was used
to support one QQuickCanvas instance has now grown to support
multiple QQuickCanvas instances and is now called
QQuickWindowManager, of which there are two implementations.
QQuickRenderThreadSingleContextWindowManager:
One QSGContext and one OpenGL context is being used to draw
all the windows and we alternate between which surface the gl
context is bound to. This implementation relies on that
swap does not block, but that the graphics pipeline is
vsynced and will eventually block as the buffer queue is
filled up. This is the behavior we get on Mac OS X and
Wayland. The benefit of this implementation is that we have
vsync'ed animations, and the synchronizaiton between GUI and
render thread is simple. (well, simple relative to the
alternative, that is).
QQuickTrivialWindowManager:
One QSGContext and one OpenGL context is being used on the GUI
thread. Animations are ticked from a timer. Performance of this
implementation will deteriorate if the driver is using blocking
swap.
Task-number: QTBUG-19455
Change-Id: Ib961ac7d71eb49c70a057872b7cac020c4d19f3d
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
This change moves the QtQuick 2 types and C++ API (including
SceneGraph) to a new module (AKA library), QtQuick.
99% of this change is moving files from src/declarative to
src/quick, and from tests/auto/declarative to
tests/auto/qtquick2.
The loading of QtQuick 2 ("import QtQuick 2.0") is now delegated to
a plugin, src/imports/qtquick2, just like it's done for QtQuick 1.
All tools, examples, and tests that use QtQuick C++ API have gotten
"QT += quick" or "QT += quick-private" added to their .pro file.
A few additional internal QtDeclarative classes had to be exported
(via Q_DECLARATIVE_PRIVATE_EXPORT) since they're needed by the
QtQuick 2 implementation.
The old header locations (e.g. QtDeclarative/qquickitem.h) will
still be supported for some time, but will produce compile-time
warnings. (To avoid the QtQuick implementation using the
compatibility headers (since QtDeclarative's includepath comes
first), a few include statements were modified, e.g. from
"#include <qsgnode.h>" to "#include <QtQuick/qsgnode.h>".)
There's a change in qtbase that automatically adds QtQuick to the
module list if QtDeclarative is used. Together with the compatibility
headers, this should help reduce the migration pain for existing
projects.
In theory, simply getting an existing QtDeclarative-based project
to compile and link shouldn't require any changes for now -- but
porting to the new scheme is of course recommended, and will
eventually become mandatory.
Task-number: QTBUG-22889
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Change-Id: Ia52be9373172ba2f37e7623231ecb060316c96a7
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
The QSG (SceneGraph) prefix is too generic for
Qt Quick(2)-specific classes.
All the classes and files in the declarative/items
directory have been renamed.
In particular, for classes that are currently public,
the renaming is as follows:
QSGView --> QQuickView
QSGCanvas --> QQuickCanvas
QSGItem --> QQuickItem
QSGPaintedItem --> QQuickPaintedItem
The header files have been renamed accordingly
(e.g. qsgview.h --> qquickview.h).
Change-Id: Iac937fff81db20bb639486a793c3aeb5230b038c
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Add menu and close buttons on Windows as well.
Change-Id: Ie458f8f21b14583c1a02d48819ec797e6db7390e
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Instead of creating completely separate hashes for all the types used
by every QML file, we simply link to the QDeclarativeTypeModule. This
uses much less memory, and is faster to construct at startup.
Change-Id: I28bc2807074f9c6f38096d6e4ce8be744159d023
Reviewed-on: http://codereview.qt.nokia.com/3741
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
This replaces the need for applications to explicitly make a call to
enable the debug services, and rather does it in declarative.h when the
'declarative_debug' CONFIG option is used.
Done-with: Kai Koehne
Reviewed-by: Martin Jones
Reviewed-by: Michael Brasser
(cherry picked from commit 5517cc588c39814530b8bfd957821f55be42acf2)
Change-Id: Iacfc5a9b2ca0c2610288cf86f190b4a9950cacd1
Reviewed-on: http://codereview.qt.nokia.com/2436
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Valid import statements should be at the start of a line, maybe
preceded by some white space.
Task-number: QTBUG-20649
Change-Id: I1944bce0d30e680ebdb0798f5ae4e8c91a057a13
Reviewed-on: http://codereview.qt.nokia.com/2423
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Change-Id: I41a280de2739ee08202f4be2519e5012870090f2
Reviewed-on: http://codereview.qt.nokia.com/1391
Reviewed-by: Martin Jones <martin.jones@nokia.com>