Timm Bäder
a0016758a8
widget: Copy event in gtk_widget_event and _captured_event
...
To ensure that we never translate the coordinates to widget coordinates
twice.
2017-05-25 16:25:59 +02:00
Carlos Garnacho
a72404dd5a
gtk: Mass delete all GtkWidget event mask API
...
We now rely on toplevels receiving and forwarding all the events
the windowing should be able to handle. Event masks are no longer a
way to determine whether an event is deliverable ot a widget.
Events will always be delivered in the three captured/target/bubbled
phases, widgets can now just attach GtkEventControllers and let those
handle the events.
2017-05-25 16:25:58 +02:00
Carlos Garnacho
9c97bf0c02
GtkWidget: Add ::pick vmethod
...
The default implementation iterates through all children, so should suffice
for most widgets.
2017-05-25 16:25:58 +02:00
Timm Bäder
3d21128dbb
Remove gtk_widget_get_preferred_*
...
They are unnecessary now that we have gtk_widget_measure.
2017-05-05 11:18:25 +02:00
Timm Bäder
ba363fbb71
widget: Add gtk_widget_insert_before/after
...
To insert a widget into the widget tree before or after a child widget
of the soon-to-be parent.
2017-04-25 20:29:02 +02:00
Timm Bäder
f860ff8647
widget: Remove get_valign_with_baseline
...
This only existed for backwards compat reasons which aren't interesting
for gtk4.
2017-03-05 15:18:32 +01:00
Timm Bäder
6c6ed7496c
widget: Remove gtk_widget_class_list_style_properties
...
Unused.
2017-01-30 18:11:00 +01:00
Timm Bäder
f4341ee9f7
widget: Remove show-all property
...
Doesn't make sense anymore now that gtk_widget_show_all is gone.
2017-01-20 21:37:07 +01:00
Timm Bäder
ea897c6df4
Remove gtk_widget_show_all
2017-01-20 21:37:04 +01:00
Timm Bäder
13b001b77c
widget: Remove show_all vfunc
2017-01-20 21:33:38 +01:00
Timm Bäder
47d4ad71fb
Remove gtk_container_snapshot_child
...
Replace it with the already existing gtk_widget_snapshot_child.
2017-01-07 17:19:30 +01:00
Timm Bäder
5f98597a0c
Add gtk_widget_set_focus_child
...
With a very useful implementation, but at least now we don't get runtime
warnings.
2017-01-07 17:19:30 +01:00
Timm Bäder
5ab2377afa
widget: Remove gtk_widget_style_get_property
2017-01-07 17:19:30 +01:00
Timm Bäder
1e031cba99
widget: Add children and sibling pointers
...
and a (private) way to access them. We will later use these pointers to
manage children of non-container widgets and containers alike.
2017-01-07 16:44:00 +01:00
Timm Bäder
489aee5d00
widget: Remove unused adjust_* vfuncs
...
Expose them privately to gtksizerequest.c using normal functions
instead.
2016-12-07 18:12:54 +01:00
Timm Bäder
36377e9964
Remove gtk_widget_get_preferred_height_and_baseline_for_width
...
It's just a wrapper around gtk_widget_measure nowadays.
2016-12-03 13:19:25 +01:00
Benjamin Otte
4850271ae8
API: Remove gtk_cairo_should_draw_window()
...
The answer is: Yes.
2016-11-23 18:48:38 +01:00
Benjamin Otte
2745c2502f
snapshot: Move GtkSnapshot declaration to gtypes.h
2016-11-19 20:58:36 +01:00
Matthias Clasen
3dc53dab69
Document ::snapshot vfunc
2016-11-19 12:37:19 -05:00
Benjamin Otte
b8710d8962
widget: Remove get_render_node() vfunc
2016-11-15 17:49:19 +01:00
Benjamin Otte
d1fec79c00
snapshot: Completely reengineer API
...
We now try to emulate cairo_t:
We keep a stack of nodes via push/pop and a transform matrix.
So whenever a new node is added to the snapshot, we transform it
by the current transform matrix and append it to the current node.
2016-11-15 17:48:45 +01:00
Benjamin Otte
b1154be1c4
widget: Add GtkWidgetClass.snapshot() vfunc
...
Does the same thing as the render vfunc, only that it uses a different
prototype.
2016-11-15 17:48:45 +01:00
Timm Bäder
846cf681e8
Remove gtk_widget_set_mapped
...
Let all the remaining callers chain up.
2016-11-05 11:56:36 +01:00
Benjamin Otte
a178258a2a
docs: Remove vfunc that doesn't exist anymore
2016-11-03 20:33:33 +01:00
Timm Bäder
a7efe10ef8
widget: Remove unused visibility-notify-event
2016-11-02 18:40:00 +01:00
Timm Bäder
773c16076b
widget: Remove state-flags leftovers
2016-11-02 18:40:00 +01:00
Timm Bäder
c261d890ad
widget: Remove damage-event
2016-10-31 19:28:28 +01:00
Timm Bäder
c25a5606d1
widget: remove show-help
2016-10-31 19:28:28 +01:00
Timm Bäder
5071206d60
widget: Remove app-paintable
2016-10-31 19:28:28 +01:00
Benjamin Otte
73cd739e19
API: widget: Remove gtk_widget_is_composited()
...
We don't need to clutter our API with functions that are easily
available elsewhere and effectively unused.
2016-10-29 04:49:47 +02:00
Benjamin Otte
a334316d5e
API: widget: Remove GtkWidget::composited-changed signal
...
Nobody uses it.
If you need the functionality, listen to display changes on
your widget and then connect to the display's notify::composited.
2016-10-29 04:49:47 +02:00
Benjamin Otte
27ab75250c
widget: Redo how gtk_widget_queue_draw() works
...
Before, we would immediately invalidate the GdkWindow of the widget, now
we call the parent's GtkWidgetClass.queue_draw_child() function.
This allows the parent to track redraw queueing of children.
By default GtkWidgetClass.queue_draw_child() will again chain up to its
parent while respecting the GdkWindow hierarchy for clipping.
GtkWindow is then the only widget actually invalidating the GdkWindow.
This essentially moves redraw queueing from GDK to GTK.
2016-10-27 05:07:23 +02:00
Timm Bäder
ab467317a1
widget: Add docs for ::measure
2016-10-22 21:40:04 +02:00
Timm Bäder
a50587b9ec
widget: Really remove get_preferred_xxx vfuncs
2016-10-22 19:40:57 +02:00
Timm Bäder
9992a616ef
widget: Use ::measure vfunc to measure size
...
Add a new ::measure vfunc similar to GtkCssGadget's that widget
implementations have to override instead of the old get_preferred_width,
get_preferred_height, get_preferred_width_for_height,
get_preferred_height_for_width and
get_preferred_height_and_baseline_for_width.
2016-10-22 19:05:47 +02:00
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
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
5da7a824ff
widget: Remove docs for style-set
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
Benjamin Otte
4a95f8802c
widget: Remove gtk_widget_set_double_buffered()
...
Everything is always double-buffered.
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
ccd3ff7fba
gtkwidget: Remove gtk_widget_class_install_style_property_parser...
...
... from public API
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
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