mirror of
https://github.com/brl/mutter.git
synced 2024-12-25 20:32:16 +00:00
Revert "wayland/window: Correct detection whether to send configure
"
It breaks more than it fixes. After commit [1] Shell doesn't trigger the original issue [2] anymore. [1]:ba0b9239d3
[2]: https://gitlab.gnome.org/GNOME/mutter/-/issues/1627 This reverts commit236e9ec68f
. Fixes https://gitlab.gnome.org/GNOME/mutter/-/issues/1723 Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1804>
This commit is contained in:
parent
f92232ae4f
commit
90e3d9782d
@ -22,8 +22,6 @@
|
|||||||
|
|
||||||
#include "wayland/meta-wayland-window-configuration.h"
|
#include "wayland/meta-wayland-window-configuration.h"
|
||||||
|
|
||||||
#include "wayland/meta-window-wayland.h"
|
|
||||||
|
|
||||||
static uint32_t global_serial_counter = 0;
|
static uint32_t global_serial_counter = 0;
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
@ -53,13 +51,6 @@ meta_wayland_window_configuration_new (MetaWindow *window,
|
|||||||
MetaGravity gravity)
|
MetaGravity gravity)
|
||||||
{
|
{
|
||||||
MetaWaylandWindowConfiguration *configuration;
|
MetaWaylandWindowConfiguration *configuration;
|
||||||
MetaWindowWayland *wl_window = META_WINDOW_WAYLAND (window);
|
|
||||||
int pending_width;
|
|
||||||
int pending_height;
|
|
||||||
|
|
||||||
meta_window_wayland_get_pending_size (wl_window,
|
|
||||||
&pending_width,
|
|
||||||
&pending_height);
|
|
||||||
|
|
||||||
configuration = g_new0 (MetaWaylandWindowConfiguration, 1);
|
configuration = g_new0 (MetaWaylandWindowConfiguration, 1);
|
||||||
*configuration = (MetaWaylandWindowConfiguration) {
|
*configuration = (MetaWaylandWindowConfiguration) {
|
||||||
@ -81,8 +72,8 @@ meta_wayland_window_configuration_new (MetaWindow *window,
|
|||||||
|
|
||||||
if (flags & META_MOVE_RESIZE_RESIZE_ACTION ||
|
if (flags & META_MOVE_RESIZE_RESIZE_ACTION ||
|
||||||
is_window_size_fixed (window) ||
|
is_window_size_fixed (window) ||
|
||||||
pending_width != width ||
|
window->rect.width != width ||
|
||||||
pending_height != height)
|
window->rect.height != height)
|
||||||
{
|
{
|
||||||
configuration->has_size = TRUE;
|
configuration->has_size = TRUE;
|
||||||
configuration->width = width;
|
configuration->width = width;
|
||||||
|
@ -301,12 +301,6 @@ meta_window_wayland_move_resize_internal (MetaWindow *window,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
int pending_width;
|
|
||||||
int pending_height;
|
|
||||||
meta_window_wayland_get_pending_size (wl_window,
|
|
||||||
&pending_width,
|
|
||||||
&pending_height);
|
|
||||||
|
|
||||||
if (window->placement.rule)
|
if (window->placement.rule)
|
||||||
{
|
{
|
||||||
switch (window->placement.state)
|
switch (window->placement.state)
|
||||||
@ -321,8 +315,8 @@ meta_window_wayland_move_resize_internal (MetaWindow *window,
|
|||||||
if (flags & META_MOVE_RESIZE_PLACEMENT_CHANGED ||
|
if (flags & META_MOVE_RESIZE_PLACEMENT_CHANGED ||
|
||||||
rel_x != wl_window->last_sent_rel_x ||
|
rel_x != wl_window->last_sent_rel_x ||
|
||||||
rel_y != wl_window->last_sent_rel_y ||
|
rel_y != wl_window->last_sent_rel_y ||
|
||||||
constrained_rect.width != pending_width ||
|
constrained_rect.width != window->rect.width ||
|
||||||
constrained_rect.height != pending_height)
|
constrained_rect.height != window->rect.height)
|
||||||
{
|
{
|
||||||
MetaWaylandWindowConfiguration *configuration;
|
MetaWaylandWindowConfiguration *configuration;
|
||||||
|
|
||||||
@ -355,8 +349,8 @@ meta_window_wayland_move_resize_internal (MetaWindow *window,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (constrained_rect.width != pending_width ||
|
else if (constrained_rect.width != window->rect.width ||
|
||||||
constrained_rect.height != pending_height ||
|
constrained_rect.height != window->rect.height ||
|
||||||
flags & META_MOVE_RESIZE_STATE_CHANGED)
|
flags & META_MOVE_RESIZE_STATE_CHANGED)
|
||||||
{
|
{
|
||||||
MetaWaylandWindowConfiguration *configuration;
|
MetaWaylandWindowConfiguration *configuration;
|
||||||
@ -1210,27 +1204,3 @@ meta_window_wayland_get_max_size (MetaWindow *window,
|
|||||||
scale = 1.0 / (float) meta_window_wayland_get_geometry_scale (window);
|
scale = 1.0 / (float) meta_window_wayland_get_geometry_scale (window);
|
||||||
scale_size (width, height, scale);
|
scale_size (width, height, scale);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
meta_window_wayland_get_pending_size (MetaWindowWayland *wl_window,
|
|
||||||
int *width,
|
|
||||||
int *height)
|
|
||||||
{
|
|
||||||
MetaWindow *window = META_WINDOW (wl_window);
|
|
||||||
GList *l;
|
|
||||||
|
|
||||||
for (l = wl_window->pending_configurations; l; l = l->next)
|
|
||||||
{
|
|
||||||
MetaWaylandWindowConfiguration *configuration = l->data;
|
|
||||||
|
|
||||||
if (configuration->has_size)
|
|
||||||
{
|
|
||||||
*width = configuration->width;
|
|
||||||
*height = configuration->height;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
*width = window->rect.width;
|
|
||||||
*height = window->rect.height;
|
|
||||||
}
|
|
||||||
|
@ -77,8 +77,4 @@ void meta_window_wayland_get_max_size (MetaWindow *window,
|
|||||||
int *width,
|
int *width,
|
||||||
int *height);
|
int *height);
|
||||||
|
|
||||||
void meta_window_wayland_get_pending_size (MetaWindowWayland *wl_window,
|
|
||||||
int *width,
|
|
||||||
int *height);
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user