| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* python < 2.6 does not allow sending in keyword litterals after sending in
*args. You can only send in **kwds.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* right now we trust that the containers we send the closures into will sink
them
* we should research this a bit more to see if there is a better way to handle
floating closures once we are free to break static binding ABI
* for now this is the least invasive of all the options
* don't assert on transfer != GI_TRANSFER_NONE since the behavior for
closures is always the same (and should actually be GI_TRANSFER_FULL)
|
| |
|
| |
|
|
|
|
|
| |
Some tests, such as tests/test_gdbus.py check parts of error messages or other
visible strings. Ensure that these do not get translated in the test suite.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* this function is available specifically so we can test events so use this
instead of creating our own button press event
|
|
|
|
|
|
|
| |
* John (J5) Palmieri - fixed up original patch so that we actually
emit the event instead of just creating a Gdk.ButtonEvent object
https://bugzilla.gnome.org/show_bug.cgi?id=642554
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=642437
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=642554
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* union members are not subclasses of the union they belong to so if an
inteface requires you pass a union but you pass one of its members
there will be a type error
* this patch checks to see if the type you are passing is a member of the
union and passes the checks if it is
* this works in python 3 but in python 2 methods do their own isinstance
check on the instance parameter (e.g. self) so we need to figure
out how to override that for union methods (e.g. Gdk.Event.get_state)
https://bugzilla.gnome.org/show_bug.cgi?id=642554
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I have added a test case, and made a few fixes to John's patch, but the
solution is the same his.
Workaround a bug when freeing C array types
* This is a hack and there is really no way around it without ripping out
the current array handling code which spans between pygi-invoke.c and
pygi-argument.c and completely rewriting it.
* The is no time before our stable release
* This patch trades a segfault for a leak in the very unusual case where
an error occures inside an interface that takes one or more C arrays. Since
we wrap C arrays in GArrays internally but have to unwrap them to send them
to the introspected C function, there is a period of time where an error
can occure with the C array in an unknown state (some being true C arrays
and others still wrapped in a GArray)
* This patch adds a c_arrays_are_wrapped state to signal that it is safe to
free them. However since c_arrays_are_wrapped can only track arrays
as a group, not individually, if it is set to FALSE we can not assume
that every array is a pure C array, so instead we will simply leak them
to avoid incorrectly freeing one and causing a segfault.
* This issue is fixed in the invoke rewrite branch as it treats C arrays and
GArrays separately, however that branch is not yet ready to be merged and
won't be until the next release.
https://bugzilla.gnome.org/show_bug.cgi?id=642708
|
|
|
|
| |
* as done in PyGTK None indicates the column should not be set
|
|
|
|
| |
attr is available).
|
|
|
|
|
|
|
|
| |
This fixes Tomeu's previous commit, which removed lazy loading.
Forcing the loading of a module before it is installed in sys.modules
prevents some overrides from being registered (namely Gtk.main_quit).
https://bugzilla.gnome.org/show_bug.cgi?id=642305
|
|
|
|
|
|
|
|
|
|
|
| |
Flags constructs a dict __flags_values__ and uses it to cache
instances. However some flags in Glib such as G_IO_FLAG_MASK and
G_IO_FLAG_GET_MASK are aliases for the same int value, and will
override each other's place in the dictionary.
The dict length check is not necessary. It only reduces the number
of duplicate instances we keep, because if an instance is not
found in the dict, a new one is created anyway.
|
| |
|
| |
|
|
|
|
|
|
| |
also adds Repository.get_loaded_namespaces()
https://bugzilla.gnome.org/show_bug.cgi?id=642305
|
|
|
|
|
|
| |
* needs patch from https://bugzilla.gnome.org/show_bug.cgi?id=642914
https://bugzilla.gnome.org/show_bug.cgi?id=642921
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Right now GValues are transparent to the user but this leave us no
way to describe fundimental types other than those supported directly
by python (e.g. int, str, etc)
* If an interface is expecting a uint or other GValue type a user can now use
the raw GValue interfaces and expect paramaters that take GValues to
marshal them correctly e.g.:
value = GObject.Value()
value.int(GObject.TYPE_UINT)
value.set_uint(1234)
* The objective here is to not for users to use this API but for overrides
to be able to utilize them. For instance in the TreeModel API we can
get the expected type for a column and them create a GValue with the correct
type so that he underlying python object is marshalled correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=642914
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note: rebuild of gobject-introspection is required for new tests.
Previously non-GType enums used a separate type implemented in
Python, and non-GType flags had no implementation at all. This
removes the separate type for enums, and registers a new GType at
runtime if there isn't one.
This allows non-GType enums and flags to use the same Python type
as GType enums and flags. This removes duplication of code, and
make both kinds behave identically.
https://bugzilla.gnome.org/show_bug.cgi?id=642607
|
| |
|
|
|
|
| |
master already has this.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Provide a wrapper for Gio.DBusProxy for calling D-Bus methods like on a normal
Python object. This will handle the Python object <-> GVariant conversion, and
optional keyword arguments for flags, timeout, and a result handler for
asynchronous calls.
Require specifying the input argument signature as the first argument of each
method call. This ensures that the types of e. g. integers are always correct,
and avoids having to do expensive D-Bus introspection for each call.
https://bugzilla.gnome.org/show_bug.cgi?id=640181
|
|
|
|
|
|
|
|
|
| |
Python code should have never have to explicitely return a GError.
Once we are able to marshal exceptions the Python code should
throw an exception instead. Until then, set GError to NULL, and
don't complain if a Python function doesn't return an arg for it.
https://bugzilla.gnome.org/show_bug.cgi?id=642715
|
|
|
|
| |
* needs some Pango Attr fixes to be 100% done, See FIXME
|
|
|
|
| |
* needs annotation fix from GdkPixbuf for ImageLoader to work
|
| |
|
| |
|
|
|
|
| |
* needs some annotations for pango before it is 100% useful
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=635947
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Importing and using both static gobject bindings and
introspection GObject bindings in the same process can cause
conflicts with types which otherwise wouldn't be there.
This patch changes "make check" to call runtests.py twice -- once
for each set of tests.
In the case of a test failure, runtests.py now sets the exit code
so that make does not continue. Otherwise you might miss the
failures from the first batch of tests in the scrollback.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bindings.
Previously type lookups (as well as property accesses and signal
connects would trigger an import of the gi module). Now we make
those paths fail, and fallback to the old static binding code
paths *unless* the gi module is already in sys.modules.
So if Python code calls:
from gi.repository import Gtk
or even just:
import gi
then everything will work just like it did without this patch. If gi
is not explicitly imported, the code skips the introspection code
and acts like the old static bindings did.
https://bugzilla.gnome.org/show_bug.cgi?id=642387
|
| |
|
| |
|