gtk/gdk
Emmanuele Bassi 2cbe094b91 Allow binding GdkContentFormatsBuilder
GdkContentFormatsBuilder is currently not introspectable, as it does not
have a GType. We can turn it into a boxed type, but we need to implement
memory management for it.

The current gdk_content_formats_builder_free() function returns a newly
constructed value, so we cannot use it as a GBoxedFreeFunc; additionally
copying a GdkContentFormatsBuilder contents would make it a bit odd, as
you could get multiple identical GdkContentFormats out of the copies.

A simple approach is to model the GdkContentFormatsBuilder API to follow
the GBytes one: use reference counting for memory management, and have
a function to release a reference, return a GdkContentFormats, and reset
the GdkContentFormatsBuilder state.

For language bindings, we can provide a get_formats() function that
returns the GdkContentFormats instance and resets the builder instance,
leaving the reference count untouched.

For C convenience we can keep gdk_content_formats_builder_free(), and
make it a wrapper around gdk_content_formats_builder_get_formats(), with
the guarantee that it'll free the builder instance regardless of its
current reference count.

https://bugzilla.gnome.org/show_bug.cgi?id=793097
https://blogs.gnome.org/otte/2018/02/03/builders/
2018-02-03 16:24:13 +01:00
..
broadway Drop the Big GDK Lock 2018-02-03 12:07:10 +01:00
mir Drop the Big GDK Lock 2018-02-03 12:07:10 +01:00
quartz Drop the Big GDK Lock 2018-02-03 12:07:10 +01:00
resources/glsl Use GLSL version 110 for OpenGL 2 shaders. 2016-11-01 15:42:46 -03:00
wayland Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
win32 Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
x11 Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
COPYING
fallback-c89.c fallback-c89: Include config.h 2017-05-03 14:47:14 +01:00
gdk-autocleanup.h gdk: Add some missing autocleanups 2017-11-28 15:03:48 -05:00
gdk-private.h Make gdk logging per-display 2018-01-14 17:05:04 -05:00
gdk.c Remove all gdk_threads_* entry points 2018-02-03 12:07:10 +01:00
gdk.h Remove all gdk_threads_* entry points 2018-02-03 12:07:10 +01:00
gdkapplaunchcontext.c More documentation additions 2017-12-26 13:00:27 -05:00
gdkapplaunchcontext.h gdk: Include gio.h in gdktypes.h 2017-12-10 01:09:14 +01:00
gdkapplaunchcontextprivate.h gdk: Include gio.h in gdktypes.h 2017-12-10 01:09:14 +01:00
gdkcairo.c docs: Remove mention of GdkColor 2017-01-18 04:13:56 +01:00
gdkcairo.h API: gdk: Remove ability to render window contents 2016-11-20 11:47:44 +01:00
gdkclipboard.c Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
gdkclipboard.h gdk: Documentation improvements 2017-12-04 23:52:48 -08:00
gdkclipboardprivate.h clipboard: Add infrastructure to store clipboards 2017-12-03 05:46:48 +01:00
gdkconfig.h.meson gdk/gdkconfig.h.meson: Add GDK_WINDOWING_WIN32 2017-09-15 21:41:15 +08:00
gdkconfig.h.win32
gdkconfig.h.win32_vulkan Visual Studio builds: Support Vulkan builds 2016-12-30 14:42:38 +08:00
gdkcontentdeserializer.c Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
gdkcontentdeserializer.h Add documentation for content (de)serializers 2017-12-26 14:39:49 -05:00
gdkcontentformats.c Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
gdkcontentformats.h Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
gdkcontentformatsprivate.h gdk: Sanitize GdkContentFormats API 2017-11-20 23:15:11 +01:00
gdkcontentprovider.c gdk: Documentation improvements 2017-12-04 23:52:48 -08:00
gdkcontentprovider.h Document more structs 2017-12-26 14:39:24 -05:00
gdkcontentproviderimpl.c Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
gdkcontentproviderimpl.h clipboard: Introduce GdkContentProvider 2017-12-03 05:46:47 +01:00
gdkcontentproviderprivate.h clipboard: Introduce GdkContentProvider 2017-12-03 05:46:47 +01:00
gdkcontentserializer.c Allow binding GdkContentFormatsBuilder 2018-02-03 16:24:13 +01:00
gdkcontentserializer.h Add documentation for content (de)serializers 2017-12-26 14:39:49 -05:00
gdkcursor.c cursor docs: Point to gtk_widget_set_cursor 2017-12-26 14:39:49 -05:00
gdkcursor.h Drop gdk_cursor_new_from_pixbuf 2017-11-29 20:16:43 -05:00
gdkcursorprivate.h gdk: Add gdk_cursor_hash() and gdk_cursor_equal() 2017-11-04 00:07:13 +01:00
gdkdevice.c Document more structs 2017-12-26 14:39:24 -05:00
gdkdevice.h Don't mention GdkDeviceManager in docs 2017-11-25 11:04:14 -05:00
gdkdevicepad.c Document more structs 2017-12-26 14:39:24 -05:00
gdkdevicepad.h gdk: Add GdkDevicePad 2016-08-23 21:01:44 +02:00
gdkdevicepadprivate.h gdk: Add GdkDevicePad 2016-08-23 21:01:44 +02:00
gdkdeviceprivate.h Drop the ::device-manager property 2017-11-25 11:04:15 -05:00
gdkdevicetool.c gdk: Use G_PARAM_SPEC_STATIC_STRINGS throughout 2017-11-17 21:38:08 -05:00
gdkdevicetool.h gdk: Add a getter for the hardware id of a GdkDeviceTool 2016-08-23 21:01:44 +02:00
gdkdevicetoolprivate.h gdk: Pass hardware ID on gdk_device_tool_new() 2016-08-23 21:01:44 +02:00
gdkdisplay.c gdk: Drop some unused cursor apis 2018-01-16 23:32:01 -05:00
gdkdisplay.h gdk: Drop some unused cursor apis 2018-01-16 23:32:01 -05:00
gdkdisplaymanager.c Document more structs 2017-12-26 14:39:24 -05:00
gdkdisplaymanager.h gdk: Move some headers around 2017-11-16 22:18:45 -05:00
gdkdisplaymanagerprivate.h
gdkdisplayprivate.h gdk: Drop some unused cursor apis 2018-01-16 23:32:01 -05:00
gdkdnd.c dnd: Remove 2 vfuncs that aren't needed 2018-01-31 13:21:26 +01:00
gdkdnd.h dnd: Remove gdk_drag_get_selection() 2017-12-14 04:39:22 +01:00
gdkdndprivate.h dnd: Remove unused member variable 2018-01-31 13:21:26 +01:00
gdkdrawcontext.c gdk: Cosmetic rewording of draw context docs 2017-12-26 14:39:49 -05:00
gdkdrawcontext.h gdk: Add GdkDrawContext 2016-12-05 15:02:47 +01:00
gdkdrawcontextprivate.h gdk: Make gdk_window_begin_draw_frame() take a draw context 2016-12-05 15:02:47 +01:00
gdkdrawingcontext.c GdkDrawingContext: Add missing nullable annotation 2018-01-10 08:46:22 +01:00
gdkdrawingcontext.h gdk: Make gdk_window_begin_draw_frame() take a draw context 2016-12-05 15:02:47 +01:00
gdkdrawingcontextprivate.h drawingcontext: Add a private struct 2016-11-23 18:49:48 +01:00
gdkenumtypes.c.template
gdkenumtypes.h.template
gdkevents.c Document more structs 2017-12-26 14:39:24 -05:00
gdkevents.h gdk: Move GdkWindowState enum around 2017-12-26 13:00:27 -05:00
gdkeventsprivate.h Try to make the docs build more quiet 2017-12-26 13:00:27 -05:00
gdkframeclock.c Document more structs 2017-12-26 14:39:24 -05:00
gdkframeclock.h
gdkframeclockidle.c Replace gdk_threads_add_timeout* with g_timeout_add() 2018-02-03 12:06:58 +01:00
gdkframeclockidle.h
gdkframeclockprivate.h
gdkframetimings.c Document more structs 2017-12-26 14:39:24 -05:00
gdkframetimings.h
gdkgl.c Make gdk logging per-display 2018-01-14 17:05:04 -05:00
gdkglcontext.c Make gdk logging per-display 2018-01-14 17:05:04 -05:00
gdkglcontext.h gdkgl: Add gdk_gl_context_get_damage() 2016-12-05 15:02:47 +01:00
gdkglcontextprivate.h gdkgl: Add gdk_gl_context_get_damage() 2016-12-05 15:02:47 +01:00
gdkglobals.c gdk: Reorganize env vars 2018-01-14 17:05:04 -05:00
gdkinternals.h Drop the cairo-recording debug flag 2018-01-14 17:05:04 -05:00
gdkintl.h
gdkkeynames.c
gdkkeys.c docs: Annotate gdk_keymap_get_display() 2018-02-01 16:13:53 +01:00
gdkkeys.h Add a display property to keymaps 2018-01-14 17:05:04 -05:00
gdkkeysprivate.h
gdkkeysyms-update.pl Remove gdkkeysyms-compat.h 2017-05-03 14:54:37 +01:00
gdkkeysyms.h
gdkkeyuni.c Replace gdk_keymap_get_for_display by gdk_display_get_keymap 2017-12-15 07:44:58 -05:00
gdkmarshalers.list x11: Refactor xevent filtering some more 2017-12-13 01:55:56 +01:00
gdkmonitor.c GdkMonitor: Fix link to nonexistent Display method 2018-01-13 20:06:39 +00:00
gdkmonitor.h monitor: Add a ::valid property 2017-11-01 14:17:20 -04:00
gdkmonitorprivate.h monitor: Add a ::valid property 2017-11-01 14:17:20 -04:00
gdkpango.c Stop including gdkscreen.h 2017-11-17 10:51:55 -05:00
gdkpango.h Drop gdk_pango_context_get_for_display 2017-10-31 18:15:50 -04:00
gdkpipeiostream.c clipboard: Implement local fallback clipboard transfers 2017-12-03 05:46:47 +01:00
gdkpipeiostreamprivate.h clipboard: Implement local fallback clipboard transfers 2017-12-03 05:46:47 +01:00
gdkpixbuf-drawable.c gdk: Reshuffle docs slightly 2017-12-25 16:40:47 -05:00
gdkpixbuf.h API: gdk: Remove ability to render window contents 2016-11-20 11:47:44 +01:00
gdkproperty.c Drop gdk_atom_intern 2017-12-13 23:39:03 -05:00
gdkproperty.h Drop gdk_atom_intern 2017-12-13 23:39:03 -05:00
gdkrectangle.c gdk/gtk: Fix Since tags for 3.92 symbols 2017-05-30 15:10:25 +02:00
gdkrectangle.h gdk/gtk: Fix more AVAILABLE_IN annotations to 3_92 2017-05-28 14:20:19 +01:00
gdkrgba.c GdkRGBA: Fix misspelt parameter names in docs 2017-07-06 14:03:08 +01:00
gdkrgba.h API: gdk: Add gdk_rgba_is_clear() and gdk_rgba_is_opaque() 2016-12-20 18:01:12 +01:00
gdkseat.c Document more structs 2017-12-26 14:39:24 -05:00
gdkseat.h gdk: Add GDK_SEAT_CAPABILITY_TABLET_PAD 2017-12-07 21:27:33 -05:00
gdkseatdefault.c gdk: Add GDK_SEAT_CAPABILITY_TABLET_PAD 2017-12-07 21:27:33 -05:00
gdkseatdefaultprivate.h
gdkseatprivate.h gdk: Add gdk_seat_get_master_pointers() 2017-12-07 21:27:14 -05:00
gdkselection.c gdk: Remove selection defines 2017-12-14 03:05:34 +01:00
gdktexture.c texture: Add sanity checks to constructors 2018-02-02 14:59:23 +01:00
gdktexture.h texture: Make the texture id a guint 2018-02-02 14:59:23 +01:00
gdktextureprivate.h texture: Make the texture id a guint 2018-02-02 14:59:23 +01:00
gdktypes.h gdk: Remove unused GdkStatus enum 2018-01-12 22:34:22 +01:00
gdkversionmacros.h.in Add 3.94 version macros 2017-10-19 12:18:52 +02:00
gdkvulkancontext.c Make gdk logging per-display 2018-01-14 17:05:04 -05:00
gdkvulkancontext.h gdk: Skip GdkVulkanContext methods when building introspection data 2017-01-19 18:18:07 +00:00
gdkvulkancontextprivate.h vulkan: Fix release builds 2018-01-21 15:23:17 +01:00
gdkwindow.c Drop the cairo-recording debug flag 2018-01-14 17:05:04 -05:00
gdkwindow.h gdk: Move GdkWindowState enum around 2017-12-26 13:00:27 -05:00
gdkwindowimpl.c Drop support for offscreen GdkWindows 2016-10-25 09:54:37 +02:00
gdkwindowimpl.h gdk: Remove properties 2017-12-14 03:05:34 +01:00
gen-gdk-gresources-xml.py meson: gdk: update and sync with Makefiles 2017-05-03 15:10:53 +01:00
gen-keyname-table.pl
keyname-table.h gdk: Translate some more key names 2017-10-09 20:33:14 +02:00
keynames-translate.txt gdk: Translate some more key names 2017-10-09 20:33:14 +02:00
keynames.txt
meson.build Remove all gdk_threads_* entry points 2018-02-03 12:07:10 +01:00