Port to MtkRegion
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3292>
This commit is contained in:

committed by
Marge Bot

parent
7c98910488
commit
655b4a9c75
@ -32,7 +32,7 @@ struct _MetaPointerConstraintImplNative
|
||||
{
|
||||
MetaPointerConstraintImpl parent;
|
||||
MetaPointerConstraint *constraint;
|
||||
cairo_region_t *region;
|
||||
MtkRegion *region;
|
||||
double min_edge_distance;
|
||||
};
|
||||
|
||||
@ -223,8 +223,8 @@ add_band_bottom_edges (MetaBox *boxes,
|
||||
}
|
||||
|
||||
static void
|
||||
region_to_outline (cairo_region_t *region,
|
||||
GArray *borders)
|
||||
region_to_outline (MtkRegion *region,
|
||||
GArray *borders)
|
||||
{
|
||||
MetaBox *boxes;
|
||||
int num_boxes;
|
||||
@ -249,12 +249,12 @@ region_to_outline (cairo_region_t *region,
|
||||
*
|
||||
*/
|
||||
|
||||
num_boxes = cairo_region_num_rectangles (region);
|
||||
num_boxes = mtk_region_num_rectangles (region);
|
||||
boxes = g_new (MetaBox, num_boxes);
|
||||
for (i = 0; i < num_boxes; i++)
|
||||
{
|
||||
MtkRectangle rect;
|
||||
cairo_region_get_rectangle (region, i, &rect);
|
||||
rect = mtk_region_get_rectangle (region, i);
|
||||
boxes[i] = (MetaBox) {
|
||||
.x1 = rect.x,
|
||||
.y1 = rect.y,
|
||||
@ -451,7 +451,7 @@ meta_pointer_constraint_impl_native_constraint (MetaPointerConstraintImpl *const
|
||||
float *y_inout)
|
||||
{
|
||||
MetaPointerConstraintImplNative *constraint_impl_native;
|
||||
cairo_region_t *region;
|
||||
g_autoptr (MtkRegion) region = NULL;
|
||||
float x, y;
|
||||
g_autoptr (GArray) borders = NULL;
|
||||
MetaLine2 motion;
|
||||
@ -460,7 +460,7 @@ meta_pointer_constraint_impl_native_constraint (MetaPointerConstraintImpl *const
|
||||
|
||||
constraint_impl_native = META_POINTER_CONSTRAINT_IMPL_NATIVE (constraint_impl);
|
||||
|
||||
region = cairo_region_reference (constraint_impl_native->region);
|
||||
region = mtk_region_ref (constraint_impl_native->region);
|
||||
x = *x_inout;
|
||||
y = *y_inout;
|
||||
|
||||
@ -484,7 +484,6 @@ meta_pointer_constraint_impl_native_constraint (MetaPointerConstraintImpl *const
|
||||
* confined motion vectors.
|
||||
*/
|
||||
region_to_outline (region, borders);
|
||||
cairo_region_destroy (region);
|
||||
|
||||
motion = (MetaLine2) {
|
||||
.a = (MetaVector2) {
|
||||
@ -590,19 +589,19 @@ meta_pointer_constraint_impl_native_ensure_constrained (MetaPointerConstraintImp
|
||||
{
|
||||
MetaPointerConstraintImplNative *constraint_impl_native;
|
||||
graphene_point_t point;
|
||||
cairo_region_t *region;
|
||||
g_autoptr (MtkRegion) region = NULL;
|
||||
float x;
|
||||
float y;
|
||||
|
||||
constraint_impl_native = META_POINTER_CONSTRAINT_IMPL_NATIVE (constraint_impl);
|
||||
region = cairo_region_reference (constraint_impl_native->region);
|
||||
region = mtk_region_ref (constraint_impl_native->region);
|
||||
|
||||
clutter_seat_query_state (clutter_input_device_get_seat (device),
|
||||
device, NULL, &point, NULL);
|
||||
x = point.x;
|
||||
y = point.y;
|
||||
|
||||
if (!cairo_region_contains_point (region, (int) x, (int) y))
|
||||
if (!mtk_region_contains_point (region, (int) x, (int) y))
|
||||
{
|
||||
g_autoptr (GArray) borders = NULL;
|
||||
float closest_distance_2 = FLT_MAX;
|
||||
@ -632,8 +631,6 @@ meta_pointer_constraint_impl_native_ensure_constrained (MetaPointerConstraintImp
|
||||
seat = clutter_backend_get_default_seat (clutter_get_default_backend ());
|
||||
clutter_seat_warp_pointer (seat, x, y);
|
||||
}
|
||||
|
||||
cairo_region_destroy (region);
|
||||
}
|
||||
|
||||
static void
|
||||
@ -642,7 +639,7 @@ meta_pointer_constraint_impl_native_finalize (GObject *object)
|
||||
MetaPointerConstraintImplNative *constraint_impl_native;
|
||||
|
||||
constraint_impl_native = META_POINTER_CONSTRAINT_IMPL_NATIVE (object);
|
||||
g_clear_pointer (&constraint_impl_native->region, cairo_region_destroy);
|
||||
g_clear_pointer (&constraint_impl_native->region, mtk_region_unref);
|
||||
|
||||
G_OBJECT_CLASS (meta_pointer_constraint_impl_native_parent_class)->finalize (object);
|
||||
}
|
||||
@ -669,7 +666,7 @@ meta_pointer_constraint_impl_native_class_init (MetaPointerConstraintImplNativeC
|
||||
|
||||
MetaPointerConstraintImpl *
|
||||
meta_pointer_constraint_impl_native_new (MetaPointerConstraint *constraint,
|
||||
const cairo_region_t *region,
|
||||
const MtkRegion *region,
|
||||
double min_edge_distance)
|
||||
{
|
||||
MetaPointerConstraintImplNative *constraint_impl;
|
||||
@ -677,7 +674,7 @@ meta_pointer_constraint_impl_native_new (MetaPointerConstraint *constraint,
|
||||
constraint_impl = g_object_new (META_TYPE_POINTER_CONSTRAINT_IMPL_NATIVE,
|
||||
NULL);
|
||||
constraint_impl->constraint = constraint;
|
||||
constraint_impl->region = cairo_region_copy (region);
|
||||
constraint_impl->region = mtk_region_copy (region);
|
||||
constraint_impl->min_edge_distance = min_edge_distance;
|
||||
|
||||
return META_POINTER_CONSTRAINT_IMPL (constraint_impl);
|
||||
|
Reference in New Issue
Block a user