Merge pull request #1970 from emersion/xdg-shell-stable

Add xdg-shell stable support
This commit is contained in:
Drew DeVault 2018-05-13 13:45:15 -04:00 committed by GitHub
commit b2dec12368
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 331 additions and 1 deletions

View file

@ -7,6 +7,8 @@
#include <wayland-server.h>
#include <wlr/types/wlr_output_layout.h>
#include <wlr/types/wlr_wl_shell.h>
#include <wlr/types/wlr_xdg_shell_v6.h>
#include <wlr/types/wlr_xdg_shell.h>
#include "cairo.h"
#include "pango.h"
#include "sway/config.h"
@ -459,6 +461,16 @@ struct sway_container *container_at(struct sway_container *parent,
sview->wlr_xdg_surface_v6,
view_sx, view_sy, &_sx, &_sy);
break;
case SWAY_VIEW_XDG_SHELL:
// the top left corner of the sway container is the
// coordinate of the top left corner of the window geometry
view_sx += sview->wlr_xdg_surface->geometry.x;
view_sy += sview->wlr_xdg_surface->geometry.y;
_surface = wlr_xdg_surface_surface_at(
sview->wlr_xdg_surface,
view_sx, view_sy, &_sx, &_sy);
break;
}
if (_surface) {
*sx = _sx;

View file

@ -76,6 +76,8 @@ const char *view_get_type(struct sway_view *view) {
return "wl_shell";
case SWAY_VIEW_XDG_SHELL_V6:
return "xdg_shell_v6";
case SWAY_VIEW_XDG_SHELL:
return "xdg_shell";
case SWAY_VIEW_XWAYLAND:
return "xwayland";
}