Emmanuele Bassi
b997f4c575
gtk: Use GskRenderNode to render widgets
...
We need a virtual function to retrieve the GskRenderNode for each
widget, which is supposed to attach its own children's GskRenderNodes.
Additionally, we want to maintain the existing GtkWidget::draw mechanism
for widgets that do not implement get_render_node() — as well as widgets
that have handlers connected to the ::draw signal.
2016-10-18 11:49:06 +01:00
Timm Bäder
a864f4d474
widget: Not all toplevels are also containers
2016-10-18 00:34:41 +02:00
Timm Bäder
d963ede668
Remove GtkUIManager
2016-10-18 00:34:41 +02:00
Timm Bäder
dd3c3b683f
widget: Remove push/pop_composite_child
...
as well as the composite-child property
2016-10-18 00:29:18 +02:00
Timm Bäder
2ae996e242
widget: Remove gtk_widget_get_pointer
2016-10-18 00:29:18 +02:00
Timm Bäder
a4368a73a5
widget: Remove gtk_widget_reparent
2016-10-18 00:29:17 +02:00
Emmanuele Bassi
3fdbe2ea13
widget: Make gtk_widget_get_parent_muxer() as static
...
It's a private function, used only inside gtkwidget.c and not declared
in any private header.
2016-10-17 11:10:14 +01:00
Emmanuele Bassi
44885bcfed
Remove redundant declarations
2016-10-17 11:10:14 +01:00
Benjamin Otte
4a95f8802c
widget: Remove gtk_widget_set_double_buffered()
...
Everything is always double-buffered.
2016-10-16 18:18:58 +02:00
Benjamin Otte
cda617df4d
API: sizegroup: Remove gtk_size_group_set_ignore_hidden()
2016-10-16 18:18:58 +02:00
Benjamin Otte
d4d3374729
container: Remove gtk_container_set_resize_mode()
2016-10-16 18:18:58 +02:00
Benjamin Otte
1518fe0a8f
API: stylecontext: Remove state argument from getters
...
The argument must always be the current state.
2016-10-16 18:18:58 +02:00
Timm Bäder
ed184b3935
Remove GtkIconFactory
...
Move the icon size lookup API into gtkicontheme.c
2016-10-16 18:17:21 +02:00
Timm Bäder
9fd1a1bbe3
widget: Remove cursor-aspect-ratio/window-dragging style properties
...
And replaces its usages in GtkTextView/GtkStyleContext with a hard-coded
0.04 which was the default value for cursor-aspect-ratio. Also remove
the public gtk_draw_insertion_cursor which used draw_insertion_cursor
which in turn looked up cursor-aspect-ratio
2016-10-16 18:17:21 +02:00
Timm Bäder
ccd3ff7fba
gtkwidget: Remove gtk_widget_class_install_style_property_parser...
...
... from public API
2016-10-16 18:17:21 +02:00
Timm Bäder
281c1e4fe5
widget: Remove cursor-aspect-ratio style property
2016-10-16 18:17:21 +02:00
Timm Bäder
08c1c584b3
Remove GtkModifierStyle
2016-10-16 18:17:21 +02:00
Timm Bäder
9a388690f4
widget: Remove gtk_widget_override* API
2016-10-16 18:17:21 +02:00
Timm Bäder
b1d35a594e
widget: Remove text-handle-width/height style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
999d45b4e8
Remove various unused style properties
2016-10-16 18:17:21 +02:00
Timm Bäder
2455bd0857
widget: Remove visibility-notify-event
2016-10-16 18:17:21 +02:00
Timm Bäder
878f2e4107
widget: Remove deprecated margin-left/right properties
2016-10-16 18:17:21 +02:00
Timm Bäder
d34b7d98b2
widget: Remove gtk_widget_{s,g}et_composite_name
2016-10-16 18:17:21 +02:00
Timm Bäder
80ab5ea942
widget: Remove gtk_widget_get_requisition
2016-10-16 18:17:21 +02:00
Timm Bäder
16b0906b4a
widget: Remove gtk_widget_send_expose
2016-10-16 18:17:21 +02:00
Timm Bäder
bc0cef27a2
widget: Remove gtk_widget_{s,g}et_state
2016-10-16 18:17:21 +02:00
Timm Bäder
4a2c087a1e
widget: Remove gtk_widget_region_intersect
2016-10-16 18:17:21 +02:00
Timm Bäder
a80a1cf8a6
widget: Remove gtk_widget_get_child_requisition
2016-10-16 18:17:21 +02:00
Timm Bäder
b3bd5fefb1
widget: Remove gtk_widget_size_request
2016-10-16 18:17:21 +02:00
Timm Bäder
4c10807e24
widget: Remove state-changed signal
2016-10-16 18:17:21 +02:00
Timm Bäder
96d9abded8
widget: Remove deprecated style properties
2016-10-16 18:17:21 +02:00
Benjamin Otte
0df388051d
API: Remove GtkStyle
...
All the remaining gtkrc.c stuff like GtkRcStyle goes with it.
2016-10-16 18:17:21 +02:00
Benjamin Otte
662001b60a
API: Remove ability to set visuals on windows
...
And with it, gtk_widget_get_visual() and gtk_widget_set_visual() are
gone.
We now always use the RGBA visual (if available) and otherwise fall back
to the system visual.
2016-10-16 18:17:21 +02:00
Benjamin Otte
021fe010b6
API: Remove GtkPlug, GtkSocket and GtkWin32EmbedWidget
2016-10-16 18:17:21 +02:00
Benjamin Otte
89f2e17f91
API: Remove gdk_window_set_composited()
...
And the related call gdk_display_supports_composite().
2016-10-16 18:17:21 +02:00
Benjamin Otte
fec8069e7b
API: screen: Stop storing font options
...
font options are only ever set by the GtkSettings object and only ever
used inside GTK, so just store them there.
2016-10-16 18:17:21 +02:00
Benjamin Otte
d09e48cec1
API: Remove -gtk_widget_get_root_window()
2016-10-16 18:17:21 +02:00
Christoph Reiter
ae8ffc775d
widget: Don't print underallocation warnings by default
...
See similar changes:
https://git.gnome.org/browse/gtk+/commit/?id=1b15588732f2c4e3c59994a59613d4e5c963e283
https://git.gnome.org/browse/gtk+/commit/?id=54fdcb3ffac3383432b379f3e16e8cb0086b8101
https://bugzilla.gnome.org/show_bug.cgi?id=770388
2016-09-30 14:41:01 -04:00
Timm Bäder
54fdcb3ffa
widget: Don't print missing allocation warning by default
...
This was meant to be silenced unless expicitly requested but
G_ENABLE_DEBUG is defined by default unless --disable-debug is passed to
configure, so use G_ENABLE_CONSISTENCY_CHECKS instead which is only
defined if --enable-debug is explicitly passed.
2016-09-22 09:01:06 +02:00
Emmanuele Bassi
bb705837bc
Ensure drawing context is set
...
If somebody decides to use gtk_widget_set_double_buffered() in the
middle of a draw() then there's the risk of calling end_draw_frame()
with an invalid pointer.
Some overeager compilers may warn about the double_buffered bit field
changing values and leading to a potentially uninitialized variable.
In order to avoid compiler warnings or crashes, we can simply store the
value of the double_buffered bit field at the beginning of the rendering
and use that instead of the actual bit field.
https://bugzilla.gnome.org/show_bug.cgi?id=771463
2016-09-15 10:17:24 +01:00
Timm Bäder
5ea69a136b
widget: Only warn about missing allocation if G_ENABLE_DEBUG
...
Not all occurrences of this warning can be fixed today, so put it behind
a G_ENABLE_DEBUG flag since it still shows legitimate problems even if
some of them are false positives.
2016-09-14 18:06:54 -04:00
Benjamin Otte
e1a03ead7a
Use NULL for generic marshallers in g_signal_new()
...
glib will use the correct marshaller automatically. And as a side
effect, we also get all glib optimizations, like a va marshaller.
2016-08-29 16:20:54 +02:00
Carlos Garnacho
3a6d0ff2ab
gtk: Add minimal handling of pad events
...
No real handling is yet performed, to be done through a GdkEventController
https://bugzilla.gnome.org/show_bug.cgi?id=770026
2016-08-23 21:01:44 +02:00
Timm Bäder
50a0c5f242
widget: remove some unneeded function prototypes
2016-08-04 13:09:08 +02:00
Sébastien Wilmet
af5ef152b1
docs: GtkWidget::style-updated vs GtkStyleContext::changed
...
Explain the difference between those two signals.
Add "Since: 3.0" for GtkStyleContext::changed, since that signal has
been added in commit 9f84e101bf
, present
since 2.91.6.
https://bugzilla.gnome.org/show_bug.cgi?id=769047
2016-07-25 09:26:41 -04:00
Sébastien Wilmet
3432587f89
docs: add missing info for gtk_widget_get_style_context()
...
It is important to know whether the returned object can or cannot
change, for a certain widget. For example to connect to the
GtkStyleContext::changed signal.
https://bugzilla.gnome.org/show_bug.cgi?id=769047
2016-07-25 09:26:41 -04:00
Matthias Clasen
8db8891c66
Use g_clear_object in a few more places
2016-07-25 08:32:08 -04:00
Emmanuele Bassi
8f1fd7d964
docs: Fix typo.
2016-07-12 18:09:20 +01:00
Emmanuele Bassi
c0dae6c146
docs: Attempt a better explanation for gtk_widget_destroy()
...
Clarify the nature of this function, and the expectations after it's
been called.
2016-07-12 12:44:23 +01:00
Timm Bäder
d52f6ff710
widget: Don't unnecessarily export function
...
_gtk_widget_get_translation_to_window is only used in gtkwidget.c
2016-06-27 14:43:53 +02:00