| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
| |
Fallout from https://gitlab.gnome.org/GNOME/glib/-/commit/0ffe86a1f7e215e4561c3b9f1d03c3cd638ed00f
Our test suite runs with G_DEBUG=fatal-criticals and the last glib release
upgraded some warnings which we explicitely ignored or captured to criticals,
making the tests fail in various places.
Ignore those new criticals where needed.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Python 3.8 no longer uses PATH for searching DLLs so we have to
add them manually.
Note that unlike PATH add_dll_directory() has no defined order,
so if there are two same DLLs in PATH we might get a random one.
This only makes sure that 'setup.py test' and 'pytest' continue working.
If you include pygobject manually you have to call os.add_dll_directory()
yourself with the location of the DLLs you ship.
|
|
|
|
|
| |
The test_gvalue_gobject_ref_counts appears to be working just fine these
days.
|
| |
|
| |
|
|
|
|
| |
Those methods require a Gdk.ContentFormats object.
|
|
|
|
| |
They moved away from bitbucket some time ago.
|
|
|
|
|
|
| |
If it triggers it creates a blocking GUI dialog without any helpful output.
I can't reproduce the cause on my local machine, just on the CI server, so
jsut disable this for now.
|
|
|
|
|
|
|
|
| |
It got renamed in gtk 4.1.0, see https://gitlab.gnome.org/GNOME/gtk/-/commit/a1216599ff6b39bca3e936fbf
To avoid an API break and make porting easier provide both versions for
all users.
Fixes #467
|
| |
|
|
|
|
|
|
| |
Found by Coverity.
https://bugzilla.redhat.com/show_bug.cgi?id=1938851
|
|
|
|
|
|
|
|
|
|
| |
Up until now this raised an exception "This method is currently unsupported.".
With Gtk.Widget.destroy() gone in gtk4 and that method often being used to remove
references to other objects and breaking cycles this is the next best thing
on a lower level and should make porting a bit easier.
Fixes #470
|
|
|
|
|
|
|
|
|
|
|
|
| |
In a4880dbc4575fadc0e3 a special case for partial() was added to handle gtk4 template
callbacks. This in turn broken normal usage of partial objects.
To work around that add a special marker in the gtk template code for now until
we find a better fix.
Also adds a test so this doesn't happen again.
Fixes #464
|
|
|
|
|
|
|
| |
Since 2.68 Gio.File.new_for_path("") returns a GDummyFile instead of
a GLocalFile. We don't really care since we just want to test that there
is a name despite the type not being in the gir, so just pass a potentially
valid path instead.
|
| |
|
|
|
|
|
| |
GTK4 removed the Gtk.Container interface. All GTK4 widgets are now
iterable.
|
|
|
|
|
| |
In GTK4, the margin property does not exist anymore. Replace it by the
margin-top property.
|
| |
|
|
|
|
| |
Swapped defaults to TRUE when object is set.
|
|
|
|
|
|
|
|
|
|
| |
This function use CompareDataFunc which works with pointers and
doesn't know anything about GObjects.
The same logic as in Gio.List.sort and Gio.List.insert_sorted is
used.
An associated unit_test is also added.
|
|
|
|
|
|
|
|
|
|
| |
GTK4 removed the Gtk.Container interface, and added API on Gtk.Widget
to iterate over children instead.
Making Widgets iterable allows to easily loop over the children and
check is a widget is a child of an other one.
A new test is also added.
|
|
|
|
|
|
| |
Basically everything where we hav a transition path that works for
both gtk3 and 4. We'll need to add new deprecation warnings for gtk3
once things have settled down.
|
| |
|
|
|
|
| |
skip template/builder tests for now as they require larger changes
|
|
|
|
| |
We'll get back to them later
|
|
|
|
| |
pack1/2 are gone
|
|
|
|
|
|
|
| |
gtk4 calls get_dbus_object_path() on the default app and glib leaves
invalid GApplication instances as default in various places. It's hard
to track where a new default instances gets set, so just disable a11y
in the test suite for now.
|
|
|
|
|
| |
GFileIcon asserts that it gets a file now:
https://gitlab.gnome.org/GNOME/glib/-/commit/e2fbb74301
|
| |
|
| |
|
|
|
|
|
|
|
| |
This was required for Python 2 where Python didn't import our built modules
in the build dir because there is no __init__.py. In Python 3 this just works.
Tested with setup.py/pytest/meson
|
| |
|
|
|
|
|
|
|
| |
PyUnicode_GET_SIZE() is deprecated and actually wrong in case wchar_t
is not 4 bytes and high code points, use PyUnicode_GET_LENGTH() instead.
Fixes a deprecation warning with Python 3.9
|
|
|
|
| |
So user have more control on whether to build it or not
|
| |
|
|
|
|
|
|
|
| |
override is there
Also make it conditional on the Gtk.Widget method existing since that was only
added with gtk 3.20 and we support 3.18+.
|
| |
|
|
|
|
|
|
|
|
| |
See gtk commit c1f71ee3e8add0c8e43445b888719ac85a743583. There are now
top_level windows only.
A new gtk4 test is added to check that windows are correctly created
and work from builder.
|
|
|
|
| |
See gtk commit 2244eeb7270f5a0b351aae98c19ddbc4d4b5bea7.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
init_template method is automatically called when a widget is
created and it is not supposed to be called multiple times. That is
why this method is turned into a no-op after its first call via a
lambda function.
init_template can still be called after a widget creation (and it is
supposed to do nothing). However, a second call will result in a crash
because the lambda function has a parameter while init_template is not
supposed to have any parameter.
This issue is fixed by removing the parameter of the lambda function.
A new test is also added to assert that a second init_template call
does nothing.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a widget is inside a template it is created through a
g_object_new and does not have a python wrapper when
pygobject__g_instance_init is called. In that case, a wrapper is
created and the "__init__" method is called to instantiate it. Then,
"init_template" is called to init its own template (if it exists).
However, "init_template" needs to be called before the object
constructor in order to create and instantiate all its children,
signals and properties.
This issue is fixed by calling init_template before the contructor if
the python object has been created through g_object_new.
A new test for the template hierarchy is added (based on an example
from Marinus Schraal).
Closes: #257, #386
|
|
|
|
| |
This is a leftover from when things were split up
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
TreeModel.sort_new_with_model exist
In https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/1134 the method was changed to a constructor
which means the API is different between older and newer gtk.
Add fallbacks for both in our overrides so both ways work all the time.
|
| |
|
|
|
|
|
|
|
| |
It has been removed (gtk commit
4dd780a96b1d37903ab88a4ae4536329cd9e164e)
The associated tests are updated or skipped for Gtk 4.
|
|
|
|
|
|
|
| |
It has been removed (gtk commit
44e153d8a8679633681dd3ae2029735255e4f839).
The associated test is removed.
|
|
|
|
|
| |
This no longer works since pytest 5.4.0. Somehow the xfail gets checked before
the plugin runs so errors thrown in the plugin get ignored.
|