Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mutter for openSUSE:Factory checked in at 2024-03-17 22:10:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mutter (Old) and /work/SRC/openSUSE:Factory/.mutter.new.1905 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mutter" Sun Mar 17 22:10:41 2024 rev:224 rq:1158160 version:45.3 Changes: -------- --- /work/SRC/openSUSE:Factory/mutter/mutter.changes 2024-02-01 18:04:32.861314550 +0100 +++ /work/SRC/openSUSE:Factory/.mutter.new.1905/mutter.changes 2024-03-17 22:10:47.524957006 +0100 @@ -1,0 +2,8 @@ +Fri Mar 15 07:09:11 UTC 2024 - Alynx Zhou <alynx.z...@suse.com> + +- Add 0001-Revert-clutter-actor-Cache-stage-relative-instead-of.patch: + This leads into partial update while switching VT (from TTY to + GNOME) on X11 session with fbdev driver used ( + glgo#GNOME/mutter#3302, bsc#1219546). + +------------------------------------------------------------------- New: ---- 0001-Revert-clutter-actor-Cache-stage-relative-instead-of.patch BETA DEBUG BEGIN: New: - Add 0001-Revert-clutter-actor-Cache-stage-relative-instead-of.patch: This leads into partial update while switching VT (from TTY to BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mutter.spec ++++++ --- /var/tmp/diff_new_pack.T4KazD/_old 2024-03-17 22:10:48.825004398 +0100 +++ /var/tmp/diff_new_pack.T4KazD/_new 2024-03-17 22:10:48.825004398 +0100 @@ -38,6 +38,8 @@ Patch3: mutter-fix-x11-restart.patch # PATCH-FIX-UPSTREAM mutter-fix-text-input-delete-surrounding.patch glgo#GNOME/mutter#2146 glgo#GNOME/mutter!2712 alynx.z...@suse.com -- Fix delete_surrounding_text of text-input-v3 Patch4: mutter-fix-text-input-delete-surrounding.patch +# PATCH-FIX-OPENSUSE 0001-Revert-clutter-actor-Cache-stage-relative-instead-of.patch glgo#GNOME/mutter#3302 bsc#1219546 alynx.z...@suse.com -- Fix partial update on VT switch +Patch5: 0001-Revert-clutter-actor-Cache-stage-relative-instead-of.patch ## SLE-only patches start at 1000 # PATCH-FEATURE-SLE mutter-SLE-bell.patch FATE#316042 bnc#889218 idon...@suse.com -- make audible bell work out of the box. @@ -149,6 +151,7 @@ %patch -P 2 -p1 %patch -P 3 -p1 %patch -P 4 -p1 +%patch -P 5 -p1 %endif # SLE-only patches and translations. %if 0%{?sle_version} ++++++ 0001-Revert-clutter-actor-Cache-stage-relative-instead-of.patch ++++++ >From d11feddbb29f0bf6de104d8d5c54cf18f3ca96da Mon Sep 17 00:00:00 2001 From: Alynx Zhou <alynx.z...@gmail.com> Date: Thu, 14 Mar 2024 19:20:57 +0800 Subject: [PATCH] Revert "clutter/actor: Cache stage-relative instead of absolute modelviews" This reverts commit 703bbe0e99dbb688352e0bff396e5cbf2c6af45b. --- clutter/clutter/clutter-actor.c | 67 ++++++++++----------------------- 1 file changed, 20 insertions(+), 47 deletions(-) diff --git a/clutter/clutter/clutter-actor.c b/clutter/clutter/clutter-actor.c index dd0d5ceb6..70dea5ca2 100644 --- a/clutter/clutter/clutter-actor.c +++ b/clutter/clutter/clutter-actor.c @@ -612,7 +612,7 @@ struct _ClutterActorPrivate /* the cached transformation matrix; see apply_transform() */ graphene_matrix_t transform; - graphene_matrix_t stage_relative_modelview; + graphene_matrix_t absolute_modelview; float resource_scale; @@ -776,7 +776,7 @@ struct _ClutterActorPrivate guint clear_stage_views_needs_stage_views_changed : 1; guint needs_redraw : 1; guint needs_finish_layout : 1; - guint stage_relative_modelview_valid : 1; + guint absolute_modelview_valid : 1; }; enum @@ -2425,7 +2425,7 @@ absolute_geometry_changed (ClutterActor *actor) { actor->priv->needs_update_stage_views = TRUE; actor->priv->needs_visible_paint_volume_update = TRUE; - actor->priv->stage_relative_modelview_valid = FALSE; + actor->priv->absolute_modelview_valid = FALSE; actor->priv->needs_finish_layout = TRUE; /* needs_finish_layout is already TRUE on the whole parent tree thanks @@ -3047,9 +3047,8 @@ _clutter_actor_apply_relative_transformation_matrix (ClutterActor *self, graphene_matrix_t *matrix) { ClutterActorPrivate *priv = self->priv; - ClutterActor *stage = _clutter_actor_get_stage_internal (self); - graphene_matrix_t ancestor_modelview; - graphene_matrix_t inverse_ancestor_modelview; + graphene_matrix_t parent_modelview; + graphene_matrix_t inverse_parent_modelview; /* Note we terminate before ever calling stage->apply_transform() * since that would conceptually be relative to the underlying @@ -3058,63 +3057,37 @@ _clutter_actor_apply_relative_transformation_matrix (ClutterActor *self, if (self == ancestor) return; - if (!priv->stage_relative_modelview_valid) + if (!priv->absolute_modelview_valid) { - graphene_matrix_init_identity (&priv->stage_relative_modelview); + graphene_matrix_init_identity (&priv->absolute_modelview); if (priv->parent != NULL) { _clutter_actor_apply_relative_transformation_matrix (priv->parent, - stage, - &priv->stage_relative_modelview); + NULL, + &priv->absolute_modelview); } - _clutter_actor_apply_modelview_transform (self, - &priv->stage_relative_modelview); + _clutter_actor_apply_modelview_transform (self, &priv->absolute_modelview); - priv->stage_relative_modelview_valid = TRUE; + priv->absolute_modelview_valid = TRUE; } if (ancestor == NULL) { - _clutter_actor_apply_modelview_transform (stage, matrix); - graphene_matrix_multiply (&priv->stage_relative_modelview, matrix, matrix); - return; - } - - if (ancestor == stage) - { - graphene_matrix_multiply (&priv->stage_relative_modelview, matrix, matrix); - return; - } - - if (ancestor == priv->parent) - { - _clutter_actor_apply_modelview_transform (self, matrix); + graphene_matrix_multiply (&priv->absolute_modelview, matrix, matrix); return; } - graphene_matrix_init_identity (&ancestor_modelview); + graphene_matrix_init_identity (&parent_modelview); _clutter_actor_apply_relative_transformation_matrix (ancestor, - stage, - &ancestor_modelview); - - if (graphene_matrix_near (&priv->stage_relative_modelview, - &ancestor_modelview, - FLT_EPSILON)) - return; - - if (graphene_matrix_is_identity (&ancestor_modelview)) - { - graphene_matrix_multiply (&priv->stage_relative_modelview, matrix, matrix); - return; - } - - if (graphene_matrix_inverse (&ancestor_modelview, - &inverse_ancestor_modelview)) + NULL, + &parent_modelview); + if (graphene_matrix_inverse (&parent_modelview, + &inverse_parent_modelview)) { - graphene_matrix_multiply (&inverse_ancestor_modelview, matrix, matrix); - graphene_matrix_multiply (&priv->stage_relative_modelview, matrix, matrix); + graphene_matrix_multiply (&inverse_parent_modelview, matrix, matrix); + graphene_matrix_multiply (&priv->absolute_modelview, matrix, matrix); return; } @@ -7469,7 +7442,7 @@ clutter_actor_init (ClutterActor *self) priv->enable_model_view_transform = TRUE; priv->transform_valid = FALSE; - priv->stage_relative_modelview_valid = FALSE; + priv->absolute_modelview_valid = FALSE; /* the default is to stretch the content, to match the * current behaviour of basically all actors. also, it's -- 2.44.0