This would close #30
Note that
- this is currently based on
gtkmm-3-24
but of course should wait until we branch togtkmm-3-26
- and indeed assumes that in itsnewin
annotations - others may want to make alternative proposals for the names of the new functions or how I wrote the deprecation notices
commit 3ec71b5eed8fd016c02b139533adb46e58da36a9 (HEAD -> wip/dboles/Gdk_ImageSurface, origin/wip/dboles/Gdk_ImageSurface)
Author: Daniel Boles <dboles.src@gmail.com>
Date: Thu Jun 20 18:37:14 2019 +0100
Cursor: Add replacements with correct ImageSurface
create() and get_surface() should've taken and returned
RefPtr<ImageSurface>, but they used RefPtr<Surface> instead.
Deprecate the old versions, and add new ones that replace them, by
overloading create() and renaming get_surface() to get_image_surface().
https://gitlab.gnome.org/GNOME/gtkmm/issues/30
commit 9e100a52b133b635a7197608418e7a4726cc9d72
Author: Daniel Boles <dboles.src@gmail.com>
Date: Thu Jun 20 18:37:10 2019 +0100
GdkWindow: Fix create_similar_image_surface return
This should return a Cairo::ImageSurface, but it returned just a Surface
We can't change the return type of the existing function in 3 because
that would break ABI, but we can add a new function suffixed _derived
that returns the correct RefPtr type and deprecate the older symbol.
https://gitlab.gnome.org/GNOME/gtkmm/issues/30
commit 265be45408d2b5a8ace4e091b8a6c36851eb635c (wip/dboles/Gdk_ImageSurface_refs)
Author: Daniel Boles <dboles.src@gmail.com>
Date: Thu Jun 20 18:49:05 2019 +0100
Window: Do not add 2nd ref to new Cairo::Surface
The C functions already return a newly allocated objected that the
caller owns, so if we pass `false` as Cairo's `has_reference`, then we
add another on the gtkmm side, so we will end up leaking that object.
https://gitlab.gnome.org/GNOME/gtkmm/merge_requests/19#note_535429
commit 769933b202813b35b7f0448e850d4823f3fbd8aa
Author: Daniel Boles <dboles.src@gmail.com>
Date: Thu Jun 20 18:38:44 2019 +0100
Cursor: Fix meaning of comment about Cairo ref arg
Cairo::Object takes a has_reference parameter, not take_copy with
inverted meaning as in glibmm/gtkmm.
Say "do not take ref" like e.g. window.hg already did, which is a bit
clearer than has_reference (when does it get that? before or after us?)
https://gitlab.gnome.org/GNOME/gtkmm/merge_requests/19#note_535429
https://gitlab.gnome.org/GNOME/gtkmm/merge_requests/19#note_536603