Merge branch 'matthiasc/for-master' into 'master'

Matthiasc/for master

See merge request GNOME/gtk!2639
This commit is contained in:
Matthias Clasen 2020-09-29 12:57:36 +00:00
commit 4cfa9ee19f
11 changed files with 147 additions and 39 deletions

56
NEWS
View File

@ -1,19 +1,44 @@
Overview of Changes in GTK 3.99.2 Overview of Changes in GTK 3.99.2
================================= =================================
* GtkButton:
- Check coordinates for button releases
* GtkColorChooser:
- Update the default palette
* GtkEntry: * GtkEntry:
- Fix issues with Emoji insertion - Fix issues with Emoji insertion
- Fix issues with dnd - Fix issues with dnd
- Set correct hotspot for dnd icon - Set correct hotspot for dnd icon
* GtkFileChooser:
- Fix a crash
- Fix setting unlisted filters
* GtkFontChooser:
- Determine sample text based on font coverage (requires fontconfig)
- Allow filtering by language (requires fontconfig)
- Don't center the list
* GtkMenuButton:
- Always use the direction property for the arrow
* GtkPasswordEntry: * GtkPasswordEntry:
- Use non-pageable memory - Use non-pageable memory
- Add an ::activate signal
* GtkRevealer:
- Fix clipping issues in the swing transitions
* GtkScrolledWindow:
- Fix kinetic scrolling in X11
* GtkSearchEntry: * GtkSearchEntry:
- Don't handle forwarded events twice - Don't handle forwarded events twice
* GtkPasswordEntry: * GtkStack:
- Add an ::activate signal - Add gtk_stack_add_child
* GtkTextView: * GtkTextView:
- Fix dnd - Fix dnd
@ -22,30 +47,9 @@ Overview of Changes in GTK 3.99.2
- Make clickable links work again - Make clickable links work again
- Fix handling of anchored children - Fix handling of anchored children
* GtkRevealer:
- Fix clipping issues in the swing transitions
* GtkColorChooser:
- Update the default palette
* GtkFileChooser:
- Fix a crash
- Fix setting unlisted filters
* GtkFontChooser:
- Determine sample text based on font coverage
- Allow filtering by language
- Don't center the list
* GtkStack:
- Add gtk_stack_add_child
* GtkVideo: * GtkVideo:
- Make autoplay work - Make autoplay work
* GtkButton:
- Check coordinates for button releases
* CSS: * CSS:
- Allow more than 64 selectors per rule - Allow more than 64 selectors per rule
- Avoid some allocation overhead - Avoid some allocation overhead
@ -62,12 +66,15 @@ Overview of Changes in GTK 3.99.2
* GSK: * GSK:
- Add radial gradient nodes - Add radial gradient nodes
- Add GskGLShader and shader nodes
* GL renderer: * GL renderer:
- Fix clipping with projective transforms - Fix clipping with projective transforms
- Use linear interpolation for offscreen rendering - Use linear interpolation for offscreen rendering
with non-axis-aligned transforms with non-axis-aligned transforms
- Fix texture caching to avoid size mismatches - Fix texture caching to avoid size mismatches
- Avoid downloading GL textures when possible,
improving GtkGLArea performance
* Vulkan renderer: * Vulkan renderer:
- Fix swapchain creation - Fix swapchain creation
@ -77,6 +84,7 @@ Overview of Changes in GTK 3.99.2
* Wayland * Wayland
- Always ack configure to avoid jumping windows - Always ack configure to avoid jumping windows
- Use the primary-selection-unstable-v1 protocol
* API cleanups: * API cleanups:
- Make filter and sorter constructors return exact types - Make filter and sorter constructors return exact types
@ -95,6 +103,7 @@ Overview of Changes in GTK 3.99.2
- Cosmetic improvements for several demos - Cosmetic improvements for several demos
- Improve search in the sidebar - Improve search in the sidebar
- Add a Shadertoy demo - Add a Shadertoy demo
- Add a OpenGL transitions demo
- Add an Emblem demo - Add an Emblem demo
- Add a demo for input validation and error states - Add a demo for input validation and error states
- Add a demo for context menus - Add a demo for context menus
@ -114,6 +123,7 @@ Overview of Changes in GTK 3.99.2
French French
Galician Galician
German German
Hebrew
Hungarian Hungarian
Indonesian Indonesian
Italian Italian

