diff options
author | Quentin Glidic <sardemff7+git@sardemff7.net> | 2017-03-20 14:24:04 +0100 |
---|---|---|
committer | Quentin Glidic <sardemff7+git@sardemff7.net> | 2017-03-20 14:24:04 +0100 |
commit | a3db2693ad5bc8473754a2c014b50edc9d136d58 (patch) | |
tree | ae6ac04d6c2c32362f0ae1ebe20ef94c6af39c10 /source | |
parent | 41564413db663ce6d9b1d0fa08e94d0fb60f9f20 (diff) |
wayland: Add geometry-based launch support
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
Diffstat (limited to 'source')
-rw-r--r-- | source/wayland.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/source/wayland.c b/source/wayland.c index 5ef1be2e..3c4fb46e 100644 --- a/source/wayland.c +++ b/source/wayland.c @@ -1002,7 +1002,16 @@ wayland_init(GMainLoop *main_loop, const gchar *display) return FALSE; guint64 serial = g_ascii_strtoull(serial_str, NULL, 10); - zww_launcher_menu_v1_show_at_pointer(wayland->launcher_menu, wayland->surface, seat->seat, serial); + const gchar *geometry = g_getenv("ROFI_GEOMETRY"); + if ( geometry != NULL ) + { + int x, y, width, height; + if ( sscanf(geometry, "%dx%d@%d,%d", &width, &height, &x, &y) != 4 ) + return FALSE; + zww_launcher_menu_v1_show_at_surface(wayland->launcher_menu, wayland->surface, seat->seat, serial, x, y, width, height); + } + else + zww_launcher_menu_v1_show_at_pointer(wayland->launcher_menu, wayland->surface, seat->seat, serial); } else zww_launcher_menu_v1_show(wayland->launcher_menu, wayland->surface); |