PyGObject 3.51.0.dev0__tar.gz → 3.52.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pygobject-3.52.1/.gitlab-ci/build-sdists.sh +20 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci.yml +2 -1
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/NEWS +21 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/PKG-INFO +1 -1
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/conf.py +1 -1
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/devguide/maintguide.rst +0 -3
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/getting_started.rst +1 -1
- pygobject-3.52.1/docs/guide/api/flags_enums.rst +82 -0
- pygobject-3.52.1/docs/images/pygobject-dark.svg +247 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/index.rst +9 -2
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/index.rst +2 -2
- pygobject-3.52.1/gi/_enum.py +54 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/_signature.py +13 -6
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/gimodule.c +89 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/meson.build +1 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/Gio.py +4 -32
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygenum.c +136 -36
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygenum.h +3 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygflags.c +127 -36
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygflags.h +2 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-async.c +17 -5
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-cache.c +5 -1
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-foreign-cairo.c +106 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-info.c +42 -32
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-info.h +1 -1
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-repository.c +9 -2
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygobject-object.c +7 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/meson.build +7 -2
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/pyproject.toml +5 -1
- pygobject-3.52.1/subprojects/gobject-introspection-tests/.clang-format +12 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/.editorconfig +14 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/.gitlab-ci.yml +34 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/.reuse/dep5 +5 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/LICENSES/CC0-1.0.txt +121 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/LICENSES/GPL-2.0-or-later.txt +117 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/LICENSES/LGPL-2.0-or-later.txt +175 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/LICENSES/LGPL-2.1-or-later.txt +176 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/LICENSES/MIT.txt +9 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/README.md +77 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/annotation.c +874 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/annotation.h +320 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/docs/provenance.txt +103 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/drawable.c +67 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/drawable.h +48 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/foo.c +944 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/foo.h +572 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/gimarshallingtests.c +10059 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/gimarshallingtests.h +2814 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/gimarshallingtestsextra.c +194 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/gimarshallingtestsextra.h +70 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/gitestmacros.h +10 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/gobject-introspection-tests.doap +111 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/meson.build +233 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/meson_options.txt +6 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/regress-unix.c +40 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/regress-unix.h +32 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/regress.c +5183 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/regress.h +1750 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/regressextra.c +602 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/regressextra.h +128 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/tools/iwyu.imp +9 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/tools/run_clang_format.sh +9 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/tools/run_iwyu.sh +10 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/utility.c +68 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/utility.h +109 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/warnlib.c +49 -0
- pygobject-3.52.1/subprojects/gobject-introspection-tests/warnlib.h +53 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/subprojects/gobject-introspection-tests.wrap +1 -1
- pygobject-3.52.1/subprojects/packagefiles/pythoncapi-compat-dist.py +8 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/.github/workflows/build.yml +100 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/.gitignore +5 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/.meson-subproject-wrap-hash.txt +1 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/.readthedocs.yaml +12 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/CODE_OF_CONDUCT.md +11 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/COPYING +14 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/README.rst +55 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/Makefile +20 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/api.rst +602 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/changelog.rst +123 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/conf.py +53 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/index.rst +29 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/links.rst +29 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/make.bat +35 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/tests.rst +17 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/upgrade.rst +168 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/docs/users.rst +71 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/meson.build +6 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/pythoncapi_compat.h +1520 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/runtests.py +122 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/tests/__init__.py +0 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/tests/setup.py +109 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/tests/test_pythoncapi_compat.py +209 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/tests/test_pythoncapi_compat_cext.c +2025 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/tests/test_pythoncapi_compat_cppext.cpp +4 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/tests/test_upgrade_pythoncapi.py +945 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/tests/utils.py +41 -0
- pygobject-3.52.1/subprojects/pythoncapi-compat/upgrade_pythoncapi.py +748 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_cairo.py +14 -0
- pygobject-3.52.1/tests/test_enum.py +140 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_gdbus.py +33 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_gi.py +17 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_gobject.py +40 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_signature.py +11 -1
- pygobject-3.51.0.dev0/.gitlab-ci/build-sdists.sh +0 -31
- pygobject-3.51.0.dev0/docs/guide/api/flags_enums.rst +0 -41
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.clang-format +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.coveragerc +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.flake8 +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitignore +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/Dockerfile +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/README.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/coverage-docker.sh +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/fixup-lcov-paths.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/lcovrc +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/run-docker-runtime.sh +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/run-docker.sh +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/set_env.sh +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/test-docker.sh +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/test-flatpak.sh +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.gitlab-ci/test-msys2.sh +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/.pre-commit-config.yaml +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/COPYING +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/METADATA.in +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/README.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/Makefile +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/bugs_repo.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/changelog.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/contact.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/devguide/dev_environ.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/devguide/index.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/devguide/override_guidelines.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/devguide/overview.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/devguide/packagingguide.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/devguide/style_guide.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/extra.css +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/api/api.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/api/basic_types.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/api/error_handling.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/api/gobject.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/api/index.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/api/properties.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/api/signals.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/api/weakrefs.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/asynchronous.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/cairo_integration.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/code/cairo-demo.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/debug_profile.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/deploy.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/download_asyncio.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/download_callback.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/faq.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/flatpaking.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/gtk_template.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/images/cairo_integration.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/imports.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/index.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/porting.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/sysdeps.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/testing.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/guide/threading.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/icons.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/LICENSE +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/favicon.ico +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/logo.svg +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/overview-dark.svg +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/overview.dia +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/overview.svg +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/pygobject-small.svg +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/pygobject.svg +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/start_linux.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/start_macos.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/images/start_windows.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/_static/custom.css +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gobject/basics.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gobject/examples/listmodel.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gobject/interfaces.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gobject/subclassing.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gobject.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk3.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/application.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/basics.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/clipboard.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/buttons.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/check-radio-buttons.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/dropdown.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/entries.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/examples/button.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/examples/check_radio_buttons.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/examples/dropdown.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/examples/entries.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/examples/linkbutton.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/examples/spinbutton.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/examples/switch.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/examples/togglebutton.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/images/button.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/images/check_radio_buttons.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/images/dropdown.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/images/entries.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/images/linkbutton.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/images/spinbutton.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/images/switch.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/images/togglebutton.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/scale.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/spinbutton.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls/switch.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/controls.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/examples/label.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/examples/picture.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/examples/progressbar.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/examples/spinner.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/examples/spinner_ext.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/image.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/images/label.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/images/picture.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/images/progressbar.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/images/spinner.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/images/spinner_ext.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/label.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/picture.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/progressbar.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets/spinner.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/display-widgets.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/drag-and-drop.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/application.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/clipboard.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/drag_and_drop.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/extended_example.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/layout_box.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/layout_center.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/layout_flowbox.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/layout_grid.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/layout_headerbar.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/layout_listbox.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/layout_notebook.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/layout_stack.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/popover.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/popover_menu.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/simple_example.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/examples/textview.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/application.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/basic_example.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/clipboard.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/drag_and_drop.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/extended_example.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/layout_box.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/layout_center.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/layout_flowbox.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/layout_grid.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/layout_headerbar.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/layout_listbox.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/layout_notebook.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/layout_stack.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/popover.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/popover_menu.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/images/textview.png +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/introduction.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/layout-widgets.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/popovers.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4/textview.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/gtk4.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/libadwaita/application.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/docs/tutorials/libadwaita.rst +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/__init__.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/_constants.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/_error.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/_gtktemplate.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/_option.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/_ossighelper.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/_propertyhelper.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/_signalhelper.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/docstring.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/events.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/gimodule.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/importer.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/module.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/GIMarshallingTests.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/GLib.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/GObject.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/Gdk.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/GdkPixbuf.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/Gtk.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/Pango.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/__init__.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/overrides/meson.build +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygboxed.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygboxed.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-argument.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-argument.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-array.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-array.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-async.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-basictype.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-basictype.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-boxed.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-boxed.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-cache.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-ccallback.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-ccallback.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-closure.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-closure.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-enum-marshal.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-enum-marshal.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-error.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-error.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-foreign-api.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-foreign.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-foreign.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-fundamental.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-fundamental.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-hashtable.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-hashtable.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-invoke-state-struct.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-invoke.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-invoke.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-list.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-list.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-marshal-cleanup.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-marshal-cleanup.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-object.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-object.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-property.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-property.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-repository.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-resulttuple.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-resulttuple.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-signal-closure.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-signal-closure.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-source.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-source.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-struct-marshal.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-struct-marshal.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-struct.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-struct.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-type.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-type.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-util.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-util.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-value.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygi-value.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pyginterface.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pyginterface.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygobject-internal.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygobject-object.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygobject.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygoptioncontext.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygoptioncontext.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygoptiongroup.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygoptiongroup.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygpointer.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygpointer.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygspawn.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygspawn.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/pygtkcompat.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/repository/__init__.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/repository/meson.build +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/gi/types.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/meson_options.txt +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/pygobject-3.0.pc.in +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/pygobject.doap +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/pygtkcompat/__init__.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/pygtkcompat/meson.build +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/pygtkcompat/pygtkcompat.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/subprojects/glib.wrap +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/subprojects/gobject-introspection.wrap +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/subprojects/libffi.wrap +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/subprojects/packagefiles/pythoncapi-compat-meson.diff +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/subprojects/pycairo.wrap +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/subprojects/pythoncapi-compat.wrap +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/conftest.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/gi/overrides/Regress.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/gi/overrides/__init__.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/helper.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/meson.build +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/org.gnome.test.gschema.xml +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test-floating.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test-floating.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test-thread.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test-thread.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test-unknown.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test-unknown.h +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_async.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_atoms.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_docstring.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_error.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_events.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_everything.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_fields.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_fundamental.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_gio.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_glib.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_gtk_template.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_gtype.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_import_machinery.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_interface.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_internal_api.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_iochannel.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_mainloop.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_object_marshaling.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_option.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_ossig.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_overrides_gdk.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_overrides_gdkpixbuf.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_overrides_gio.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_overrides_glib.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_overrides_gobject.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_overrides_gtk.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_overrides_pango.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_properties.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_pycapi.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_pygtkcompat.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_repository.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_resulttuple.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_signal.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_source.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_subprocess.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_thread.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_typeclass.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/test_unknown.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/testhelpermodule.c +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tests/valgrind.supp +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tools/mkmetadata.py +0 -0
- {pygobject-3.51.0.dev0 → pygobject-3.52.1}/tools/pygi-convert.sh +0 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
|
|
5
|
+
python -m pip install --upgrade pdm
|
|
6
|
+
python -m pdm build
|
|
7
|
+
|
|
8
|
+
VERSION=$(grep version meson.build | head -1 | sed "s/^.*'\([0-9\.]*\)'.*$/\1/")
|
|
9
|
+
|
|
10
|
+
if [[ "$VERSION" =~ ^[0-9]\.[0-9]*[13579]\. ]]
|
|
11
|
+
then
|
|
12
|
+
cat << EOF
|
|
13
|
+
|
|
14
|
+
****************** ATTENTION ******************
|
|
15
|
+
This is an UNstable release.
|
|
16
|
+
Do NOT upload this release to PyPI.
|
|
17
|
+
****************** ATTENTION ******************
|
|
18
|
+
|
|
19
|
+
EOF
|
|
20
|
+
fi
|
|
@@ -11,7 +11,7 @@ stages:
|
|
|
11
11
|
- deploy
|
|
12
12
|
|
|
13
13
|
variables:
|
|
14
|
-
TARBALL_ARTIFACT_PATH: "dist/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}.tar.
|
|
14
|
+
TARBALL_ARTIFACT_PATH: "dist/${CI_PROJECT_NAME}-${CI_COMMIT_TAG}.tar.gz"
|
|
15
15
|
|
|
16
16
|
default:
|
|
17
17
|
image: registry.gitlab.gnome.org/gnome/pygobject/main:v26
|
|
@@ -106,6 +106,7 @@ pages:
|
|
|
106
106
|
expire_in: 30 days
|
|
107
107
|
rules:
|
|
108
108
|
- if: $CI_COMMIT_BRANCH == "main"
|
|
109
|
+
- if: $CI_COMMIT_TAG
|
|
109
110
|
|
|
110
111
|
sdist:
|
|
111
112
|
stage: build_and_test
|
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
3.52.1 - 2025-03-09
|
|
2
|
+
-------------------
|
|
3
|
+
|
|
4
|
+
Fixed release pipeline
|
|
5
|
+
|
|
6
|
+
3.52.0 - 2025-03-09
|
|
7
|
+
-------------------
|
|
8
|
+
|
|
9
|
+
From this version onwards girepository-2.0 is used for introspection.
|
|
10
|
+
This means that you'll need GLib >= 2.80.
|
|
11
|
+
|
|
12
|
+
* Fix invocation of async constructors :mr:`414`
|
|
13
|
+
* Use keyword module to find out if function or parameter is a keyword :mr:`412`
|
|
14
|
+
* Revert change that should prevent a memory leak in DBus invocation; this is now solved in GLib :mr:`404`
|
|
15
|
+
* Make sure function/method signature parameters have unique names :mr:`410`
|
|
16
|
+
* Support registering new enum and flags types from Python :mr:`400`
|
|
17
|
+
* Only release a python-compatible tarball :mr:`401` :mr:`411`
|
|
18
|
+
* GObject-based classes can now override the (`do`)`dispose` method :mr:`197`
|
|
19
|
+
* Add mappings to Cairo foreign types `cairo_font_face_t` / `cairo_scaled_font_t` :mr:`236` :mr:`403`
|
|
20
|
+
|
|
21
|
+
|
|
1
22
|
3.51.0 - 2025-02-01 (pre-release)
|
|
2
23
|
---------------------------------
|
|
3
24
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyGObject
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.52.1
|
|
4
4
|
Summary: Python bindings for GObject Introspection
|
|
5
5
|
Author-Email: James Henstridge <james@daa.com.au>
|
|
6
6
|
Maintainer-Email: Christoph Reiter <creiter@src.gnome.org>, Arjan Molenaar <amolenaar@gnome.org>, Dan Yeaw <danyeaw@gnome.org>, Ignacio Casal Quinteiro <icq@gnome.org>
|
|
@@ -9,7 +9,7 @@ intersphinx_mapping = {
|
|
|
9
9
|
'python': ('https://docs.python.org/3', None),
|
|
10
10
|
'cairo': ('https://pycairo.readthedocs.io/en/latest', None),
|
|
11
11
|
'apidocs': (
|
|
12
|
-
'https://
|
|
12
|
+
'https://api.pygobject.gnome.org/',
|
|
13
13
|
None,
|
|
14
14
|
),
|
|
15
15
|
}
|
|
@@ -14,9 +14,6 @@ Making a Release
|
|
|
14
14
|
#. In case of a stable release, upload to PyPI:
|
|
15
15
|
``twine upload dist/pygobject-3.X.Y.tar.gz``
|
|
16
16
|
#. Commit post-release version bump to pyproject.toml
|
|
17
|
-
#. Upload tarball: ``scp dist/pygobject-3.X.Y.tar.gz user@master.gnome.org:``
|
|
18
|
-
#. Install tarball:
|
|
19
|
-
``ssh user@master.gnome.org 'ftpadmin install pygobject-3.X.Y.tar.xz'``
|
|
20
17
|
#. In case the release happens on a stable branch copy the NEWS changes to
|
|
21
18
|
the main branch
|
|
22
19
|
|
|
@@ -44,7 +44,7 @@ and their dependencies. Follow the instructions for your platform below.
|
|
|
44
44
|
======================================================= ==================================================== ==========================================================
|
|
45
45
|
|
|
46
46
|
After running the example application have a look at the :doc:`/tutorials/index` for an overview of how to create GTK apps and the `GNOME Python API docs
|
|
47
|
-
<https://
|
|
47
|
+
<https://api.pygobject.gnome.org/>`__ for API documentation for all supported
|
|
48
48
|
libraries.
|
|
49
49
|
|
|
50
50
|
For full IDE support (incl. autocomplete) you will also need typing stubs available here `PyGObject-stubs <https://pypi.org/project/PyGObject-stubs/>`_.
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
.. currentmodule:: gi.repository
|
|
2
|
+
|
|
3
|
+
=============
|
|
4
|
+
Flags & Enums
|
|
5
|
+
=============
|
|
6
|
+
|
|
7
|
+
Flags are subclasses of :class:`GObject.GFlags`, which in turn is a
|
|
8
|
+
subclass of the standard library :class:`enum.IntFlag`. They represent
|
|
9
|
+
bit fields where some bits also have names:
|
|
10
|
+
|
|
11
|
+
.. code:: pycon
|
|
12
|
+
|
|
13
|
+
>>> Gtk.DialogFlags.MODAL
|
|
14
|
+
<DialogFlags.MODAL: 1>
|
|
15
|
+
>>> Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT
|
|
16
|
+
<DialogFlags.MODAL|DESTROY_WITH_PARENT: 3>
|
|
17
|
+
>>> int(_)
|
|
18
|
+
3
|
|
19
|
+
>>> Gtk.DialogFlags(3)
|
|
20
|
+
<DialogFlags.MODAL|DESTROY_WITH_PARENT: 3>
|
|
21
|
+
>>> isinstance(Gtk.DialogFlags.MODAL, Gtk.DialogFlags)
|
|
22
|
+
True
|
|
23
|
+
>>>
|
|
24
|
+
|
|
25
|
+
Bitwise operations on them will produce a value of the same type.
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
Enums are subclasses of :class:`GObject.GEnum`, which in turn is a
|
|
29
|
+
subclass of the standard library :class:`enum.IntEnum`. They represent
|
|
30
|
+
a list of named constants:
|
|
31
|
+
|
|
32
|
+
.. code:: pycon
|
|
33
|
+
|
|
34
|
+
>>> Gtk.Align.CENTER
|
|
35
|
+
<Align.CENTER: 3>
|
|
36
|
+
>>> int(Gtk.Align.CENTER)
|
|
37
|
+
3
|
|
38
|
+
>>> int(Gtk.Align.END)
|
|
39
|
+
2
|
|
40
|
+
>>> Gtk.Align(1)
|
|
41
|
+
<Align.START: 1>
|
|
42
|
+
>>> isinstance(Gtk.Align.CENTER, Gtk.Align)
|
|
43
|
+
True
|
|
44
|
+
|
|
45
|
+
Creating New Enums and Flags
|
|
46
|
+
----------------------------
|
|
47
|
+
|
|
48
|
+
New enumerations and flags types can be defined by subclassing
|
|
49
|
+
:class:`GObject.GEnum` or :class:`GObject.GFlags` in the same way as
|
|
50
|
+
standard library enumerations. A new GType is registered
|
|
51
|
+
automatically.
|
|
52
|
+
|
|
53
|
+
.. code:: pycon
|
|
54
|
+
|
|
55
|
+
>>> from gi.repository import GObject
|
|
56
|
+
>>> class E(GObject.GEnum):
|
|
57
|
+
... ONE = 1
|
|
58
|
+
... TWO = 2
|
|
59
|
+
...
|
|
60
|
+
>>> E.ONE
|
|
61
|
+
<E.ONE: 1>
|
|
62
|
+
>>> E.ONE.value_name
|
|
63
|
+
'ONE'
|
|
64
|
+
>>> E.ONE.value_nick
|
|
65
|
+
'one'
|
|
66
|
+
>>> E.__gtype__
|
|
67
|
+
<GType __main__+E (1014834640)>
|
|
68
|
+
>>> E.__gtype__.name
|
|
69
|
+
'__main__+E'
|
|
70
|
+
|
|
71
|
+
The GType name can be set explicitly by providing a ``__gtype_name__``
|
|
72
|
+
attribute:
|
|
73
|
+
|
|
74
|
+
.. code:: pycon
|
|
75
|
+
|
|
76
|
+
>>> from gi.repository import GObject
|
|
77
|
+
>>> class MyEnum(GObject.GEnum):
|
|
78
|
+
... __gtype_name__ = "MyEnum"
|
|
79
|
+
... ONE = 1
|
|
80
|
+
...
|
|
81
|
+
>>> MyEnum.__gtype__
|
|
82
|
+
<GType MyEnum (767309744)>
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
3
|
+
|
|
4
|
+
<svg
|
|
5
|
+
version="1.0"
|
|
6
|
+
width="392.86777"
|
|
7
|
+
height="96.050858"
|
|
8
|
+
id="svg6843"
|
|
9
|
+
sodipodi:docname="pygobject-dark.svg"
|
|
10
|
+
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
|
11
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
12
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
13
|
+
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
+
xmlns:svg="http://www.w3.org/2000/svg"
|
|
16
|
+
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
17
|
+
xmlns:cc="http://creativecommons.org/ns#"
|
|
18
|
+
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
|
19
|
+
<metadata
|
|
20
|
+
id="metadata12">
|
|
21
|
+
<rdf:RDF>
|
|
22
|
+
<cc:Work
|
|
23
|
+
rdf:about="">
|
|
24
|
+
<dc:format>image/svg+xml</dc:format>
|
|
25
|
+
<dc:type
|
|
26
|
+
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
27
|
+
<dc:title />
|
|
28
|
+
</cc:Work>
|
|
29
|
+
</rdf:RDF>
|
|
30
|
+
</metadata>
|
|
31
|
+
<sodipodi:namedview
|
|
32
|
+
pagecolor="#000000"
|
|
33
|
+
bordercolor="#666666"
|
|
34
|
+
borderopacity="1"
|
|
35
|
+
objecttolerance="10"
|
|
36
|
+
gridtolerance="10"
|
|
37
|
+
guidetolerance="10"
|
|
38
|
+
inkscape:pageopacity="0"
|
|
39
|
+
inkscape:pageshadow="2"
|
|
40
|
+
inkscape:window-width="2256"
|
|
41
|
+
inkscape:window-height="1435"
|
|
42
|
+
id="namedview10"
|
|
43
|
+
showgrid="false"
|
|
44
|
+
inkscape:zoom="1.2285173"
|
|
45
|
+
inkscape:cx="135.93622"
|
|
46
|
+
inkscape:cy="-1.6279787"
|
|
47
|
+
inkscape:window-x="0"
|
|
48
|
+
inkscape:window-y="0"
|
|
49
|
+
inkscape:window-maximized="1"
|
|
50
|
+
inkscape:current-layer="text4518"
|
|
51
|
+
inkscape:showpageshadow="2"
|
|
52
|
+
inkscape:pagecheckerboard="0"
|
|
53
|
+
inkscape:deskcolor="#d1d1d1" />
|
|
54
|
+
<defs
|
|
55
|
+
id="defs6845">
|
|
56
|
+
<linearGradient
|
|
57
|
+
inkscape:collect="always"
|
|
58
|
+
id="linearGradient4534">
|
|
59
|
+
<stop
|
|
60
|
+
style="stop-color:#ffffff;stop-opacity:1;"
|
|
61
|
+
offset="0"
|
|
62
|
+
id="stop4530" />
|
|
63
|
+
<stop
|
|
64
|
+
style="stop-color:#ffffff;stop-opacity:0;"
|
|
65
|
+
offset="1"
|
|
66
|
+
id="stop4532" />
|
|
67
|
+
</linearGradient>
|
|
68
|
+
<linearGradient
|
|
69
|
+
inkscape:collect="always"
|
|
70
|
+
id="linearGradient4522">
|
|
71
|
+
<stop
|
|
72
|
+
style="stop-color:#ffffff;stop-opacity:1;"
|
|
73
|
+
offset="0"
|
|
74
|
+
id="stop4518" />
|
|
75
|
+
<stop
|
|
76
|
+
style="stop-color:#ffffff;stop-opacity:0;"
|
|
77
|
+
offset="1"
|
|
78
|
+
id="stop4520" />
|
|
79
|
+
</linearGradient>
|
|
80
|
+
<linearGradient
|
|
81
|
+
inkscape:collect="always"
|
|
82
|
+
id="linearGradient4660">
|
|
83
|
+
<stop
|
|
84
|
+
style="stop-color:#646464;stop-opacity:1;"
|
|
85
|
+
offset="0"
|
|
86
|
+
id="stop4656" />
|
|
87
|
+
<stop
|
|
88
|
+
style="stop-color:#ffffff;stop-opacity:1"
|
|
89
|
+
offset="1"
|
|
90
|
+
id="stop4658" />
|
|
91
|
+
</linearGradient>
|
|
92
|
+
<linearGradient
|
|
93
|
+
inkscape:collect="always"
|
|
94
|
+
id="linearGradient4652">
|
|
95
|
+
<stop
|
|
96
|
+
style="stop-color:#5a9fd4;stop-opacity:1;"
|
|
97
|
+
offset="0"
|
|
98
|
+
id="stop4648" />
|
|
99
|
+
<stop
|
|
100
|
+
style="stop-color:#ffffff;stop-opacity:0.94650203"
|
|
101
|
+
offset="1"
|
|
102
|
+
id="stop4650" />
|
|
103
|
+
</linearGradient>
|
|
104
|
+
<linearGradient
|
|
105
|
+
inkscape:collect="always"
|
|
106
|
+
id="linearGradient4644">
|
|
107
|
+
<stop
|
|
108
|
+
style="stop-color:#edd400;stop-opacity:1;"
|
|
109
|
+
offset="0"
|
|
110
|
+
id="stop4640" />
|
|
111
|
+
<stop
|
|
112
|
+
style="stop-color:#ffffff;stop-opacity:1"
|
|
113
|
+
offset="1"
|
|
114
|
+
id="stop4642" />
|
|
115
|
+
</linearGradient>
|
|
116
|
+
<linearGradient
|
|
117
|
+
inkscape:collect="always"
|
|
118
|
+
xlink:href="#linearGradient4644"
|
|
119
|
+
id="linearGradient4646"
|
|
120
|
+
x1="53.816978"
|
|
121
|
+
y1="111.10486"
|
|
122
|
+
x2="20.88413"
|
|
123
|
+
y2="30.82696"
|
|
124
|
+
gradientUnits="userSpaceOnUse" />
|
|
125
|
+
<linearGradient
|
|
126
|
+
inkscape:collect="always"
|
|
127
|
+
xlink:href="#linearGradient4652"
|
|
128
|
+
id="linearGradient4654"
|
|
129
|
+
x1="70.43454"
|
|
130
|
+
y1="17.875593"
|
|
131
|
+
x2="53.816978"
|
|
132
|
+
y2="111.10486"
|
|
133
|
+
gradientUnits="userSpaceOnUse"
|
|
134
|
+
spreadMethod="pad" />
|
|
135
|
+
<linearGradient
|
|
136
|
+
inkscape:collect="always"
|
|
137
|
+
xlink:href="#linearGradient4660"
|
|
138
|
+
id="linearGradient4662"
|
|
139
|
+
x1="23.216625"
|
|
140
|
+
y1="81.319481"
|
|
141
|
+
x2="107.33282"
|
|
142
|
+
y2="39.060543"
|
|
143
|
+
gradientUnits="userSpaceOnUse" />
|
|
144
|
+
<linearGradient
|
|
145
|
+
inkscape:collect="always"
|
|
146
|
+
xlink:href="#linearGradient4522"
|
|
147
|
+
id="linearGradient4524"
|
|
148
|
+
x1="70.587303"
|
|
149
|
+
y1="17.177763"
|
|
150
|
+
x2="70.485733"
|
|
151
|
+
y2="67.361443"
|
|
152
|
+
gradientUnits="userSpaceOnUse" />
|
|
153
|
+
<linearGradient
|
|
154
|
+
inkscape:collect="always"
|
|
155
|
+
xlink:href="#linearGradient4534"
|
|
156
|
+
id="linearGradient4536"
|
|
157
|
+
x1="69.029457"
|
|
158
|
+
y1="87.363297"
|
|
159
|
+
x2="70.373047"
|
|
160
|
+
y2="68.046875"
|
|
161
|
+
gradientUnits="userSpaceOnUse" />
|
|
162
|
+
</defs>
|
|
163
|
+
<g
|
|
164
|
+
transform="translate(-19.822261,-15.90723)"
|
|
165
|
+
id="layer1">
|
|
166
|
+
<g
|
|
167
|
+
id="g4527"
|
|
168
|
+
transform="translate(0,-0.20854102)">
|
|
169
|
+
<path
|
|
170
|
+
inkscape:connector-curvature="0"
|
|
171
|
+
style="display:inline;opacity:1;fill:url(#linearGradient4654);fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.12400007;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
|
172
|
+
id="path6976"
|
|
173
|
+
d="M 20.88413,30.82696 53.816977,55.527708 107.33282,39.060543 70.587303,17.177763 Z" />
|
|
174
|
+
<path
|
|
175
|
+
inkscape:connector-curvature="0"
|
|
176
|
+
style="display:inline;fill:url(#linearGradient4662);fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.12364459;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
|
177
|
+
id="path6978"
|
|
178
|
+
d="M 22.94243,82.287118 20.88413,30.82696 53.816977,55.527708 v 55.577152 z" />
|
|
179
|
+
<path
|
|
180
|
+
inkscape:connector-curvature="0"
|
|
181
|
+
style="display:inline;opacity:1;fill:url(#linearGradient4646);fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2.12364459;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
|
182
|
+
id="path6980"
|
|
183
|
+
d="M 53.816977,111.10486 103.21619,90.5207 107.33282,39.060543 53.816977,55.527708 Z" />
|
|
184
|
+
<path
|
|
185
|
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:url(#linearGradient4536);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
186
|
+
d="m 70.597656,66.675781 -47.558594,14.044922 0.355469,1.197266 46.978516,-13.871094 32.652343,22.910156 0.71875,-1.023437 z"
|
|
187
|
+
id="path6982"
|
|
188
|
+
inkscape:connector-curvature="0" />
|
|
189
|
+
<path
|
|
190
|
+
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:url(#linearGradient4524);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
|
191
|
+
d="m 69.808594,17.875 v 49.109375 h 1.25 V 17.875 Z"
|
|
192
|
+
id="path6984"
|
|
193
|
+
inkscape:connector-curvature="0" />
|
|
194
|
+
</g>
|
|
195
|
+
<g
|
|
196
|
+
aria-label="PyGObject"
|
|
197
|
+
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40px;line-height:25px;font-family:Cantarell;-inkscape-font-specification:Cantarell;letter-spacing:-2px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
198
|
+
id="text4518"
|
|
199
|
+
transform="matrix(0.73060434,0,0,0.73060434,39.415227,17.281548)">
|
|
200
|
+
<path
|
|
201
|
+
d="m 134.29489,66.572751 c 14.8,0 26.88,-2.96 26.88,-17.44 0,-10.96 -7.68,-16.4 -22.96,-16.4 h -18.32 v 55.36 h 9.84 v -21.52 z m 16.8,-17.04 c 0,7.44 -7.76,8 -16.4,8 h -4.96 v -15.76 h 7.44 c 7.36,0 13.92,0.96 13.92,7.76 z"
|
|
202
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
203
|
+
id="path4529"
|
|
204
|
+
inkscape:connector-curvature="0" />
|
|
205
|
+
<path
|
|
206
|
+
d="m 164.91864,49.612751 17.44,38.8 -8.8,20.399999 h 10.8 l 23.6,-59.199999 h -10.16 l -10.4,29.52 -11.44,-29.52 z"
|
|
207
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
208
|
+
id="path4531"
|
|
209
|
+
inkscape:connector-curvature="0" />
|
|
210
|
+
<path
|
|
211
|
+
d="m 211.70114,60.092751 c 0,18.64 11.12,28.8 27.68,28.8 9.68,0 17.04,-2.4 22.4,-6.64 v -25.44 h -24.4 v 9.04 h 14.56 v 11.68 c -3.28,1.6 -5.84,2.32 -10.96,2.32 -11.28,0 -19.44,-6.48 -19.44,-20.16 0,-12.96 6.08,-19.04 19.68,-19.04 6.4,0 12,2.24 16.24,4.4 l 2.72,-8.72 c -5.28,-3.2 -12.48,-4.72 -19.2,-4.72 -19.52,0 -29.28,11.36 -29.28,28.48 z"
|
|
212
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
213
|
+
id="path4533"
|
|
214
|
+
inkscape:connector-curvature="0" />
|
|
215
|
+
<path
|
|
216
|
+
d="m 297.97114,31.612751 c -16.48,0 -27.52,11.92 -27.52,28.64 0,16.8 10.88,28.64 27.2,28.64 16.8,0 27.84,-12.24 27.84,-29.2 0,-16.64 -11.04,-28.08 -27.52,-28.08 z m -0.4,9.04 c 11.12,0 18.08,8.08 18.08,19.6 0,11.52 -6.24,19.6 -17.36,19.6 -11.2,0 -18,-8.72 -18,-20.24 0,-11.28 6.32,-18.96 17.28,-18.96 z"
|
|
217
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
218
|
+
id="path4535"
|
|
219
|
+
inkscape:connector-curvature="0" />
|
|
220
|
+
<path
|
|
221
|
+
d="m 340.09739,88.092751 1.92,-2.48 c 3.84,2.24 7.68,3.28 11.6,3.28 11.52,0 18.32,-8.56 18.32,-20.24 0,-11.68 -4.72,-19.92 -16.56,-19.92 -4.56,0 -8.32,1.12 -11.6,2.8 v -20.88 h -9.84 v 57.44 z m 3.68,-29.2 c 1.92,-0.8 5.68,-2.16 9.2,-2.16 6.88,0 9.12,4.96 9.12,12.48 0,7.52 -3.52,11.92 -10.08,11.92 -3.2,0 -5.92,-0.8 -8.24,-2.64 z"
|
|
222
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
223
|
+
id="path4537"
|
|
224
|
+
inkscape:connector-curvature="0" />
|
|
225
|
+
<path
|
|
226
|
+
d="m 385.06739,44.972751 c 3.12,0 5.92,-2.8 5.92,-5.92 0,-3.12 -2.8,-5.92 -5.92,-5.92 -3.12,0 -5.92,2.8 -5.92,5.92 0,3.12 2.8,5.92 5.92,5.92 z m -8.48,56.319999 c -1.2,0 -2.24,-0.24 -2.24,-0.24 l -1.92,7.36 c 0,0 2.64,0.8 5.44,0.8 10.16,0 12.24,-6.96 12.24,-13.999999 v -45.6 h -9.84 v 43.6 c 0,4.96 -0.56,8.079999 -3.68,8.079999 z"
|
|
227
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
228
|
+
id="path4539"
|
|
229
|
+
inkscape:connector-curvature="0" />
|
|
230
|
+
<path
|
|
231
|
+
d="m 420.17989,81.132751 c -9.44,0 -11.6,-4.08 -12,-9.04 h 26.4 v -3.76 c 0,-12.56 -5.92,-19.6 -17.44,-19.6 -11.44,0 -18.88,8.96 -18.88,20.08 0,12.48 7.68,20.08 20.64,20.08 5.12,0 10.08,-0.88 14.8,-2.4 l -1.92,-7.36 c -3.52,1.36 -7.36,2 -11.6,2 z m -11.92,-15.84 c 0.48,-4.64 2.48,-8.96 9.04,-8.96 4.8,0 7.44,2.8 7.44,8.96 z"
|
|
232
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
233
|
+
id="path4541"
|
|
234
|
+
inkscape:connector-curvature="0" />
|
|
235
|
+
<path
|
|
236
|
+
d="m 450.44364,68.812751 c 0,-7.44 4.4,-12.4 12.8,-12.4 5.04,0 7.84,1.2 9.6,2.16 l 1.92,-7.36 c -1.92,-1.2 -5.44,-2.48 -12.56,-2.48 -13.2,0 -21.6,7.76 -21.6,20.08 0,12 8.72,20.08 21.92,20.08 6.08,0 11.04,-1.76 12.4,-2.4 l -1.92,-7.36 c -1.68,0.8 -4.72,2.08 -9.76,2.08 -7.92,0 -12.8,-5.12 -12.8,-12.4 z"
|
|
237
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
238
|
+
id="path4543"
|
|
239
|
+
inkscape:connector-curvature="0" />
|
|
240
|
+
<path
|
|
241
|
+
d="m 510.91239,86.732751 -1.44,-6.8 c -1.44,0.4 -4.4,1.12 -7.12,1.12 -5.28,0 -6.48,-2.64 -6.48,-5.6 v -18.16 h 13.28 v -7.68 h -13.28 v -12.08 h -9.84 v 12.08 h -6.4 v 7.68 h 6.4 v 18.4 c 0,6.8 1.68,13.2 13.92,13.2 3.68,0 8.24,-1.12 10.96,-2.16 z"
|
|
242
|
+
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:Cantarell;-inkscape-font-specification:'Cantarell Bold';letter-spacing:0px;word-spacing:0px;fill:#d0d0d0;fill-opacity:1"
|
|
243
|
+
id="path4545"
|
|
244
|
+
inkscape:connector-curvature="0" />
|
|
245
|
+
</g>
|
|
246
|
+
</g>
|
|
247
|
+
</svg>
|
|
@@ -17,6 +17,13 @@
|
|
|
17
17
|
:align: center
|
|
18
18
|
:width: 400px
|
|
19
19
|
:height: 98px
|
|
20
|
+
:class: only-light
|
|
21
|
+
|
|
22
|
+
.. image:: images/pygobject-dark.svg
|
|
23
|
+
:align: center
|
|
24
|
+
:width: 400px
|
|
25
|
+
:height: 98px
|
|
26
|
+
:class: only-dark
|
|
20
27
|
|
|
21
28
|
|
|
|
22
29
|
|
|
@@ -29,7 +36,7 @@ If you want to write a Python application for `GNOME
|
|
|
29
36
|
PyGObject is the way to go. To get started, check out the "`GNOME Developer Documentation
|
|
30
37
|
<https://developer.gnome.org/documentation/tutorials/beginners.html>`__". For more
|
|
31
38
|
information on specific libraries, check out the
|
|
32
|
-
`GNOME Python API documentation <https://
|
|
39
|
+
`GNOME Python API documentation <https://api.pygobject.gnome.org/>`__.
|
|
33
40
|
|
|
34
41
|
.. code:: python
|
|
35
42
|
|
|
@@ -136,6 +143,6 @@ Further Resources
|
|
|
136
143
|
`GNOME Developer Documentation <https://developer.gnome.org/documentation/tutorials/beginners.html>`__
|
|
137
144
|
Tutorials for creating a GNOME application using PyGObject, GTK 4, and Libadwaita.
|
|
138
145
|
|
|
139
|
-
`GNOME Python API documentation <https://
|
|
146
|
+
`GNOME Python API documentation <https://api.pygobject.gnome.org/>`__
|
|
140
147
|
Auto generated API documentation for many libraries accessible through
|
|
141
148
|
PyGObject.
|
|
@@ -16,7 +16,7 @@ Although here we try to describe the most important classes and methods from
|
|
|
16
16
|
GObject based libraries like GTK, it is not supposed to serve as an API
|
|
17
17
|
reference. Please refer to the :ref:`api-references` list where you will
|
|
18
18
|
find a detailed description of the API for each library. Also there's a
|
|
19
|
-
`Python-specific reference <https://
|
|
19
|
+
`Python-specific reference <https://api.pygobject.gnome.org/>`_
|
|
20
20
|
available.
|
|
21
21
|
|
|
22
22
|
.. note::
|
|
@@ -38,7 +38,7 @@ API References
|
|
|
38
38
|
* `Gio <https://docs.gtk.org/gio/>`_
|
|
39
39
|
* `GLib <https://docs.gtk.org/glib/>`_
|
|
40
40
|
* `Adwaita <https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/>`_
|
|
41
|
-
* `Python-specific references <https://
|
|
41
|
+
* `Python-specific references <https://api.pygobject.gnome.org/>`_
|
|
42
42
|
|
|
43
43
|
Other Resources
|
|
44
44
|
---------------
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# -*- Mode: Python; py-indent-offset: 4 -*-
|
|
2
|
+
# vim: tabstop=4 shiftwidth=4 expandtab
|
|
3
|
+
#
|
|
4
|
+
# Copyright (C) 2025 James Henstridge <james@jamesh.id.au>
|
|
5
|
+
#
|
|
6
|
+
# _enum.py: base classes for enumeration and flags types.
|
|
7
|
+
#
|
|
8
|
+
# This library is free software; you can redistribute it and/or
|
|
9
|
+
# modify it under the terms of the GNU Lesser General Public
|
|
10
|
+
# License as published by the Free Software Foundation; either
|
|
11
|
+
# version 2.1 of the License, or (at your option) any later version.
|
|
12
|
+
#
|
|
13
|
+
# This library is distributed in the hope that it will be useful,
|
|
14
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
15
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
16
|
+
# Lesser General Public License for more details.
|
|
17
|
+
#
|
|
18
|
+
# You should have received a copy of the GNU Lesser General Public
|
|
19
|
+
# License along with this library; if not, write to the Free Software
|
|
20
|
+
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
|
21
|
+
# USA
|
|
22
|
+
|
|
23
|
+
import enum
|
|
24
|
+
|
|
25
|
+
from . import _gi
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class GEnumMeta(enum.EnumMeta):
|
|
29
|
+
|
|
30
|
+
def __new__(metacls, name, bases, classdict, /, **kwargs):
|
|
31
|
+
enum_class = super().__new__(metacls, name, bases, classdict, **kwargs)
|
|
32
|
+
|
|
33
|
+
# If __gtype__ is not set, this is a new enum or flags defined
|
|
34
|
+
# from Python. Register a new GType for it.
|
|
35
|
+
if '__gtype__' not in enum_class.__dict__:
|
|
36
|
+
type_name = enum_class.__dict__.get('__gtype_name__')
|
|
37
|
+
if issubclass(enum_class, GFlags):
|
|
38
|
+
_gi.flags_register(enum_class, type_name)
|
|
39
|
+
elif issubclass(enum_class, GEnum):
|
|
40
|
+
_gi.enum_register(enum_class, type_name)
|
|
41
|
+
else:
|
|
42
|
+
raise AssertionError(f"unexpected class {enum_class}")
|
|
43
|
+
|
|
44
|
+
return enum_class
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class GEnum(enum.IntEnum, metaclass=GEnumMeta):
|
|
48
|
+
__module__ = _gi.__name__
|
|
49
|
+
__gtype__ = None
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class GFlags(enum.IntFlag, metaclass=GEnumMeta):
|
|
53
|
+
__module__ = _gi.__name__
|
|
54
|
+
__gtype__ = None
|
|
@@ -103,17 +103,24 @@ def get_pytype(gi_type: TypeInfo) -> object:
|
|
|
103
103
|
|
|
104
104
|
|
|
105
105
|
def generate_signature(info: CallableInfo) -> Signature:
|
|
106
|
+
args = info.get_arguments()
|
|
107
|
+
arg_names = {arg.get_name() for arg in args}
|
|
108
|
+
|
|
109
|
+
def unique(name):
|
|
110
|
+
while name in arg_names:
|
|
111
|
+
name += '_'
|
|
112
|
+
arg_names.add(name)
|
|
113
|
+
return name
|
|
114
|
+
|
|
106
115
|
params = []
|
|
107
116
|
if isinstance(info, FunctionInfo):
|
|
108
117
|
if info.is_constructor():
|
|
109
|
-
params.append(Parameter("cls", Parameter.POSITIONAL_OR_KEYWORD))
|
|
118
|
+
params.append(Parameter(unique("cls"), Parameter.POSITIONAL_OR_KEYWORD))
|
|
110
119
|
elif info.is_method():
|
|
111
|
-
params.append(Parameter("self", Parameter.POSITIONAL_OR_KEYWORD))
|
|
120
|
+
params.append(Parameter(unique("self"), Parameter.POSITIONAL_OR_KEYWORD))
|
|
112
121
|
elif isinstance(info, VFuncInfo):
|
|
113
|
-
params.append(Parameter("type", Parameter.POSITIONAL_OR_KEYWORD))
|
|
114
|
-
params.append(Parameter("self", Parameter.POSITIONAL_OR_KEYWORD))
|
|
115
|
-
|
|
116
|
-
args = info.get_arguments()
|
|
122
|
+
params.append(Parameter(unique("type"), Parameter.POSITIONAL_OR_KEYWORD))
|
|
123
|
+
params.append(Parameter(unique("self"), Parameter.POSITIONAL_OR_KEYWORD))
|
|
117
124
|
|
|
118
125
|
# Build lists of indices prior to adding the docs because it is possible
|
|
119
126
|
# the index retrieved comes before input arguments being used.
|