| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: Ia2090c014755d23b04325f024a00a8b7641ae9cc
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The connectNotify signal does not get strings as argument anymore, but
rather QMetaMethod values. Thus the tests should compare agains the
methodSignatures of those QMetaMethods.
Change-Id: I21c236514b408f08481f1c31ee2b2e2c4aed4be8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The test executed an eval() statement, which tried to access a
non-imported module object.
Change-Id: Ib4c9ca03ef62a62ac10bf89b085ea11b8a1a94cd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The generated module library did not include all necessary dependent
libraries (QtWdigets), which caused symbols not to be found on module
import.
The test still fails for now, due to an issue in QtScriptTools
module itself, specifically continue an interrupted evaluation does
not work.
Change-Id: I5439509a3541674fed6113d1ed73135497fc7d2a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The test was using some deprecated methods from Qt4. Fix is to
use the Qt5 equivalent methods.
Change-Id: Ia33747105880aa0858a37e325bc250dc598a61a3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Setting the pageMargins did not work on macOS because the provided
values were smaller than the minimum allowed margins.
Change-Id: I822262cbb535bb27cfefc98522ad88f1db868c4b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Apparently the necessary header is not always implicitly
included, so make it explicit.
Change-Id: I4e3a8b86139c7f9ce3cada43ee6e6827a3606fe3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: PYSIDE-487
Change-Id: Ifd4ed0ce2b2e5ad55ee176826e642ae5539d51be
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Due to an issue in unreleased Qt 5.9 (QTBUG-58837), a QML file
loaded via a relative path results in an assert crash. Fix by
adjusting the path to an absolute path like in other QML examples.
Change-Id: Id9e794b57a65d9605018dfd6230d66782a17a254
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This caused issues when trying to retrieve signals defined in QML,
apart from the fact that it caused undefined behavior.
Task-number: PYSIDE-484
Change-Id: I335e30bda2e293c60f9b4dc68e19b183a75a74be
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|/
|
|
|
|
|
| |
Task-number: PYSIDE-432
Change-Id: I26e3f3a081bc95931de775ce9820bc783eed568e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
| |
Task-number: PYSIDE-177
Change-Id: If83802bd5b37e4ffa3d6a5e8f1eace28f2e68834
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
| |
The file is then valid XML.
Change-Id: Ieafe62da7c08d2e1574612679cfff94d7f8c8d1b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QStringRef cannot be assigned any value.
Besides the QTextStream issue, conversions of the arguments to QStringRef
were generated in Sbk_QByteArray_richcompare() in qbytearray_wrapper.cpp
for Qt 5.9 which caused the comparisons to fail
(QtCore::qbytearray_operator_test()).
Task-number: PYSIDE-332
Task-number: PYSIDE-323
Change-Id: I0460310c8eead6d7f499d95fe68c880064204caa
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Defining Q_QDOC enables some more modules, since it simplifies some
interfaces so the shiboken parser does not reject them.
This should be removed again, when we have a really good parser.
The feature was a bit forgotten. We needed to decide whether Q_QDOC is to
be set or not, and we decided “Yes, for Qt 5.6 we define it”.
This patch realizes that decision.
Change-Id: Ic2457e3e6791ded20d9e3a10778fef4f004ede43
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to the issue, I corrected the dll name and added global
variable references to the script, to keep them alive.
Question: Do we keep it this way, or do we add internal references
to the xml file?
Task-number: PYSIDE-350
Change-Id: Idc8da7e11412cce1123cb2ff6e3e17d003e6dc53
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
It was reported that errorhandling in ‘signalmanager.cpp.in’ was wrong and PyErr_Restore
might cause a segfault.
I copied the error state into local variables in order to report the errors,
before the errType and errValue variables are garbage collected.
Task-number: PYSIDE-464
Change-Id: I220eb14a55c3de1ab225c0b45169ef2a76b5f599
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
| |
The tests also needs QApplication and headers from libpyside.
Amends 73d0821a56527e182c311e59623017fee5d69430
Task-number: PYSIDE-323
Change-Id: If59c88ffc57d73f4228df0c691c84265db52b841
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
| |
The test includes pyside_global.h which is generated from
PySide2/global.h.in and in turn includes PySide2/qpytextobject.h.
Task-number: PYSIDE-323
Change-Id: I48a1466bb797ea44c7c6062b2feccd8668f675c1
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
| |
QmlContextWrapper has been moved to qv4context_p.h.
Task-number: PYSIDE-323
Change-Id: I047249680efe7f766278ac0280d741e4916d1f10
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
| |
Qt 5.8 headers fail to compile unless C++ 11 is set.
Task-number: PYSIDE-323
Change-Id: I95c88cda954bcec1f15121fc7b61e1ad6e4e3565
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
| |
Qt5Core_VERSION_STRING has been deprecated and is no longer
set in qtbase/lib/cmake/Qt5Core/Qt5CoreConfig.cmake
as of Qt 5.9
Task-number: PYSIDE-323
Change-Id: I732c72c6dd18b018dbae194fc0caefd67b758039
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
| |
Change-Id: I17c4f81e7119ea451086cfbf9faa605d28751371
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously the GlobalReceiverV2 instance did not check for the
occurrence of an error when calling its Python callback. This led to
to skipping all processing of QEvents as described in PYSIDE-478.
The fix is to check if a Python error ocurred, and print it (thus
handling it, and clearing the current active error).
Task-number: PYSIDE-360
Change-Id: Idc49dc6fc18da27e92043df8fbc46072efc73f72
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
| |
Change-Id: I16b214d4bf48f325788aa05aef5b00e335591248
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously when a signal was emitted by omitting default arguments,
PySide would complain that not enough arguments were given, because
only one of the signal overloads was considered for emission.
Fix consists in trying to find a signal overload which has the same
number of arguments as given to the emit statement, as well as being
marked as a cloned meta method (which for moc means a signal with
default arguments).
Task-number: PYSIDE-462
Change-Id: I0fc0f37bc7539a1357b8d3cda3155403fca4a763
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
| |
Add modules since shiboken is passed only -I<Qt>/include.
Set QtOpenGL instead @QT_QTOPENGL_INCLUDE_DIR@ which does
not seem to be set anyhwhere.
Task-number: PYSIDE-323
Change-Id: I81690b42ee58fbfc325d47d813e5c587a4a07b9d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
| |
Remove stray '/'.
Change-Id: I1eeb031ca351ac0f55f3cc711fcaafb7835a6adb
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On macOS shiboken skipped all methods that contained OpenGL types like
GLuint. This happened because gl.h was included using an absolute path
which is generated inside global.h.in, whereas subsequent includes like
OpenGL/gltypes.h did not get resolved by the preprocessor due to
missing include paths.
Fix consists in taking the system framework paths that CMake knows
about, and passing them as additional include paths to shiboken.
Task-number: PYSIDE-457
Change-Id: Ic7d9157e95f370074b03bbfbe2f0691a0798a4df
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
SignalManager::callPythonMetaMethod"
The change should be reverted because the error conditions
are not clarified.
This reverts commit 1c9637a766a9ab9fc93259f2d19a6c11dd81121d.
Change-Id: Ieb3c47516590c44aae4e273de7cbc7eb7cb0f71d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
| |
Task-number: PYSIDE-459
Change-Id: I6aebe33f440ca43f37aa5f591eeffc9395774593
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This is an obvious omission and easy to fix.
Thanks to Savin Zlobec for the patch.
You might consider to get a Jira account.
Task-number: PYSIDE-360
Change-Id: I7755f7846c39c9cd9b4d83991568b018223ee938
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The last improvement to signals and slots registration has removed
the problem that mixin classes were not handled the same as other classes.
The key idea was to use the MRO to inspect all involved classes
at type parsing time.
The signals and slots were then sorted in ‘updateMetaObject’.
The current patch enhances this solution in the following way:
In ‘parsePythonType’ we re-ordered the introspection loop in a way
that now all signals are extracted first. This way, they are ordered before
slots automatically, and a later sorting is not necessary. Furthermore,
instead of using qStableSort in ‘updateMetaObject’, we now check the
sorting only with ‘is_sorted’. If the sort order becomes invalid, it will issue a warning.
The latest change removes quadratic time behavior from the warning output.
Important notes and implications:
It is no longer relevant if slots are decorated with @QtCore.Slot().
Signals will work in normally created classes of all shapes.
If classes are modified later, they may grow an incompatibility
when signals appear after slots. Then you get a warning.
Adendum: It makes sense to use slots whenever possible. This way,
constructions as in static_metaobject_test.py work.
Now handling the warning correctly when it is turned into an error.
Correction: We leave the warning as-is and ignore the error!
Question: The static_metaobject_test.py passes its tests suddenly, when you use @Slot() !
Why? Should we open an extra issue for that?
Task-number: PYSIDE-315
Change-Id: I75c9c88787cd93251b1439db0088cd66fc0c3c97
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
| |
Some hack that makes CentOS happy.
Task-number: PYSIDE-342
Change-Id: Ibdc8ed09bf32c8788967b09bb0f816b604a00e76
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
| |
This amends ccfa8440.
Task-number: PYSIDE-458
Change-Id: I641397751e29767493c5eccb907023d48fdab6bd
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
| |
Some tests don’t work since QUuid can not currently be supported
I added some conditional. It will be automatically enabled, when
a platform is able to support it.
Change-Id: Ic6b8b71d2c947aa3620e82a6bcc4fecfef6ee533
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
A long standing error was in qstandarditemmodel_test.py when shiboken2 was
not found. This is due to quite weird path settings with are generated by ctest.
With an adapted path setting, this now works, and we can again remove
qstandarditemmodel_test.py from the blacklist.
Change-Id: Ia1c3065424a5d600512c6d8e532ac8e59453a552
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
| |
Task-number: PYSIDE-458
Change-Id: I330cae0fd3cb584f235cd3374fe74c411a792769
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QQuickAsyncImageProvider and QQuickImageResponse were first introduced
in Qt 5.6. They were not conditionally added in PySide, and thus
building with Qt 5.5.1 failed.
Fix consists in conditionally building the bindings for the relevant
classes and enums.
Task-number: PYSIDE-355
Change-Id: Ic4fefb661931c4937af51db06eb30ea92c8466e0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously when a python QObject-derived class was parsed, only
signals and slots from the top-level class were added to the
corresponding DynamicQMetaObject, and any signals or slots that
were defined in an inherited mixin class were registered at
signal connection time.
This caused issues with already existing connections because
registering new signals shifted all slot indices, thus breaking
the connections (no methods were called, or a wrong method was called
that caused a segmentation fault).
Fix consists in collecting and registering all signals, slots and
properties from a given class, including the mixin clases it derives
from, at type parsing time.
Important notes and implications:
All slots _must_ be decorated with @QtCore.Slot(), otherwise they
will not be registered at type parsing time, but at signal connection
time, and this _will_ cause hard-to-debug issues.
@QtCore.Slot() is not needed for lambdas or free functions, because
those get their own DynamicQMetaObject / QObject pair (via a
GlobalReceiver instance).
Dynamic addition or removal of signals and slots in most situations
will not work (e.g. existing connections will break, QML engine
heavily caches all method indices, and thus will also break).
Task-number: PYSIDE-315
Change-Id: I6213f53653566bde60a469cd239baf969b831560
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There has been an over-done correction in this issue.
The issue was solved, but I also “corrected” the function “getFromType”:
- I added a check for a valid object. This was wrong, it is allowed to return
a null object.
- I adjusted the refcount, because PyDict_GetItem returns a borrowed ref.
But this was correct, since the caller added a reference.
I have run all tests. The result is identical before and after my change.
It was necessary to treat this case before the end of PYSIDE-315, because
the new test code from Mingxiang of today hits exactly this bug.
Task-number: PYSIDE-79
Task-number: PYSIDE-315
Change-Id: Id489e106a5ee7410ed32b5c4bd21d4b98e4e97a7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
| |
Split into branches for too many/too few and subtract return type.
Task-number: PYSIDE-462
Change-Id: I25fbbd4fd18e87c7d9b3cb79b8c2c16e1e816fac
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
| |
Replace by C++ casts.
Change-Id: I8f4fe35a4e1529be307728258acf302e1eb9dfe5
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
The C++ signature of the type is incorrectly interpreted as Array,
which causes shiboken to crash on Linux (not on macOS).
Temporarily remove the offending class from the typesystem, until
the generator is fixed.
Change-Id: I9fb23156cd57a7d8f0bc683e928cf8c3736768f7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
Remove the platform-specific conversions from Qt 4
and add new conversion to PyLong via void *.
Task-number: PYSIDE-439
Change-Id: I9826741de7b397b38631bdbb6bf12710c95fab40
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The basic QtQuick classes should work.
The scene graph classes are in an incomplete state, because of issues
in shiboken (missing template support, char const * const * support,
shared pointer support, union support).
Task-number: PYSIDE-355
Change-Id: I1adc9102638b1c46d77d402b355341998b11ebdb
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
This will be used by the QtQuick typesystem changes, which depend
on those classes.
Task-number: PYSIDE-355
Change-Id: I48f5d435b0dae38c266c62bf9ee0a3f15eb9e21a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
| |
Task-number: PYSIDE-355
Change-Id: I4fb327e6767e9bde64e0c358d599bbc4116bbaab
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Use array index to extract single character, fixing:
File "tests/QtOpenGL/qglbuffer_test.py", line 62, in testIt
m[3] = py3k.b('A')
TypeError: memoryview: invalid type for format 'B'
Change-Id: If7b662e00dc2e6fb6e2371ad438d7735f1383c6b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The test used to fail with:
Traceback (most recent call last):
File "bug_722.py", line 47, in testQRealSignal
effect.blurRadiusChanged['qreal'].connect(foo1.setValue) # check if qreal is a valid type
IndexError: Signature blurRadiusChanged(qreal) not found for signal: blurRadiusChanged
The signatures changes from setBlurRadius(qreal) (Qt 4) to
setBlurRadius(double) (Qt 5) due to the metaobject resolving
types.
Task-number: PYSIDE-431
Change-Id: I240aac7adf34220a2e1016a0ba5ed78f5f51753b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|