View File

@ -4741,7 +4741,7 @@ gtk_is_initialized
GTK_PRIORITY_RESIZE GTK_PRIORITY_RESIZE
<SUBSECTION> <SUBSECTION>
GtkDebugFlag GtkDebugFlags
gtk_get_debug_flags gtk_get_debug_flags
gtk_set_debug_flags gtk_set_debug_flags

View File

@ -60,8 +60,8 @@ const char *gdk_wayland_device_get_node_path (GdkDevice *device);
GDK_AVAILABLE_IN_ALL GDK_AVAILABLE_IN_ALL
void gdk_wayland_device_pad_set_feedback (GdkDevice *device, void gdk_wayland_device_pad_set_feedback (GdkDevice *device,
GdkDevicePadFeature element, GdkDevicePadFeature feature,
guint idx, guint feature_idx,
const char *label); const char *label);
G_END_DECLS G_END_DECLS

View File

@ -624,6 +624,14 @@ gsk_repeating_radial_gradient_node_new (const graphene_rect_t *bounds,
return node; return node;
} }
/**
* gsk_radial_gradient_node_get_n_color_stops:
* @node: (type GskRadialGradientNode): a #GskRenderNode for a radial gradient
*
* Retrieves the number of color stops in the gradient.
*
* Returns: the number of color stops
*/
gsize gsize
gsk_radial_gradient_node_get_n_color_stops (GskRenderNode *node) gsk_radial_gradient_node_get_n_color_stops (GskRenderNode *node)
{ {
@ -632,6 +640,15 @@ gsk_radial_gradient_node_get_n_color_stops (GskRenderNode *node)
return self->n_stops; return self->n_stops;
} }
/**
* gsk_radial_gradient_node_peek_color_stops:
* @node: (type GskRadialGradientNode): a #GskRenderNode for a radial gradient
* @n_stops: (out) (optional): the number of color stops in the returned array
*
* Retrieves the color stops in the gradient.
*
* Returns: (array length=n_stops): the color stops in the gradient
*/
const GskColorStop * const GskColorStop *
gsk_radial_gradient_node_peek_color_stops (GskRenderNode *node, gsk_radial_gradient_node_peek_color_stops (GskRenderNode *node,
gsize *n_stops) gsize *n_stops)
@ -644,6 +661,14 @@ gsk_radial_gradient_node_peek_color_stops (GskRenderNode *node,
return self->stops; return self->stops;
} }
/**
* gsk_radial_gradient_node_peek_center:
* @node: (type GskRadialGradientNode): a #GskRenderNode for a radial gradient
*
* Retrieves the center pointer for the gradient.
*
* Returns: the center point for the gradient
*/
const graphene_point_t * const graphene_point_t *
gsk_radial_gradient_node_peek_center (GskRenderNode *node) gsk_radial_gradient_node_peek_center (GskRenderNode *node)
{ {
@ -652,6 +677,14 @@ gsk_radial_gradient_node_peek_center (GskRenderNode *node)
return &self->center; return &self->center;
} }
/**
* gsk_radial_gradient_node_get_hradius:
* @node: (type GskRadialGradientNode): a #GskRenderNode for a radial gradient
*
* Retrieves the horizonal radius for the gradient.
*
* Returns: the horizontal radius for the gradient
*/
float float
gsk_radial_gradient_node_get_hradius (GskRenderNode *node) gsk_radial_gradient_node_get_hradius (GskRenderNode *node)
{ {
@ -660,6 +693,14 @@ gsk_radial_gradient_node_get_hradius (GskRenderNode *node)
return self->hradius; return self->hradius;
} }
/**
* gsk_radial_gradient_node_get_vradius:
* @node: (type GskRadialGradientNode): a #GskRenderNode for a radial gradient
*
* Retrieves the vertical radius for the gradient.
*
* Returns: the vertical radius for the gradient
*/
float float
gsk_radial_gradient_node_get_vradius (GskRenderNode *node) gsk_radial_gradient_node_get_vradius (GskRenderNode *node)
{ {
@ -668,6 +709,14 @@ gsk_radial_gradient_node_get_vradius (GskRenderNode *node)
return self->vradius; return self->vradius;
} }
/**
* gsk_radial_gradient_node_get_start:
* @node: (type GskRadialGradientNode): a #GskRenderNode for a radial gradient
*
* Retrieves the start value for the gradient.
*
* Returns: the start value for the gradient
*/
float float
gsk_radial_gradient_node_get_start (GskRenderNode *node) gsk_radial_gradient_node_get_start (GskRenderNode *node)
{ {
@ -676,6 +725,14 @@ gsk_radial_gradient_node_get_start (GskRenderNode *node)
return self->start; return self->start;
} }
/**
* gsk_radial_gradient_node_get_end:
* @node: (type GskRadialGradientNode): a #GskRenderNode for a radial gradient
*
* Retrieves the end value for the gradient.
*
* Returns: the end value for the gradient
*/
float float
gsk_radial_gradient_node_get_end (GskRenderNode *node) gsk_radial_gradient_node_get_end (GskRenderNode *node)
{ {

View File

@ -941,6 +941,14 @@ gtk_entry_class_init (GtkEntryClass *class)
g_object_class_override_property (gobject_class, PROP_EDITING_CANCELED, "editing-canceled"); g_object_class_override_property (gobject_class, PROP_EDITING_CANCELED, "editing-canceled");
gtk_editable_install_properties (gobject_class, PROP_EDITING_CANCELED + 1); gtk_editable_install_properties (gobject_class, PROP_EDITING_CANCELED + 1);
/**
* GtkEntry:activate:
* @self: The widget on which the signal is emitted
*
* The ::activate signal is forwarded from the
* #GtkText::activated signal, which is a keybinding
* signal for all forms of the Enter key.
*/
signals[ACTIVATE] = signals[ACTIVATE] =
g_signal_new (I_("activate"), g_signal_new (I_("activate"),
G_OBJECT_CLASS_TYPE (gobject_class), G_OBJECT_CLASS_TYPE (gobject_class),

View File

@ -258,9 +258,6 @@ gtk_event_controller_scroll_handle_event (GtkEventController *controller,
direction = gdk_scroll_event_get_direction (event); direction = gdk_scroll_event_get_direction (event);
if (direction == GDK_SCROLL_SMOOTH) if (direction == GDK_SCROLL_SMOOTH)
{ {
GdkDevice *device = gdk_event_get_device (event);
GdkInputSource input_source = gdk_device_get_source (device);
gdk_scroll_event_get_deltas (event, &dx, &dy); gdk_scroll_event_get_deltas (event, &dx, &dy);
if (!scroll->active) if (!scroll->active)

View File

@ -452,6 +452,14 @@ gtk_password_entry_class_init (GtkPasswordEntryClass *klass)
g_object_class_install_properties (object_class, NUM_PROPERTIES, props); g_object_class_install_properties (object_class, NUM_PROPERTIES, props);
gtk_editable_install_properties (object_class, NUM_PROPERTIES); gtk_editable_install_properties (object_class, NUM_PROPERTIES);
/**
* GtkPasswordEntry:activate:
* @self: The widget on which the signal is emitted
*
* The ::activate signal is forwarded from the
* #GtkText::activated signal, which is a keybinding
* signal for all forms of the Enter key.
*/
signals[ACTIVATE] = signals[ACTIVATE] =
g_signal_new (I_("activate"), g_signal_new (I_("activate"),
G_OBJECT_CLASS_TYPE (object_class), G_OBJECT_CLASS_TYPE (object_class),

View File

@ -295,6 +295,14 @@ gtk_search_entry_class_init (GtkSearchEntryClass *klass)
g_object_class_install_properties (object_class, NUM_PROPERTIES, props); g_object_class_install_properties (object_class, NUM_PROPERTIES, props);
gtk_editable_install_properties (object_class, NUM_PROPERTIES); gtk_editable_install_properties (object_class, NUM_PROPERTIES);
/**
* GtkSearchEntry:activate:
* @self: The widget on which the signal is emitted
*
* The ::activate signal is forwarded from the
* #GtkText::activated signal, which is a keybinding
* signal for all forms of the Enter key.
*/
signals[ACTIVATE] = signals[ACTIVATE] =
g_signal_new (I_("activate"), g_signal_new (I_("activate"),
G_OBJECT_CLASS_TYPE (object_class), G_OBJECT_CLASS_TYPE (object_class),

View File

@ -2179,6 +2179,20 @@ gtk_snapshot_append_repeating_linear_gradient (GtkSnapshot *snapshot,
gtk_snapshot_append_node_internal (snapshot, node); gtk_snapshot_append_node_internal (snapshot, node);
} }
/**
* gtk_snapshot_append_radial_gradient:
* @snapshot: a #GtkSnapshot
* @bounds: the rectangle to render the readial gradient into
* @center: the center point for the radial gradient
* @hradius: the horizontal radius
* @vradius: the vertical radius
* @start: the start position (on the horizontal axis)
* @end: the end position (on the horizontal axis)
* @stops: (array length=n_stops): a pointer to an array of #GskColorStop defining the gradient
* @n_stops: the number of elements in @stops
*
* Appends a radial gradient node with the given stops to @snapshot.
*/
void void
gtk_snapshot_append_radial_gradient (GtkSnapshot *snapshot, gtk_snapshot_append_radial_gradient (GtkSnapshot *snapshot,
const graphene_rect_t *bounds, const graphene_rect_t *bounds,
@ -2217,6 +2231,20 @@ gtk_snapshot_append_radial_gradient (GtkSnapshot *snapshot,
gtk_snapshot_append_node_internal (snapshot, node); gtk_snapshot_append_node_internal (snapshot, node);
} }
/**
* gtk_snapshot_append_repeating_radial_gradient:
* @snapshot: a #GtkSnapshot
* @bounds: the rectangle to render the readial gradient into
* @center: the center point for the radial gradient
* @hradius: the horizontal radius
* @vradius: the vertical radius
* @start: the start position (on the horizontal axis)
* @end: the end position (on the horizontal axis)
* @stops: (array length=n_stops): a pointer to an array of #GskColorStop defining the gradient
* @n_stops: the number of elements in @stops
*
* Appends a repeating radial gradient node with the given stops to @snapshot.
*/
void void
gtk_snapshot_append_repeating_radial_gradient (GtkSnapshot *snapshot, gtk_snapshot_append_repeating_radial_gradient (GtkSnapshot *snapshot,
const graphene_rect_t *bounds, const graphene_rect_t *bounds,

View File

@ -489,15 +489,7 @@ gtk_statusbar_remove_all (GtkStatusbar *statusbar,
} }
} }
/* < private > const char *
* gtk_statusbar_get_message_area:
* @statusbar: a #GtkStatusbar
*
* Retrieves the box containing the label widget.
*
* Returns: (type Gtk.Box) (transfer none): a #GtkBox
*/
const char*
gtk_statusbar_get_message (GtkStatusbar *statusbar) gtk_statusbar_get_message (GtkStatusbar *statusbar)
{ {
g_return_val_if_fail (GTK_IS_STATUSBAR (statusbar), NULL); g_return_val_if_fail (GTK_IS_STATUSBAR (statusbar), NULL);

View File

@ -949,7 +949,7 @@ gtk_text_class_init (GtkTextClass *class)
/** /**
* GtkText::activate: * GtkText::activate:
* @self: The self on which the signal is emitted * @self: The widget on which the signal is emitted
* *
* The ::activate signal is emitted when the user hits * The ::activate signal is emitted when the user hits
* the Enter key. * the Enter key.