Blame SOURCES/0001-window-actor-Special-case-shaped-Java-windows.patch

657d8e
From 6bca5f001338d4647e4e21d549c8cdea4bcad669 Mon Sep 17 00:00:00 2001
657d8e
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
657d8e
Date: Fri, 12 May 2017 13:40:31 +0200
657d8e
Subject: [PATCH] window-actor: Special-case shaped Java windows
657d8e
657d8e
OpenJDK wrongly assumes that shaping a window implies no shadows.
657d8e
They got lucky until commit b975676c changed the fallback case,
657d8e
but now their compliance tests are broken. Make them happy again
657d8e
by special-casing shaped Java windows.
657d8e
---
657d8e
 src/compositor/meta-window-actor.c | 8 ++++++++
657d8e
 1 file changed, 8 insertions(+)
657d8e
657d8e
diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c
657d8e
index f850cb222..1c8dc8fe5 100644
657d8e
--- a/src/compositor/meta-window-actor.c
657d8e
+++ b/src/compositor/meta-window-actor.c
657d8e
@@ -798,6 +798,14 @@ meta_window_actor_has_shadow (MetaWindowActor *self)
657d8e
   if (priv->window->has_custom_frame_extents)
657d8e
     return FALSE;
657d8e
 
657d8e
+  /*
657d8e
+   * OpenJDK wrongly assumes that shaping a window implies no compositor
657d8e
+   * shadows; make its compliance tests happy to give it what it wants ...
657d8e
+   */
657d8e
+  if (g_strcmp0 (priv->window->res_name, "sun-awt-X11-XWindowPeer") == 0 &&
657d8e
+      priv->window->shape_region != NULL)
657d8e
+    return FALSE;
657d8e
+
657d8e
   /*
657d8e
    * Generate shadows for all other windows.
657d8e
    */
657d8e
-- 
657d8e
2.21.0
657d8e