From 5cf747d45dfd76598941b91e47a61e9da71b4d09 Mon Sep 17 00:00:00 2001 From: "Carsten Haitzler (Rasterman)" Date: Fri, 13 May 2022 20:35:34 +0100 Subject: [PATCH] wayland support - add watermark and bug message and pause this will clearly alert a user they are using e in wayland mode. this is needed as there seems to be far too much confusion if e is in wayland or not and when it is people having issues. this makes sure e's wayland session desktop also has the label in it so it's clear etc. --- data/images/meson.build | 3 +- data/images/wayland.png | Bin 0 -> 8742 bytes data/session/meson.build | 19 +-------- data/session/wl/enlightenment.desktop.in | 38 ++++++++++++++++++ data/session/wl/meson.build | 12 ++++++ data/session/{ => x}/enlightenment.desktop.in | 0 data/session/x/meson.build | 12 ++++++ src/bin/e_start_main.c | 21 ++++++++++ src/modules/wl_drm/e_mod_main.c | 20 +++++++++ 9 files changed, 107 insertions(+), 18 deletions(-) create mode 100644 data/images/wayland.png create mode 100644 data/session/wl/enlightenment.desktop.in create mode 100644 data/session/wl/meson.build rename data/session/{ => x}/enlightenment.desktop.in (100%) create mode 100644 data/session/x/meson.build diff --git a/data/images/meson.build b/data/images/meson.build index 5cdafec8e..1ecd95e4b 100644 --- a/data/images/meson.build +++ b/data/images/meson.build @@ -2,7 +2,8 @@ install_data([ 'enlightenment.png', 'test.png', 'test.jpg', 'test.edj', - 'test.svg' + 'test.svg', + 'wayland.png' ], install_dir: join_paths(dir_data, 'enlightenment/data/images') ) diff --git a/data/images/wayland.png b/data/images/wayland.png new file mode 100644 index 0000000000000000000000000000000000000000..30b59d478182e7fc66606f7c17b16aba013b88f1 GIT binary patch literal 8742 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 maxh) nh = maxh; if (nw < minw) nw = minw; if (nh < minh) nh = minh; + + { + Evas *e = ecore_evas_get(e_comp->ee); + Evas_Object *o = evas_object_name_find(e, "__e_wl_watermark"); + if (o) evas_object_move(o, nw - 40 - 16, 16); + } printf("RRR: set vsize: %ix%i, rot=%i\n", nw, nh, ecore_evas_rotation_get(e_comp->ee)); ecore_drm2_device_calibrate(dev, nw, nh); rot = ecore_evas_rotation_get(e_comp->ee); @@ -986,6 +992,20 @@ e_modapi_init(E_Module *m) efl_event_callback_array_priority_add(e_comp->evas, arr, EFL_CALLBACK_PRIORITY_BEFORE, NULL); + { + Evas_Object *o; + char buf[PATH_MAX]; + + o = evas_object_image_filled_add(ecore_evas_get(e_comp->ee)); + evas_object_name_set(o, "__e_wl_watermark"); + e_prefix_data_concat_static(buf, "data/images/wayland.png"); + evas_object_image_file_set(o, buf, NULL); + evas_object_move(o, w - 40 - 16, 16); + evas_object_resize(o, 40, 40); + evas_object_pass_events_set(o, EINA_TRUE); + evas_object_layer_set(o, EVAS_LAYER_MAX); + evas_object_show(o); + } return m; }