aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6
Commit message (Collapse)AuthorAgeFilesLines
...
* Docs: Use sphinx reference in gettingstarted.rstShyamnath Premnadh2024-08-141-6/+12
| | | | | | | | | | - update relative paths to use sphinx cross references. This ensures more robust documentation which is easier to maintain and these cross references can be reused. Task-number: PYSIDE-2837 Change-Id: I027073793f8344e0e0599d0441449833d536cdcc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Docs: Add html redirectsShyamnath Premnadh2024-08-141-1/+12
| | | | | | | | | | | | | - Since some .rst folders were renamed and reaaranged, this broke some existing links i.e. quickstart.html does not exist anymore since it was renamed to gettingstarted.html - This patch establishes redirects so that the old changed html links still exists and redirect to the new links. For this a new dependency of sphinx_reredirects is added. Task-number: PYSIDE-2837 Change-Id: I7af4a1ffef174b06fd8cb439ad1ccf52754c744d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* WebView: Make QtWebView depend on WebEngine foundShyamnath Premnadh2024-08-132-2/+7
| | | | | | | | | | - Make QtWebView depend on WebEngineCore and WebEngineQuick when building for Windows or Linux. - Additionally, fix the dependency to not target APPLE. Pick-to: 6.5 6.7 Change-Id: Idfa17ef2ab290cc7ca08364a3e4a98d171f10324 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Remove the usage of Py_SetProgramNameCristián Maureira-Fredes2024-08-131-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Py_SetProgramName is deprecated since 3.11 and there is no planned direct replacement. There is a recommendation of using PyConfig, which implies a more verbose approach, so we drop the lines instead of replacing it. This: Py_SetProgramName(L"module-test"); can be replaced by: PyStatus status; PyConfig config; PyConfig_InitPythonConfig(&config); status = PyConfig_SetString(&config, &config.program_name, program_name); if (PyStatus_Exception(status)) { goto exception; } status = Py_InitializeFromConfig(&config); if (PyStatus_Exception(status)) { goto exception; } exception: PyConfig_Clear(&config); Py_ExitStatusException(status); Note: PyConfig's approach is not part of the Stable ABI, meaning it will not be possible to use it once Py_SetProgramName is removed in 3.13 Change-Id: I0734d502469ae4f28f4c211bdfbfdbeae82b1375 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Documentation: Rearrange sectionsShyamnath Premnadh2024-08-1215-46/+43
| | | | | | | | | | | | | | | | | | | | | - Rename 'Quick Start' to 'Getting Started'. Also, update the links accordingly. - The page 'Getting Started' is a building from source page. Hence renamed it accordingly with 3 sections - Linux, macOS and Windows. Each sections contains the steps to build from source for the specific platform. - Move 'Package Details' into the main table of contents - Move 'Porting from PySide2 to PySide6' into the 'Getting Started' section. - Additionally, fix the links accordingly and also fix some broken links - Additionally, increase the minumum Python version from 3.7 to 3.8 in the Getting Started section. Task-number: PYSIDE-2833 Task-number: PYSIDE-2837 Change-Id: I07f35dbe583533ff122f6ecb4deeb9c95389b3d1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix license of the 'QML, SQL and PySide Integration Tutorial' tutorialFriedemann Kleint2024-08-123-3/+3
| | | | | | Pick-to: 6.7 6.5 Change-Id: I4afdce644ad932eab0bdf083c52940183f5b2bd3 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Documentation: Brush up the 'QML, SQL and PySide Integration Tutorial' tutorialFriedemann Kleint2024-08-095-56/+41
| | | | | | | | | | | | | | | - Use loadFromModule(). - Fix the QML code to work - Remove SqlConversationModel.setRecipient() which is not used and builds an SQL statement by adding up string values. - Fix SqlConversationModel.roleNames() - Use QStandardPaths.writableLocation() instead of the current directory for the database and give it a proper name. Pick-to: 6.7 Task-number: PYSIDE-2833 Change-Id: Ib1d66abd2a01dc11f608311542a6e090232a04db Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Documentation: Rewrite 'QML Application' tutorial to use loadFromModule()Friedemann Kleint2024-08-095-26/+29
| | | | | | | Pick-to: 6.7 Task-number: PYSIDE-2833 Change-Id: I8c4e9af9fe46cdd57f3fba65f8d9200512addea0 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Documentation: Rewrite 'QML Integration' to use loadFromModule()Friedemann Kleint2024-08-084-19/+26
| | | | | | | | | | | As a drive-by, change the resource file name to the naming convention used by pyside6-project and fix some snippet lines. Pick-to: 6.7 Task-number: PYSIDE-2833 Change-Id: Id73b0584e45a58f20eb1a53892943119fe4db6a4 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Documentation: Rewrite 'Quick start' to use loadFromModule()Friedemann Kleint2024-08-081-10/+17
| | | | | | | | Pick-to: 6.7 Task-number: PYSIDE-2833 Change-Id: I757fe6884a11454aa10d80248e78008807099160 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Documentation: Rewrite 'Your First QtQuick/QML Application' to use ↵Friedemann Kleint2024-08-081-11/+21
| | | | | | | | | loadFromModule() Pick-to: 6.7 Task-number: PYSIDE-2833 Change-Id: I4cf5d951a34699870251ffae3f9d0d72534d12a6 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* PySide6/__init__.py replace runtime list of modules for static oneCristián Maureira-Fredes2024-08-072-3/+7
| | | | | | | | | | This aims to fix the issues that static analysis tools might have when exploring the PySide available modules. Fixes: PYSIDE-2836 Pick-to: 6.7 6.5 6.2 Change-Id: If37795acb68feb71df4934a15e3f0543a085ab33 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Signal manager: Use the same signature lookup for connect/disconnectFriedemann Kleint2024-08-071-33/+34
| | | | | | | | | | | Extract a helper for matching the signal instance and use it from signalInstanceConnect() and signalInstanceDisconnect(). This currently only matters for signal QObject::destroyed(QObject*) and QObject::destroyed(). Task-number: PYSIDE-2810 Change-Id: I8ebb8487c7b6953cbfff2179c3b5081a3674bf16 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libpyside: Fix QObject.disconnectNotify()Friedemann Kleint2024-08-061-2/+2
| | | | | | | | | | | | Complements 225e18558f37e2b228be5da60f27ec8186a26bc7. Just like QObject::connectNotify(), QObject.disconnectNotify() is meant to be called with the signal method. Fix it to use the signal instead of the slot. Task-number: PYSIDE-2810 Change-Id: I2b1903a2c870768760e24b903ef16499d8d5d1a5 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libshiboken: Remove PepRuntime_38_flagFriedemann Kleint2024-08-061-5/+3
| | | | | | | Python 3.9 is now the minimum version. Change-Id: I7d519cf4b73516ee0d659e377805e2b6f96402d2 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Desktop Deployment: Handle long command lines on WindowsShyamnath Premnadh2024-08-061-0/+36
| | | | | | | | | | | | | | | | | | | | - When the Nuitka command line becomes more than 8191 characters in Windows, the subprocess call fails with the error message "The command line is too long". This patch fixes the issue. - The patch involves moving the contents of the main Python file to an intermediate file called 'deploy_main.py' and modifying the deploy_main.py file to start with '# nuitka_project: <nuitka_option>'. This way, Nuitka picks up the option directly from deploy_main.py rather than the command line. - Add relevant tests to consider the scenario. Pick-to: 6.7 Task-number: PYSIDE-1612 Fixes: PYSIDE-2803 Change-Id: Iacdaa66283cb41dee6df99c9015b4679e299b02e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Python-QML integration tutorial: Streamline Python codeFriedemann Kleint2024-08-052-25/+14
| | | | | | | | | | In the emphasized lines, fix an offset introduced by 50061290756323ff339bd0473e67117c8191d130. Pick-to: 6.7 Task-number: PYSIDE-2833 Change-Id: I4ea1eb6b520179c0d425bdb74eaae7663ce89125 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* QtWidgets/private_mangle_test.py: Do not repeatedly instantiate QApplicationFriedemann Kleint2024-08-051-9/+4
| | | | | | | | | Port the test class to use UsesQApplication which keeps one instance. Pick-to: 6.7 Task-number: PYSIDE-2810 Change-Id: Ice5fe122ba0f9b357f10582addf87890890de9d3 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken: Support compiler options for disabling optimizationsChristian Tismer2024-08-011-0/+4
| | | | | | | | | | | | | | | | | | | The fullname field has been removed, and the signature structures can be optionally compressed. Add a build option for switching these and future compiler features off. Combinable flags: --unoptimize=fullname --unoptimize=compression --unoptimize=folding (to be implemented) or just --unoptimize=all Task-number: PYSIDE-2701 Change-Id: I605dc810542ce99f99d9a6b6432e5feae09273b4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix clang warning: lambda capture 'count' is not used [-Wunused-lambda-capture]Friedemann Kleint2024-08-011-1/+1
| | | | | | | | | It shows up in macOS builds: qcoreapplication_wrapper.cpp:2200:44: warning: lambda capture 'count' is not used [-Wunused-lambda-capture] Pick-to: 6.7 Change-Id: Ie886c9e4f23c8da61096e7c95129d44c04fb072e Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Deployment Documentation: Remove non-relevant sectionShyamnath Premnadh2024-08-011-4/+0
| | | | | | | | | | | - With e3ca9d63fd21867ad974928162a62832b36f807d, the section in the documentation is not relevant anymore since 'site-packages' is always ignored. Pick-to: 6.7 Task-number: PYSIDE-1612 Change-Id: Ia9a4c0f9b9143febdd2e92fcc3f3df3d23e6be0c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Update modules.rstShyamnath Premnadh2024-08-011-3/+4
| | | | | | | | | - Move WebView up to resemble the source tree in pyside-setup. Task-number: PYSIDE-2825 Pick-to: 6.5 6.7 Change-Id: I2f68cc0ea9fbd77b0c318d86aff21ad5fd1ff6f4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add QtWebViewShyamnath Premnadh2024-07-316-1/+81
| | | | | | | | | [ChangeLog][PySide6] QtWebView has been added. Pick-to: 6.5 6.7 Task-number: PYSIDE-2825 Change-Id: I4617cb6b170b37c232ba55aa8be374f150604105 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* pyi: fix QFormLayout.getLayoutPosition hintCristián Maureira-Fredes2024-07-301-3/+3
| | | | | | | Change-Id: I040044be236f83546424c8621d95a86a068cddeb Fixes: PYSIDE-2788 Pick-to: 6.7 6.5 6.2 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Documentation: Update the .qrc tutorialFriedemann Kleint2024-07-291-51/+52
| | | | | | | | | | It describes modifying the QtMultimedia player example which has changed over time. Fixes: PYSIDE-2828 Pick-to: 6.7 Change-Id: I016d28185790bbd05b3bbbdc83e254c94390bd9a Reviewed-by: Christian Tismer <tismer@stackless.com>
* PySide Build: Add an option to provide extra include paths for ShibokenShyamnath Premnadh2024-07-291-1/+11
| | | | | | | | | | | | - Expands on 7cc5c139482d735c49002649d26bb524c92cc86b, by creating a build option '--shiboken-extra-include-paths' that appends extra include paths to the '--force-process-system-include-paths' option when calling shiboken generator to create PySide6 modules. - This can be helpful for Flatpak and OS Distro builds of PySide6. Pick-to: 6.7 Change-Id: Ibd4c9702a741d8047ccaf53d84a1c97550d78ffe Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add Signalmanager documentationFriedemann Kleint2024-07-292-0/+59
| | | | | | Task-number: PYSIDE-2810 Change-Id: Ibbad9d612a51a35e4b2f0c5eeb3a989d8495dd10 Reviewed-by: Christian Tismer <tismer@stackless.com>
* libpyside: Use the new DynamicSlot in PySideQSlotObjectFriedemann Kleint2024-07-292-10/+11
| | | | | | Task-number: PYSIDE-2810 Change-Id: I51bd24520cc9fd420ee8256f1278bb17cd406235 Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken: Fix a QMimeType test after the change to the Tika mimetypesAdrian Herrmann2024-07-231-3/+4
| | | | | | | | | | Removal of "application/x-krita" helps. Also some string tests are different. Task-number: PYSIDE-2701 Change-Id: I26b84c0b66785b5ab60e846f919de33043ebf879 Pick-to: 6.7 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* QtAsyncio: Add diagram about coroutinesAdrian Herrmann2024-07-192-6/+6
| | | | | | | | | | Add a diagram that explains coroutines to the QtAsyncio documentation instead of just linking readers to the YouTube video. Pick-to: 6.7 Task-number: PYSIDE-769 Change-Id: I33cb381958313ce1ce2c01eae10eca073761af85 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* QtAsyncio: Add developer notesAdrian Herrmann2024-07-192-0/+68
| | | | | | | | | | Add a few developer notes for QtAsyncio to our corresponding docs section. Pick-to: 6.7 Task-number: PYSIDE-769 Change-Id: I33cf5e1580fc93c9c90fd4e9573ad6c08d13ef13 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* QtAsyncio: Add clarifying commentsAdrian Herrmann2024-07-193-6/+28
| | | | | | | | | | | Add a few more clarifying comments regarding to previous bug fixes or non-obvious variable usages. Pick-to: 6.7 Task-number: PYSIDE-2644 Task-number: PYSIDE-769 Change-Id: Ic4db10510e1adf8141efa83d727f519547d67b24 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* QtAsyncio: Skip CancelTaskGroup test for < 3.11Adrian Herrmann2024-07-191-1/+3
| | | | | | | | | | Skip the QAsyncioTestCaseCancelTaskGroup unit test for versions below 3.11, as ExceptionGroup was only added with 3.11. Pick-to: 6.7 Task-number: PYSIDE-769 Change-Id: I572c26333a523bc14626d2bfa6dc5e37a581c517 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* QtAsyncio: Don't cancel handleAdrian Herrmann2024-07-162-2/+31
| | | | | | | | | | | | | | | It is not necessary to cancel a task's handle when cancelling said task, as the step function already handles the cancellation. Furthermore, cancelling the handle can cause issues with TaskGroups if an exception is raised inside the TaskGroup's context, where the tasks inside the group are not allowed to properly cancel and thus block the program. Pick-to: 6.7 Task-number: PYSIDE-769 Fixes: PYSIDE-2799 Change-Id: I1ab782380ffbe8c1ec40aba22b9ed2ebdcb1498f Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* QtAsyncio: Add cancel count and uncancelAdrian Herrmann2024-07-163-9/+126
| | | | | | | | | | | | | | | | Implement the QAsyncioTask.uncancel() function and the associated cancel count. Note to reader: Unlike what the name suggests, the uncancel() function on its own does not undo a task cancellation. This must be performed by consuming the CancelledError exception, at which point uncancel() serves to remove the cancellation state. Pick-to: 6.7 Task-number: PYSIDE-769 Fixes: PYSIDE-2790 Change-Id: I4e817e1dd3f49179855432d20ed2f043090fd8f1 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide: remove duplicates from the header include pathsShyamnath Premnadh2024-07-151-1/+3
| | | | | | | | | | - Remove duplicates for the '--include-paths' cli option passed to shiboken generator, when creating a PySide module. In the context of PySide module creation, shiboken generator is called from CMake. Pick-to: 6.7 6.5 Change-Id: Ibb489ef76df1126e60470aef0d248d8267381da8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* libpyside: Split DynamicSlotDataV2 into separate classesFriedemann Kleint2024-07-115-149/+282
| | | | | | | | | | | | | | | | DynamicSlotDataV2 provided the callable for the slot invocation and contained switches depending on whether the callable was a method or a plain callable. Turn it into a virtual base class providing a call() method and a factory to cleanly separate the code paths for method and plain callables. Introduce an enumeration of slot types for clarity. Expose it in globalreceiverv2.h so that it can be used for PySideQSlotObject. Task-number: PYSIDE-2810 Change-Id: I4bdfb58a430c39aba2cc531c28129f71ebeb498c Reviewed-by: Christian Tismer <tismer@stackless.com>
* libpyside: Avoid splitting/reassembling of signal/slot signaturesFriedemann Kleint2024-07-103-49/+24
| | | | | | | | | | | | Instead of parsing the signature from the string, pass the signal QMetaMethod into getReceiver(), which has the parameter types. The helper getArgsFromSignature() can then be removed. Task-number: PYSIDE-2810 Change-Id: I506e058d3fbe1cb0d6db599742a0ffc35db634d4 Reviewed-by: Christian Tismer <tismer@stackless.com>
* libpyside: Prevent GlobalReceiver object creation for connections with contextsFriedemann Kleint2024-07-101-15/+1
| | | | | | | | | | This connection type always uses callables directly, no need to create GlobalReceiver instances by calling getReceiver(). Amends acab25a3ccb836818e5089b23d40196bc7414b7a. Change-Id: I3fbcaaa0495b455741a0d825f68ce6d98d2ce3aa Reviewed-by: Christian Tismer <tismer@stackless.com>
* libpyside: Refactor signature handling in GlobalReceiverV2Friedemann Kleint2024-07-095-27/+14
| | | | | | | | | | | | Move the signatures hash from DynamicSlotDataV2 into GlobalReceiverV2 to avoid unnecessary indirections and to enable further refactorings of DynamicSlotDataV2. Use QByteArray for the signature parameters, avoiding the conversion. Task-number: PYSIDE-2810 Change-Id: I17a637e28e9dac4ea159b26a375e8c1535e00814 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* libpyside: Pass MetaObjectBuilder signature as QByteArrayFriedemann Kleint2024-07-095-45/+74
| | | | | | | | | | | | | | Change the MetaObjectBuilder::addSlot()/addSignal() functions to use a QByteArray since the underlying QMetaObjectBuilder takes QByteArray, too. Split SignalManager::registerMetaMethodGetIndex() into overloads for const char * (for the signal code path) and QByteArray (for the slot code path). Task-number: PYSIDE-2810 Change-Id: Ie79ea071a8cc111d45248c7086cf6fda34a7548f Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* libpyside: Avoid QByteArray construction getArgsFromSignature()Friedemann Kleint2024-07-091-9/+16
| | | | | | Task-number: PYSIDE-2810 Change-Id: I54601a5a3f1f7cd648e5e382850ee10fbe240dac Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Add Fixme comment about QLabel::setMovie()Friedemann Kleint2024-07-081-0/+1
| | | | | | Task-number: PYSIDE-2808 Change-Id: I8675a2a70d4269081b3fe884fedc6dba2a712aaa Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* QtAsyncio: Add messages to NotImplementedErrorsAdrian Herrmann2024-07-081-29/+33
| | | | | | | | | | | | Add explanatory messages to NotImplementedError exceptions for less confusing debugging. Pick-to: 6.7 Task-number: PYSIDE-769 Task-number: PYSIDE-2565 Change-Id: Id27afec471668fa2e47a6895ef6f9d8dc5842dee Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Shiboken: Get rid of the fullName field in generated codeChristian Tismer2024-07-051-1/+2
| | | | | | | | | | | | | | | | | This patch does the actual removal of the fullName field. Unfortunately, not all fields can be removed but only the ones which are reachable by the TypeInitStructs. (meanwhile less than 500) This result is pretty much better (at least on macOS), so we would not want to optimize it any further. Many thanks to Friedemann's help with improving the generator and removing the quirks that I could not solve. Task-number: PYSIDE-2701 Change-Id: Ie350766c450da1d86359c4e24c313ade3146233f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add QMessageBox.open() with a slotFriedemann Kleint2024-07-046-20/+36
| | | | | | | | | Extract a helper function from QTimer::singleShot() implementation and use that to implement it. Fixes: PYSIDE-2805 Change-Id: Ib758d355b36c598052cfa495b53d7da423999976 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Fix Qt Gui applications running in interactive modeFriedemann Kleint2024-07-041-1/+40
| | | | | | | | | | Set a hook calling QCoreApplication::processEvents() unless a key is pressed to PyOS_InputHook. Fixes: PYSIDE-2192 Pick-to: 6.7 Change-Id: Ibaa16fb7e605c21c67b74609de3264ef5e4fc523 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* libpyside: Fix parameters for connections with contextsFriedemann Kleint2024-07-044-24/+64
| | | | | | | | | | | Use the new SignalManager::callPythonMetaMethod() overload introduced by ed8fc457e04f4ead8a3b2a2da797bdc14bd5b210 in PySideQSlotObject to convert the void ** arguments to Python. Amends acab25a3ccb836818e5089b23d40196bc7414b7a. Change-Id: I024bc7f8df7fa65b8b1761f517a99a854de2cec8 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libpyside: Decouple SignalManager::callPythonMetaMethod() from QMetaMethodFriedemann Kleint2024-07-042-48/+123
| | | | | | | | Extract a helper for calling Python slots and add an overload that only takes a list of parameter types and return type. Change-Id: I407c3b1ae66eb4f01370ceac3112eb9407796efa Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libpyside: Fix QObject.connectNotify()Friedemann Kleint2024-07-043-8/+2
| | | | | | | | | | | | QObject::connectNotify() is meant to be called with the signal method. The code retrieved the signal method from the receiver though, potentially causing an index violation. Fix it to use the source. Remove misleading comments from 4edd9a1278efdf37f366e9aa6e82f151a357ef32. Change-Id: Id5afdde16ce002e156710128e9610804b748be74 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>