More fullscreen fixes.

* Render fullscreen views without wlr function, which makes popups and
lockscreen work.
* Don't allow input events to surfaces behind fullscreen views.
* Use correct output dimensions (for rotated outputs).
This commit is contained in:
Ryan Dwyer 2018-04-18 08:35:28 +10:00
parent 72beae209b
commit 35ccdd67a8
3 changed files with 15 additions and 7 deletions

View file

@ -12,6 +12,7 @@
#include "sway/layers.h"
#include "sway/output.h"
#include "sway/tree/view.h"
#include "sway/tree/workspace.h"
#include "wlr-layer-shell-unstable-v1-protocol.h"
static struct wlr_surface *layer_surface_at(struct sway_output *output,
@ -89,6 +90,13 @@ static struct sway_container *container_at_cursor(struct sway_cursor *cursor,
return ws;
}
if (ws->sway_workspace->fullscreen) {
*sx = ox;
*sy = oy;
*surface = ws->sway_workspace->fullscreen->surface;
return ws->sway_workspace->fullscreen->swayc;
}
struct sway_container *c;
if ((c = container_at(ws, cursor->cursor->x, cursor->cursor->y,
surface, sx, sy))) {