aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2
Commit message (Collapse)AuthorAgeFilesLines
...
| * Add QDeadlineTimerFriedemann Kleint2020-03-062-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | The class will replace timeout parameters in Qt 5.15 as introduced by qtbase/72f57cc84244633ca69ede9a1fd510b9b1881c1d, causing warnings like: Stripping argument #1 of bool QThread::wait(QDeadlineTimer) due to unmatched type "QDeadlineTimer" with default expression "QDeadlineTimer(QDeadlineTimer::Forever)". Stripping argument #2 of bool QWaitCondition::wait(QMutex*,QDeadlineTimer) due to unmatched type "QDeadlineTimer" with default expression "QDeadlineTimer(QDeadlineTimer::Forever)". Stripping argument #2 of bool QWaitCondition::wait(QReadWriteLock*,QDeadlineTimer) due to unmatched type "QDeadlineTimer" with default expression "QDeadlineTimer(QDeadlineTimer::Forever)". Change-Id: I51655ef19d8276b95c2a759d5ba44287a4b6d91b Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Accept EnumMeta as a valid Signal typeCristián Maureira-Fredes2020-03-043-1/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Including a check for Python EnumMeta types to not consider them as a normal PySequence allows the decision to use the default PyObject wrapper case. Using the 'object' type is currently the workaround, so this allow the users to use the Enum class instead of declaring the signal with 'object'. class A(Enum): a = 1 b = 1 # Workaround # signal = Signal(object) # With this patch signal = Signal(A) A test case was added. Fixes: PYSIDE-239 Change-Id: Ib593dba5a988eceb8b1bfae097768e9ec02be6d5 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2020-03-04484-437/+2611
|\| | | | | | | Change-Id: I7a94c67fdb9225edf4d605e67839a1f6f7375c2a
| * shiboken: Add XML attribute to turn off method cachingFriedemann Kleint2020-03-031-1/+1
| | | | | | | | | | | | Task-number: PYSIDE-803 Change-Id: I0ba80cea5804e1b83cc55ee32163ca9d021ccd26 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Fix running the PySide2 tests for Python 3.8/WindowsFriedemann Kleint2020-02-28479-332/+2512
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows, DLL directories can no longer be specified via the PATH environment variable. They need to be added via os.add_dll_directory(). In order to fix this, move the entire environment setup from CMake to a python helper and set the environment variables BUILD_DIR and QT_DIR pointing to the build directory and Qt directory, respectively, from CMake. In addition, this has a huge advantage: The tests can also be executed much more easily without ctest from the command line by just setting BUILD_DIR and QT_DIR instead of a complex manipulation of PATH/LD_LIBRARY_PATH. Change-Id: I7d518ccab19ca184c3112a126c779d4a6d7c6c5e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * Add some qApp documentationChristian Tismer2020-02-271-1/+51
| | | | | | | | | | | | | | Updated to the new simple builtin variable. Change-Id: I918ce7bc9aea6451439a8306d5bbd325c04e8136 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * Unify the py3kcompat.py test helpersFriedemann Kleint2020-02-273-103/+47
| | | | | | | | | | | | | | Put everything into a single file and mark them as copies. Change-Id: I782247520d6976695a14f762e8247e5c4eb46aac Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2020-02-272-11/+86
|\| | | | | | | Change-Id: I64cb93d53a2811ba695820501287902995140f9a
| * docs: Add information about internal toolsCristián Maureira-Fredes2020-02-261-5/+53
| | | | | | | | | | Change-Id: I1d814b72359e188ba8263b0cb583ccb43af5e4b4 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Fix web_engine_custom_scheme.pyFriedemann Kleint2020-02-241-6/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a flag to distinguish timeouts from successful loading. Register the scheme properly and set "Path" syntax, fixing the warning: Please register the custom scheme 'testpy' via QWebEngineUrlScheme::registerScheme() before installing the custom scheme handler. Add required initializations of QWebEngine and embed the view into a top level widget, as using a QWebEngineView as a top level on Windows hangs. Change-Id: Id39a6b14606795216994928ad82f60435f4caaca Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2020-02-247-54/+28
|\| | | | | | | Change-Id: I587b40f07da85d431d4fdb6f98259a9be0bb73e5
| * Turn qApp into a normal Python variable, finallyChristian Tismer2020-02-217-54/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After a long odyssey of more or less unpythonic compromizes, the qApp "macro" would finally be moved into a normal variable without surprizes. This was only possible since we removed qApp from QtWidgets and other modules. Otherwise, from PySide2.QtWidgets import * would pull qApp, being the constant "None", into main and shadow the true qApp variable in the builtins. By inserting qApp into the builtins, only, we make sure that this variable is always freshly looked up, without making it change its contents. DONE... + change the singleton code to normal + rename to MakeQAppWrapper + simplify the implementation + fix new bug concerning duplicate applications + check very much for refcounting bugs + review the rest of the implementation and further simplify Note... The Q*Application variable will not be turned back into a GC variable. This is not worth the effort. Fixes: PYSIDE-571 Change-Id: Idbd158c083318e6b0dfe48d62485c68c90e944de Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | shiboken: Add a test for smart pointers used in different librariesFriedemann Kleint2020-02-211-2/+2
| | | | | | | | | | | | | | | | Generate different instantiations in libsmart and libother. Task-number: PYSIDE-1024 Change-Id: Id29cea65e48209fa226ce3142f3af72b99bf4662 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2020-02-21235-441/+1530
|\| | | | | | | Change-Id: I63bd30470a624db6b5ec2c7c5148d95c12a071ab
| * Pyside2/tests: Split the helper moduleFriedemann Kleint2020-02-20205-373/+535
| | | | | | | | | | | | | | | | | | | | The classes of the helper module were defined in the __init__.py file with complicated logic to test for presence of the modules. Split the classes apart and empty the __init__.py file (still required for Python2). Change-Id: I4f4971f9a48e2961233da5585aa0df53bfbb9c7a Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Make PySide2 tests using the helper modules from 'util' self-containedFriedemann Kleint2020-02-19224-74/+1001
| | | | | | | | | | | | | | | | | | | | Add the relative import path to locate the modules "helper" and "py3kcompat". The tests can then be launched from the command line without the ctest environment. Change-Id: Ia50663d7381b52cb248de3e4d23002a195ca9139 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2020-02-191-1/+8
|\| | | | | | | Change-Id: I827c17bc77d4da46abc6db2a91a8cc9296b4c0e0
| * shiboken: Improve the libdir for windowsCristián Maureira-Fredes2020-02-181-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With virtualenv 20 we have the case where the first path in the PYTHON_LIBRARIES cmake variable was wrong: a_virtual_env/libs/python3.lib so the python code inside the helper didn't have a proper check if the file was valid or it was just a wrong construct. Additionally, the 'prefix' variable will contain the virtual environment directory location, which will not contain the 'libs' directory, because that's included in the system's installation path. To solve this, we use the 'INCLUDEPY' directory, which is correct as a base to create the real 'libs' one. Task-number: PYSIDE-1231 Change-Id: Ifca08d74c49cd57572836a087edb96c089266dc7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Bump versions stringsSimo Fält2020-02-121-1/+1
| | | | | | | | | | Change-Id: I4ed952681abe6f42ff43a567f70fdc7e6512ddcc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2020-02-126-17/+107
|\| | | | | | | Change-Id: I2adfe791173a63b90a2e2c71fb1751052550f76b
| * Fix testrunner for Python 3.8/LinuxFriedemann Kleint2020-02-071-4/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running tests with Python 3.8/Linux, the existence_test fails: File "pyside-setup/sources/pyside2/tests/registry/existence_test.py", line 73 from init_platform import enum_all, generate_all File "pyside-setup/sources/pyside2/tests/registry/init_platform.py", line 59 from util import get_refpath, get_script_dir File "pyside-setup/sources/pyside2/tests/registry/util.py", line 113 platform_name = "".join(distro.linux_distribution()[:2]).lower() AttributeError module 'platform' has no attribute 'linux_distribution' since platform.linux_distribution() was removed in 3.8. Extract into a separate method and warn to install distro. Task-number: PYSIDE-939 Change-Id: I42d04830d51563cc3fbaddc3941c927402514480 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * Fix build on Windows using Python 3.8Friedemann Kleint2020-02-061-10/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The DLL load behavior was changed in Python 3.8 to no longer search the PATH variable for DLL dependencies. This means that the shiboken2.dll from the shiboken2 package is no longer found. Add the shiboken2 package using os.add_dll_directory() to fix this. Unfortunately, this requires additional work during the build process, Qt and libpyside2.dll need to be found in the build directory. Change-Id: I3d78d8df2d6f64913e06fa44e7e1aadbc1a14b58 Reviewed-by: Christian Tismer <tismer@stackless.com>
| * Create best-matching wrapper for unknown classes inheriting QObjectFriedemann Kleint2020-02-061-2/+19
| | | | | | | | | | | | | | | | Walk up the MetaObject hierarchy until a matching type is found. Fixes: PYSIDE-1214 Change-Id: I474edbfc710375951987e43469b7e7ea4366ab0c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * QList/QTable/QTreeWidget: Fix ownership of return valueFriedemann Kleint2020-02-051-0/+18
| | | | | | | | | | | | | | | | Specify C++ ownership. Fixes: PYSIDE-1189 Change-Id: I093e2af048aaabf00d124af66dcd3efc7c709e95 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * Fix PyBuffer interface for QByteArrayCristián Maureira-Fredes2020-02-052-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | For the limited API, properly implement the PyBUF_ND flag (shape requested). Otherwise, use the convenience function PyBuffer_FillInfo() to properly populate the view. Fixes: PYSIDE-1204 Change-Id: I2a4c81885cf49b25c89823577c0d7ee2f2707b87 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2020-02-0422-91/+734
|\| | | | | | | Change-Id: I6e0693b8d7d1f7b506a759f15758bc4481a3baa0
| * Fix Python 3.8 warnings about deprecated int conversions of enums/flagsFriedemann Kleint2020-01-291-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | Set Py_nb_index to the conversion method for flags and enums. Fixes warnings like: examples/widgets/widgets/tetrix.py:107: DeprecationWarning: an integer is required (got type PySide2.QtCore.Qt.AlignmentFlag). Implicit conversion to integers using __int__ is deprecated, and may be removed in a future version of Python. Task-number: PYSIDE-168 Task-number: PYSIDE-939 Change-Id: Id41a72474192b357afd3dacd0a2e2fc5e055775c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * Fix grammar in considerations.rstChristian Tismer2020-01-291-2/+2
| | | | | | | | | | Change-Id: I7d840367d9a733d925bbfeb78a0ba0c9c076e6c0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Let qApp be noApp instead of pretending to be NoneChristian Tismer2020-01-294-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qApp should stay almost as it is with only two cosmetic changes: When qApp's return value has Type(Py_None), the value now reports "noApp" instead of "None". Also the feature of "del __builtins__.qApp" is replaced by function qApp.shutdown() . This makes things easier to explain and avoids refcounting hacks. The embedding problem (Falkon browser) was too complicated. We finally solved it by disabling qApp in embedded mode. Change-Id: I0d99661137130684823aa3d1978b494d8ab08e59 Fixes: PYSIDE-1158 Fixes: PYSIDE-1178 Fixes: PYSIDE-1135 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * docs: QML and SQL integration tutorialMariana Meireles2020-01-276-0/+598
| | | | | | | | | | Change-Id: I6ba4ae9fe6a9bfe669b76a23f27556b1f3c59eb4 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
| * docs: More fixes on deployment and faqKavindra Palaraja2020-01-274-62/+86
| | | | | | | | | | Change-Id: I97d7251b0d9ec024ce069f6475d7bc6be0d9d362 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * libpyside: Set default signal name only if previously assignedCristián Maureira-Fredes2020-01-271-1/+2
| | | | | | | | | | | | | | | | | | | | Just before registering the signal to the meta-object, the signalName was overwritten instead of checking if it had some content. Fixes: PYSIDE-1192 Change-Id: I5fc85bf22ae08bce6969b9381662288a99aee616 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Fix ownership of QTextDocument::createObjectCristián Maureira-Fredes2020-01-241-1/+2
| | | | | | | | | | | | | | | | | | | | Since it's a virtual method, we need to specify that the native counterpart of the method will live in C++, and in the target scope it will live in Python. Fixes: PYSIDE-1207 Change-Id: I5b9072380eed17270affa39c5976dc6b1fe293ff Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * docs: Fix pre overlap and improve readingCristián Maureira-Fredes2020-01-241-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Removed the color and the padding on the 'pre' elements of the docs. Additionally increased the line-height globally to 1.4 to make the reading easy. Fixes: PYSIDE-1201 Change-Id: I292d4e6da616ecb84a923444b99ad28a28d6cc5d Reviewed-by: Topi Reiniö <topi.reinio@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| * libpyside: avoid freeing char*Cristián Maureira-Fredes2020-01-241-4/+2
| | | | | | | | | | | | | | | | | | | | The doc parameter was being freed causing a segmentation fault, according to the implementation of the parse function, it's not necessary to free. Fixes: PYSIDE-1205 Change-Id: I5850e7feaf354b27cc4496dc83be214d1729a048 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * shiboken: Introduce "until" version attribute as opposite of "since"Friedemann Kleint2020-01-241-1/+5
| | | | | | | | | | | | | | | | | | | | Prototypically use it for QMessageLogContext, allowing to elegantly build for Qt from version 5.12..now using a single type system file. Fixes: PYSIDE-1191 Change-Id: Iaa7bdc10c7129d84c54e85a09a1c802a409708f9 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * Fix printer test in returnquadruplesofnumbers_test.py on some systemsFriedemann Kleint2020-01-241-0/+2
| | | | | | | | | | | | | | | | Setting the page margin used for comparing tuples requires a PDF printer. Ensure PDF format if no such printer can be found. Change-Id: Ie8509d4a336392cb711e210842664e238c487444 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * PySide2/__init__.py: Print import errors verboselyFriedemann Kleint2020-01-241-1/+11
| | | | | | | | | | Change-Id: I9cac73af695ecb123bc0e0b6ce35a10ee1026ea2 Reviewed-by: Christian Tismer <tismer@stackless.com>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2020-01-063-38/+60
|\| | | | | | | Change-Id: I3c21f87afc4c224823b3f90e165f97ae6252d0b6
| * Doc: Update toctree to include only the module indexVenugopal Shivashankar2020-01-051-1/+1
| | | | | | | | | | | | | | | | | | | | The index adds all the class reference docs to the toctree so we don't need to include everything under the module directory. Change-Id: I6ef20914a63a1f246b06b2725435a4fc42deaf9b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| * docs: Propose new structure for API indexKavindra Palaraja2020-01-022-37/+59
| | | | | | | | | | Change-Id: If2d96afbf93f153fb1b8e79f150a934620899d18 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2019-12-1312-33/+120
|\| | | | | | | Change-Id: I8f4f5695a585a4a716fbb1916e1f998ab3760c72
| * Doc: Document the Property function in QtCoreVenugopal Shivashankar2019-12-121-0/+62
| | | | | | | | | | | | | | | | The content for this lived on the wiki till now. Change-Id: I3e6a2cb7f97ab7021621b7c687299a3199134bb5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * Doc: Fix warnings about link targets and indentationVenugopal Shivashankar2019-12-0611-33/+58
| | | | | | | | | | | | | | | | | | Also ensured that all the doc entities are in the toctree so that the navigation breadcrumb is generated. Change-Id: If993cca4c7e91723fa373d3453196bcfee9f3ffa Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2019-12-0531-648/+864
|\| | | | | | | Change-Id: I779defc33a4bab15cfde1e276d6d78c476a47e0f
| * Fix Python 3.8 problemsChristian Tismer2019-12-059-14/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes some refcounting problems with Python 3.8 . One incompatible change was announced in the what's new document, but actually there were two more problems which were not explicitly mentioned but took much time to sort out. The patch is compatible with the limited API changes (tested with debug build and API error disabled). It is also independent of the Python version which is full Limited API support. For more info, see the documentation mentioned below. The flag error is circumvented now! We either find a better solution or leave it as it is. For now this is ok. Fixes: PYSIDE-939 Change-Id: Iff4a9816857a6ebe86efd4b654d8921e4e464939 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * docs: Simplify the Quick Start topicKavindra Palaraja2019-12-042-23/+19
| | | | | | | | | | Change-Id: I11651033783052591f38cd8eb02ec47719c91dbf Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| * New documentation structureCristián Maureira-Fredes2019-12-0321-634/+841
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - New structure for the landing page, - Some rst were renamed to the new structure, - New sections "Videos", "Examples" and "Getting Started" were created, - Information from the wiki was used to create the Getting Started sections, - FAQ section was removed, - Removing pyhtml2devhelp.py since it is unused, - The new CSS modifications were copied over the Shiboken2 directory. Task-number: PYSIDE-1067 Change-Id: I1ba53cd0030d6d02449fecdfea70efb49421ad3b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Kavindra Palaraja <kpalaraja@luxoft.com>
* | Bump version numbersSimo Fält2019-12-031-1/+1
| | | | | | | | | | Change-Id: Ifa5d9076653e377dbd7f5e4ca3f49e427fa0ee65 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Friedemann Kleint2019-11-299-117/+80
|\| | | | | | | Change-Id: Ie902334068eda21ed71934da56de168a9627e41d