src/bin/e_util_transform.h \
src/bin/e_comp_hwc.h \
src/bin/e_comp_screen.h \
-src/bin/e_info_protocol.h
-
-if HAVE_WAYLAND
-ENLIGHTENMENTHEADERS += \
+src/bin/e_info_protocol.h \
src/bin/e_uuid_store.h \
src/bin/e_comp_wl_data.h \
src/bin/e_comp_wl_input.h \
src/bin/e_comp_wl_tbm.h
endif
-endif
-
enlightenment_src = \
src/bin/e_actions.c \
src/bin/e_bg.c \
src/bin/e_comp_hwc.c \
src/bin/e_output.c \
src/bin/e_info_protocol.c \
-$(ENLIGHTENMENTHEADERS)
-
-if HAVE_WAYLAND
-enlightenment_src += \
src/bin/e_uuid_store.c \
src/bin/session-recovery-protocol.c \
src/bin/session-recovery-server-protocol.h \
src/bin/e_comp_wl_screenshooter_server.h \
src/bin/e_comp_wl_data.c \
src/bin/e_comp_wl_input.c \
-src/bin/e_comp_wl.c
+src/bin/e_comp_wl.c \
+$(ENLIGHTENMENTHEADERS)
if HAVE_WAYLAND_TBM
enlightenment_src += \
src/bin/e_comp_wl_tbm.c
endif
-endif
-
src_bin_enlightenment_CPPFLAGS = $(E_CPPFLAGS) -DEFL_BETA_API_SUPPORT -DEFL_EO_API_SUPPORT -DE_LOGGING=1 @WAYLAND_CFLAGS@ $(TTRACE_CFLAGS) $(DLOG_CFLAGS)
if HAVE_WAYLAND_TBM
src_bin_enlightenment_CPPFLAGS += @WAYLAND_TBM_CFLAGS@ @ECORE_DRM_CFLAGS@
# define TRACE_INPUT_END()
# endif
-/* egl.h must come before Evas_GL.h otherwise they will conflict */
-//# ifdef HAVE_WAYLAND_EGL
-//# include <EGL/egl.h>
-//# endif
-
# include <setjmp.h>
# include <Eo.h>
# include <Eina.h>
# include <Edje.h>
# include <Eldbus.h>
# include <Eio.h>
-
-# ifdef HAVE_WAYLAND
-# include <Ecore_Wayland.h>
-# include <uuid.h>
-# endif
+# include <uuid.h>
# ifdef E_API
# undef E_API
}
}
-E_API void
-e_bindings_mouse_grab(E_Binding_Context ctxt, Ecore_X_Window win)
-{
- E_Binding_Mouse *binding;
- Eina_List *l;
-
- EINA_LIST_FOREACH(mouse_bindings, l, binding)
- {
- if (_e_bindings_context_match(binding->ctxt, ctxt))
- {
-#ifndef HAVE_WAYLAND_ONLY
- ecore_x_window_button_grab(win, binding->button,
- ECORE_X_EVENT_MASK_MOUSE_DOWN |
- ECORE_X_EVENT_MASK_MOUSE_UP |
- ECORE_X_EVENT_MASK_MOUSE_MOVE,
- e_bindings_modifiers_to_ecore_convert(binding->mod),
- binding->any_mod);
-#endif
- }
- }
-#ifdef HAVE_WAYLAND_ONLY
- (void)win;
-#endif
-}
-
-E_API void
-e_bindings_mouse_ungrab(E_Binding_Context ctxt, Ecore_X_Window win)
-{
- E_Binding_Mouse *binding;
- Eina_List *l;
-
- EINA_LIST_FOREACH(mouse_bindings, l, binding)
- {
- if (_e_bindings_context_match(binding->ctxt, ctxt))
- {
-#ifndef HAVE_WAYLAND_ONLY
- ecore_x_window_button_ungrab(win, binding->button,
- e_bindings_modifiers_to_ecore_convert(binding->mod), binding->any_mod);
-#endif
- }
- }
-#ifdef HAVE_WAYLAND_ONLY
- (void)win;
-#endif
-}
-
E_API E_Action *
e_bindings_mouse_button_find(E_Binding_Context ctxt, E_Binding_Event_Mouse_Button *ev, E_Binding_Mouse **bind_ret)
{
}
}
-E_API void
-e_bindings_key_grab(E_Binding_Context ctxt, Ecore_X_Window win)
-{
- E_Binding_Key *binding;
- Eina_List *l;
-
- EINA_LIST_FOREACH(key_bindings, l, binding)
- {
- if (_e_bindings_context_match(binding->ctxt, ctxt))
- {
- if (e_bindings_key_allowed(binding->key))
- {
-#ifndef HAVE_WAYLAND_ONLY
- ecore_x_window_key_grab(win, binding->key,
- e_bindings_modifiers_to_ecore_convert(binding->mod), binding->any_mod);
-#endif
- }
- }
- }
-#ifdef HAVE_WAYLAND_ONLY
- (void)win;
-#endif
-}
-
-E_API void
-e_bindings_key_ungrab(E_Binding_Context ctxt, Ecore_X_Window win)
-{
- E_Binding_Key *binding;
- Eina_List *l;
-
- EINA_LIST_FOREACH(key_bindings, l, binding)
- {
- if (_e_bindings_context_match(binding->ctxt, ctxt))
- {
- if (e_bindings_key_allowed(binding->key))
- {
-#ifndef HAVE_WAYLAND_ONLY
- ecore_x_window_key_ungrab(win, binding->key,
- e_bindings_modifiers_to_ecore_convert(binding->mod), binding->any_mod);
-#endif
- }
- }
- }
-#ifdef HAVE_WAYLAND_ONLY
- (void)win;
-#endif
-}
-
E_API E_Action *
e_bindings_key_down_event_handle(E_Binding_Context ctxt, E_Object *obj, Ecore_Event_Key *ev)
{
}
}
-E_API void
-e_bindings_wheel_grab(E_Binding_Context ctxt, Ecore_X_Window win)
-{
- E_Binding_Wheel *binding;
- Eina_List *l;
-
- EINA_LIST_FOREACH(wheel_bindings, l, binding)
- {
- if (_e_bindings_context_match(binding->ctxt, ctxt))
- {
- int button = 0;
-
- if (binding->direction == 0)
- {
- if (binding->z < 0) button = 4;
- else if (binding->z > 0)
- button = 5;
- }
- else if (binding->direction == 1)
- {
- if (binding->z < 0) button = 6;
- else if (binding->z > 0)
- button = 7;
- }
- if (button != 0)
- {
-#ifndef HAVE_WAYLAND_ONLY
- ecore_x_window_button_grab(win, button,
- ECORE_X_EVENT_MASK_MOUSE_DOWN,
- e_bindings_modifiers_to_ecore_convert(binding->mod), binding->any_mod);
-#endif
- }
- }
- }
-#ifdef HAVE_WAYLAND_ONLY
- (void)win;
-#endif
-}
-
-E_API void
-e_bindings_wheel_ungrab(E_Binding_Context ctxt, Ecore_X_Window win)
-{
- E_Binding_Wheel *binding;
- Eina_List *l;
-
- EINA_LIST_FOREACH(wheel_bindings, l, binding)
- {
- if (_e_bindings_context_match(binding->ctxt, ctxt))
- {
- int button = 0;
-
- if (binding->direction == 0)
- {
- if (binding->z < 0) button = 4;
- else if (binding->z > 0)
- button = 5;
- }
- else if (binding->direction == 1)
- {
- if (binding->z < 0) button = 6;
- else if (binding->z > 0)
- button = 7;
- }
- if (button != 0)
- {
-#ifndef HAVE_WAYLAND_ONLY
- ecore_x_window_button_ungrab(win, button,
- e_bindings_modifiers_to_ecore_convert(binding->mod), binding->any_mod);
-#endif
- }
- }
- }
-#ifdef HAVE_WAYLAND_ONLY
- (void)win;
-#endif
-}
-
E_API E_Action *
e_bindings_wheel_find(E_Binding_Context ctxt, E_Binding_Event_Wheel *ev, E_Binding_Wheel **bind_ret)
{
E_API void e_bindings_mouse_add(E_Binding_Context ctxt, int button, E_Binding_Modifier mod, int any_mod, const char *action, const char *params);
E_API void e_bindings_mouse_del(E_Binding_Context ctxt, int button, E_Binding_Modifier mod, int any_mod, const char *action, const char *params);
-E_API void e_bindings_mouse_grab(E_Binding_Context ctxt, Ecore_X_Window win);
-E_API void e_bindings_mouse_ungrab(E_Binding_Context ctxt, Ecore_X_Window win);
E_API E_Action *e_bindings_mouse_button_find(E_Binding_Context ctxt, E_Binding_Event_Mouse_Button *ev, E_Binding_Mouse **bind_ret);
E_API E_Action *e_bindings_mouse_down_event_handle(E_Binding_Context ctxt, E_Object *obj, E_Binding_Event_Mouse_Button *ev);
E_API E_Action *e_bindings_mouse_down_evas_event_handle(E_Binding_Context ctxt, E_Object *obj, Evas_Event_Mouse_Down *ev);
E_API void e_bindings_key_del(E_Binding_Context ctxt, const char *key, E_Binding_Modifier mod, int any_mod, const char *action, const char *params);
E_API E_Binding_Key *e_bindings_key_get(const char *action);
E_API E_Binding_Key *e_bindings_key_find(const char *key, E_Binding_Modifier mod, int any_mod);
-E_API void e_bindings_key_grab(E_Binding_Context ctxt, Ecore_X_Window win);
-E_API void e_bindings_key_ungrab(E_Binding_Context ctxt, Ecore_X_Window win);
E_API E_Action *e_bindings_key_down_event_handle(E_Binding_Context ctxt, E_Object *obj, Ecore_Event_Key *ev);
E_API E_Action *e_bindings_key_up_event_handle(E_Binding_Context ctxt, E_Object *obj, Ecore_Event_Key *ev);
E_API E_Action *e_bindings_key_down_event_find(E_Binding_Context ctxt, Ecore_Event_Key *ev);
E_API void e_bindings_wheel_add(E_Binding_Context ctxt, int direction, int z, E_Binding_Modifier mod, int any_mod, const char *action, const char *params);
E_API void e_bindings_wheel_del(E_Binding_Context ctxt, int direction, int z, E_Binding_Modifier mod, int any_mod, const char *action, const char *params);
-E_API void e_bindings_wheel_grab(E_Binding_Context ctxt, Ecore_X_Window win);
-E_API void e_bindings_wheel_ungrab(E_Binding_Context ctxt, Ecore_X_Window win);
E_API E_Action *e_bindings_wheel_find(E_Binding_Context ctxt, E_Binding_Event_Wheel *ev, E_Binding_Wheel **bind_ret);
E_API E_Action *e_bindings_wheel_event_handle(E_Binding_Context ctxt, E_Object *obj, E_Binding_Event_Wheel *ev);
E_API E_Action *e_bindings_wheel_evas_event_handle(E_Binding_Context ctxt, E_Object *obj, Evas_Event_Mouse_Wheel *ev);
E_API int E_EVENT_CLIENT_ROTATION_CHANGE_END = -1;
#endif
E_API int E_EVENT_CLIENT_VISIBILITY_CHANGE = -1;
-#ifdef HAVE_WAYLAND_ONLY
E_API int E_EVENT_CLIENT_BUFFER_CHANGE = -1;
-#endif
static Eina_Hash *clients_hash[E_PIXMAP_TYPE_MAX] = {NULL}; // pixmap->client
E_OBJECT(ec)->references--;
ELOG("CLIENT FREE", ec->pixmap, ec);
-#ifdef HAVE_WAYLAND
e_uuid_store_entry_del(ec->uuid);
-#endif
free(ec);
}
{
if (!ec) return;
-#ifdef HAVE_WAYLAND_ONLY
E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
Eina_List *l, *ll;
E_Comp_Wl_Aux_Hint *hint;
}
cdata->aux_hint.changed = 0;
}
-#endif
}
static void
return ec->client_type;
}
-#ifdef HAVE_WAYLAND_ONLY
static void
_e_client_transform_sub_apply(E_Client *ec, E_Client *epc, double zoom)
{
evas_map_free(map);
}
-#endif
static void
_e_client_visibility_zone_calculate(E_Zone *zone)
int w = 0;
int h = 0;
const int edge = 1;
-#ifdef HAVE_WAYLAND_ONLY
E_Comp_Wl_Client_Data *cdata;
-#endif
Eina_List *changed_list = NULL;
Eina_List *l = NULL;
if (ec->zone != zone) continue;
if (!ec->frame) continue;
if (ec->visibility.skip) continue;
-#ifdef HAVE_WAYLAND_ONLY
/* if ec is subsurface, skip this */
cdata = (E_Comp_Wl_Client_Data *)ec->comp_data;
if (cdata && cdata->sub.data) continue;
-#endif
/* TODO: need to check whether window intersects with entire screen, not zone. */
/* if (!E_INTERSECTS(ec->x, ec->y, ec->w, ec->h, zone->x, zone->y, zone->w, zone->h)) continue; */
}
// check parent matrix change
-#ifdef HAVE_WAYLAND_ONLY
if (ec->comp_data)
{
E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
}
}
}
-#endif
return check;
}
static void
_e_client_transform_core_sub_update(E_Client *ec, E_Util_Transform_Rect_Vertex *vertices)
{
-#ifdef HAVE_WAYLAND_ONLY
Eina_List *l;
E_Client *subc;
E_Comp_Wl_Client_Data *cdata;
EINA_LIST_FOREACH(cdata->sub.below_list, l, subc)
e_client_transform_core_update(subc);
-#endif
}
E_API void
E_EVENT_CLIENT_ROTATION_CHANGE_END = ecore_event_type_new();
#endif
E_EVENT_CLIENT_VISIBILITY_CHANGE = ecore_event_type_new();
-#ifdef HAVE_WAYLAND_ONLY
E_EVENT_CLIENT_BUFFER_CHANGE = ecore_event_type_new();
-#endif
return (!!clients_hash[1]);
}
if (!ec) return NULL;
e_object_del_func_set(E_OBJECT(ec), E_OBJECT_CLEANUP_FUNC(_e_client_del));
-#ifdef HAVE_WAYLAND
uuid_generate(ec->uuid);
-#endif
ec->focus_policy_override = E_FOCUS_LAST;
ec->w = 1;
typedef void (*E_Client_Layout_Cb)(void);
#else
-#ifndef HAVE_WAYLAND_ONLY
-# include <Ecore_X.h>
-#endif
-
#define E_CLIENT_TYPE (int)0xE0b01002
struct E_Event_Client
Ecore_Window window_group;
Ecore_Window transient_for;
Ecore_Window client_leader;
-#ifndef HAVE_WAYLAND_ONLY
- Ecore_X_Window_State_Hint initial_state;
- Ecore_X_Window_State_Hint state;
- Ecore_X_Pixmap icon_pixmap;
- Ecore_X_Pixmap icon_mask;
- Ecore_X_Gravity gravity;
-#endif
Eina_Stringshare *window_role;
unsigned char take_focus : 1;
unsigned char accepts_focus : 1;
/* MWM */
struct
{
-#ifndef HAVE_WAYLAND_ONLY
- Ecore_X_MWM_Hint_Func func;
- Ecore_X_MWM_Hint_Decor decor;
- Ecore_X_MWM_Hint_Input input;
-#endif
unsigned char exists : 1;
unsigned char borderless : 1;
struct
unsigned char state : 1;
unsigned char vkbd : 1;
} fetch;
-#ifndef HAVE_WAYLAND_ONLY
- Ecore_X_Virtual_Keyboard_State state;
-#endif
unsigned char have_property : 1;
unsigned char vkbd : 1;
#ifdef _F_E_VIRTUAL_KEYBOARD_TYPE_
Eina_Bool post_lower : 1;
Eina_Bool on_post_updates : 1; // client is on the post update list
-#ifdef HAVE_WAYLAND
uuid_t uuid;
-#endif
int client_type; //e_client_type
E_API extern int E_EVENT_CLIENT_ROTATION_CHANGE_END;
#endif
E_API extern int E_EVENT_CLIENT_VISIBILITY_CHANGE;
-#ifdef HAVE_WAYLAND_ONLY
E_API extern int E_EVENT_CLIENT_BUFFER_CHANGE;
-#endif
EINTERN void e_client_idler_before(void);
EINTERN Eina_Bool e_client_init(void);
e_client_util_pwin_get(const E_Client *ec)
{
if (!ec->pixmap) return 0;
-#if defined(HAVE_WAYLAND) && !defined(HAVE_WAYLAND_ONLY)
- return e_pixmap_parent_window_get(e_comp_x_client_pixmap_get(ec));
-#else
return e_pixmap_parent_window_get(ec->pixmap);
-#endif
}
static inline Ecore_Window
e_client_util_win_get(const E_Client *ec)
{
if (!ec->pixmap) return 0;
-#if defined(HAVE_WAYLAND) && !defined(HAVE_WAYLAND_ONLY)
- return e_pixmap_window_get(e_comp_x_client_pixmap_get(ec));
-#else
return e_pixmap_window_get(ec->pixmap);
-#endif
}
static inline Eina_Bool
#include "e.h"
-#ifdef HAVE_WAYLAND
-# include "e_comp_wl.h"
-#endif
#ifdef HAVE_HWC
# include "e_comp_hwc.h"
INF("---------------------");
#endif
-#ifndef HAVE_WAYLAND_ONLY
- Ecore_Window win;
- if (e_comp->comp_type == E_PIXMAP_TYPE_X)
- win = e_comp->win;
- else
- win = e_comp->cm_selection;
-#endif
E_FREE_LIST(e_comp->debug_rects, evas_object_del);
tb = eina_tiler_new(e_comp->w, e_comp->h);
EINA_SAFETY_ON_NULL_GOTO(tb, tb_fail);
#endif
}
-#ifndef HAVE_WAYLAND_ONLY
- ecore_x_window_shape_input_rectangles_set(win, (Ecore_X_Rectangle*)exr, i);
-#endif
-
exr_fail:
free(exr);
ti_fail:
#ifdef E_TYPEDEFS
-typedef struct _E_Comp E_Comp;
-
-#ifdef E_COMP_WL
-typedef struct _E_Comp_Wl_Client_Data E_Comp_Client_Data;
-#endif
-typedef struct _E_Comp_Wl_Data E_Comp_Wl_Data;
-
-#ifdef E_COMP_X
-typedef struct _E_Comp_X_Client_Data E_Comp_Client_Data;
-#endif
-typedef struct _E_Comp_X_Data E_Comp_X_Data;
-
-#if !defined(E_COMP_WL) && !defined(E_COMP_X)
-typedef struct _E_Comp_Client_Data E_Comp_Client_Data;
-#endif
-
-typedef struct _E_Comp_Demo_Style_Item E_Comp_Demo_Style_Item;
+typedef struct _E_Comp E_Comp;
+typedef struct _E_Comp_Wl_Client_Data E_Comp_Client_Data;
+typedef struct _E_Comp_Wl_Data E_Comp_Wl_Data;
typedef struct _E_Comp_Connected_Client_Info E_Comp_Connected_Client_Info;
# define E_COMP_TYPE (int) 0xE0b01003
Eina_List *pre_render_cbs; /* E_Comp_Cb */
- E_Comp_X_Data *x_comp_data;
E_Comp_Wl_Data *wl_comp_data;
E_Pixmap_Type comp_type; //for determining X/Wayland/
Eina_List *launchscrns; // list of dummy clients for launchscreen image.
};
-
-struct _E_Comp_Demo_Style_Item
-{
- Evas_Object *preview;
- Evas_Object *frame;
- Evas_Object *livethumb;
- Evas_Object *layout;
- Evas_Object *border;
- Evas_Object *client;
-};
-
struct _E_Comp_Connected_Client_Info
{
const char *name;
-#define E_COMP_WL
#include "e.h"
#include "e_comp_wl_screenshooter_server.h"
E_Comp_Wl_Buffer *buffer;
first = !e_pixmap_usable_get(ec->pixmap);
-#ifndef HAVE_WAYLAND_ONLY
- if (first && e_client_has_xwindow(ec))
- first = !e_pixmap_usable_get(e_comp_x_client_pixmap_get(ec));
-#endif
if (ec->ignored && (ec->comp_data->shell.surface || ec->internal))
{
/* set reference to pixmap so we can fetch it later */
DBG("\tUsing Client: %p", ec);
wl_resource_set_user_data(res, ec);
-#ifndef HAVE_WAYLAND_ONLY
- EINA_LIST_FOREACH(e_comp_wl->xwl_pending, l, wc)
- {
- if (!e_pixmap_is_x(wc->pixmap)) continue;
- if (wl_resource_get_id(res) !=
- ((E_Comp_X_Client_Data*)wc->comp_data)->surface_id) continue;
- e_comp_x_xwayland_client_setup(wc, ec);
- break;
- }
-#endif
+
/* emit surface create signal */
wl_signal_emit(&e_comp_wl->signals.surface.create, res);
#ifdef E_TYPEDEFS
-# ifndef HAVE_WAYLAND_ONLY
-# include "e_comp_x.h"
-# endif
#else
# ifndef E_COMP_WL_H
# define E_COMP_WL_H
# include <xkbcommon/xkbcommon.h>
-# ifndef HAVE_WAYLAND_ONLY
-# include "e_comp_x.h"
-# endif
-
# ifdef __linux__
# include <linux/input.h>
# else
{
int32_t x, y;
} popup;
-#ifndef HAVE_WAYLAND_ONLY
- E_Pixmap *xwayland_pixmap;
- E_Comp_X_Client_Data *xwayland_data;
-#endif
struct
{
#define EXECUTIVE_MODE_ENABLED
-#define E_COMP_WL
#include "e.h"
static void
#define EXECUTIVE_MODE_ENABLED
-#define E_COMP_WL
#include "e.h"
#include <sys/mman.h>
#ifdef HAVE_WL_DRM
-#define E_COMP_WL
#include "e.h"
#include <Ecore_Drm.h>
#include <wayland-tbm-server.h>
static void _e_desk_show_begin(E_Desk *desk, int dx, int dy);
static void _e_desk_hide_begin(E_Desk *desk, int dx, int dy);
static void _e_desk_event_desk_window_profile_change_free(void *data, void *ev);
-static void _e_desk_window_profile_change_protocol_set(void);
static E_Desk_Flip_Cb _e_desk_flip_cb = NULL;
static void *_e_desk_flip_data = NULL;
E_Config_Desktop_Window_Profile *cfprof;
int d_x, d_y, ok;
- _e_desk_window_profile_change_protocol_set();
-
if (!(e_config->use_desktop_window_profile))
return;
e_client_comp_hidden_set(ec, EINA_TRUE);
}
}
-
-static void
-_e_desk_window_profile_change_protocol_set(void)
-{
-#ifndef HAVE_WAYLAND_ONLY
- ecore_x_e_window_profile_supported_set(e_comp->root, e_config->use_desktop_window_profile);
-#endif
-}
static unsigned int _e_dpms_timeout_off = 0;
static int _e_dpms_enabled = EINA_FALSE;
-#ifdef HAVE_WAYLAND
-//static Eina_List *handlers;
-//static Ecore_Timer *standby_timer;
-//static Ecore_Timer *suspend_timer;
-//static Ecore_Timer *off_timer;
-#endif
-
#define STANDBY 5
#define SUSPEND 6
#define OFF 7
return ECORE_CALLBACK_PASS_ON;
}
-#ifdef HAVE_WAYLAND
-//static Eina_Bool
-//_e_dpms_standby(void *d EINA_UNUSED)
-//{
-// if (e_comp->screen && e_comp->screen->dpms)
-// e_comp->screen->dpms(1);
-// standby_timer = NULL;
-// return EINA_FALSE;
-//}
-
-//static Eina_Bool
-//_e_dpms_suspend(void *d EINA_UNUSED)
-//{
-// if (e_comp->screen && e_comp->screen->dpms)
-// e_comp->screen->dpms(2);
-// suspend_timer = NULL;
-// return EINA_FALSE;
-//}
-
-//static Eina_Bool
-//_e_dpms_off(void *d EINA_UNUSED)
-//{
-// if (e_comp->screen && e_comp->screen->dpms)
-// e_comp->screen->dpms(3);
-// off_timer = NULL;
-// return EINA_FALSE;
-//}
-
-//static Eina_Bool
-//_e_dpms_screensaver_on()
-//{
-// standby_timer = ecore_timer_add(STANDBY, _e_dpms_standby, NULL);
-// suspend_timer = ecore_timer_add(SUSPEND, _e_dpms_suspend, NULL);
-// off_timer = ecore_timer_add(OFF, _e_dpms_off, NULL);
-// return ECORE_CALLBACK_RENEW;
-//}
-
-//static Eina_Bool
-//_e_dpms_screensaver_off()
-//{
-// E_FREE_FUNC(standby_timer, ecore_timer_del);
-// E_FREE_FUNC(suspend_timer, ecore_timer_del);
-// E_FREE_FUNC(off_timer, ecore_timer_del);
-// if (e_comp->screen && e_comp->screen->dpms)
-// e_comp->screen->dpms(0);
-// return ECORE_CALLBACK_RENEW;
-//}
-#endif
-
EINTERN int
e_dpms_init(void)
{
_e_dpms_handler_desk_show = ecore_event_handler_add
(E_EVENT_DESK_SHOW, _e_dpms_handler_desk_show_cb, NULL);
-#ifndef HAVE_WAYLAND_ONLY
- if (e_comp->comp_type == E_PIXMAP_TYPE_X)
- {
- _e_dpms_enabled = ecore_x_dpms_enabled_get();
- ecore_x_dpms_timeouts_get
- (&_e_dpms_timeout_standby, &_e_dpms_timeout_suspend, &_e_dpms_timeout_off);
- e_dpms_force_update();
- }
-#endif
-#ifdef HAVE_WAYLAND
- if (e_comp->comp_type != E_PIXMAP_TYPE_X)
- {
- //E_LIST_HANDLER_APPEND(handlers, E_EVENT_SCREENSAVER_ON, _e_dpms_screensaver_on, NULL);
- //E_LIST_HANDLER_APPEND(handlers, E_EVENT_SCREENSAVER_OFF_PRE, _e_dpms_screensaver_off, NULL);
- }
-#endif
-
return 1;
}
EAPI Eina_Bool
e_hints_aux_hint_add_with_pixmap(E_Pixmap *cp, int32_t id, const char *name, const char *val)
{
-#ifdef HAVE_WAYLAND_ONLY
E_Comp_Wl_Client_Data *cdata;
Eina_Bool found = EINA_FALSE;
E_Comp_Wl_Aux_Hint *hint;
}
if (!found)
- return EINA_TRUE;
- return EINA_FALSE;
-#endif
+ return EINA_TRUE;
return EINA_FALSE;
}
EAPI Eina_Bool
e_hints_aux_hint_change_with_pixmap(E_Pixmap *cp, int32_t id, const char *val)
{
-#ifdef HAVE_WAYLAND_ONLY
E_Comp_Wl_Client_Data *cdata;
Eina_List *l;
E_Comp_Wl_Aux_Hint *hint;
}
if (found)
- return EINA_TRUE;
- return EINA_FALSE;
-#endif
+ return EINA_TRUE;
+
return EINA_FALSE;
}
EAPI Eina_Bool
e_hints_aux_hint_del_with_pixmap(E_Pixmap *cp, int32_t id)
{
-#ifdef HAVE_WAYLAND_ONLY
E_Comp_Wl_Client_Data *cdata;
Eina_List *l, *ll;
E_Comp_Wl_Aux_Hint *hint;
if (res == -1)
return EINA_FALSE;
- else
- return EINA_TRUE;
-#endif
- return EINA_FALSE;
+ return EINA_TRUE;
}
EAPI const char *
e_hints_aux_hint_value_get_with_pixmap(E_Pixmap *cp, const char *name)
{
-#ifdef HAVE_WAYLAND_ONLY
E_Comp_Wl_Client_Data *cdata;
Eina_List *l;
E_Comp_Wl_Aux_Hint *hint;
}
return res;
-#endif
- return NULL;
}
#include "e_comp_hwc.h"
#include "e_comp_screen.h"
#include "e_output.h"
-
-#ifdef HAVE_WAYLAND
-# include "e_comp_wl.h"
-# include "e_comp_wl_data.h"
-# include "e_comp_wl_input.h"
-# include "e_uuid_store.h"
+#include "e_comp_wl.h"
+#include "e_comp_wl_data.h"
+#include "e_comp_wl_input.h"
+#include "e_uuid_store.h"
#ifdef HAVE_WAYLAND_TBM
# include "e_comp_wl_tbm.h"
#endif
-#endif
-#define E_COMP_WL
#include "e.h"
#include "e_info_server.h"
#include <tbm_bufmgr.h>
#include <tbm_surface.h>
#include <tbm_surface_internal.h>
#include <tdm_helper.h>
-#ifdef HAVE_WAYLAND_ONLY
#include <wayland-tbm-server.h>
#include "e_comp_wl.h"
#include "e_info_protocol.h"
};
void wl_map_for_each(struct wl_map *map, void *func, void *data);
-#endif
+
#ifdef HAVE_HWC
#include "e_comp_hwc.h"
#endif
res_id = e_pixmap_res_id_get(ec->pixmap);
pid = ec->netwm.pid;
-#ifdef HAVE_WAYLAND_ONLY
if (pid <= 0)
{
if (ec->comp_data)
wl_client_get_credentials(wl_resource_get_client(cdata->surface), &pid, NULL, NULL);
}
}
-#endif
+
if (e_comp->hwc)
{
// TODO: print plane number
if (ec->pixmap)
res_id = e_pixmap_res_id_get(ec->pixmap);
-#ifdef HAVE_WAYLAND_ONLY
if (ec->comp_data)
{
E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
if (cdata->surface)
wl_client_get_credentials(wl_resource_get_client(cdata->surface), &pid, NULL, NULL);
}
-#endif
if (cinfo->pid == pid)
{
__CONNECTED_CLIENTS_ARG_APPEND_TYPE("[E_Client Info]", "win:0x%08x res_id:%5d, name:%20s, geo:(%4d, %4d, %4dx%4d), layer:%5d, visible:%d, argb:%d",
}
}
-#ifdef HAVE_WAYLAND_ONLY
if (target_ec->comp_data)
{
wl_client_get_credentials(wl_resource_get_client(cdata->surface), &pid, NULL, NULL);
}
}
-#endif
#define __WINDOW_PROP_ARG_APPEND(title, value) ({ \
eldbus_message_iter_arguments_append(iter, "(ss)", &struct_of_ec); \
else if (mode == WINDOW_PID_MODE)
{
pid_t pid = -1;
-#ifdef HAVE_WAYLAND_ONLY
if (ec->comp_data)
{
E_Comp_Wl_Client_Data *cdata = (E_Comp_Wl_Client_Data*)ec->comp_data;
wl_client_get_credentials(wl_resource_get_client(cdata->surface), &pid, NULL, NULL);
}
}
-#endif
if (pid == value_number)
{
_msg_window_prop_client_append(array_of_ec, ec);
if (!ec) return;
if (e_client_util_ignored_get(ec)) return;
- #ifdef HAVE_WAYLAND_ONLY
struct wl_shm_buffer *shmbuffer = NULL;
E_Comp_Wl_Buffer *buffer = e_pixmap_resource_get(ec->pixmap);
if (!buffer) return;
{
ERR("Invalid resource:%u", wl_resource_get_id(buffer->resource));
}
- #endif
EINA_SAFETY_ON_NULL_GOTO(data, err);
if (!evas_object_image_save(img, fname, NULL, "compress=1 quality=100"))
ERR("Cannot save window to '%s'", fname);
- err:
- #ifdef HAVE_WAYLAND_ONLY
+err:
if (data)
{
if (buffer->type == E_COMP_WL_BUFFER_TYPE_NATIVE)
tbm_surface_unmap(tbm_surface);
}
}
- #endif
if (img) evas_object_del(img);
if (ee) ecore_evas_free(ee);
EINTERN void e_info_server_dump_client(E_Client *ec, char *fname);
-#ifdef HAVE_WAYLAND_ONLY
#define WL_HIDE_DEPRECATED
#include <wayland-server.h>
char type;
int nullable;
};
-#endif
#endif
#endif
if (ptr->canvas)
ecore_evas_pointer_xy_get(ptr->ee, &ptr->x, &ptr->y);
-#ifndef HAVE_WAYLAND_ONLY
- else
- ecore_x_pointer_xy_get(ptr->win, &ptr->x, &ptr->y);
-#endif
ptr->idle_tmr = ecore_timer_loop_add(4.0, _e_pointer_cb_idle_wait, ptr);
_e_pointer_canvas_del(ptr);
if (ptr->canvas)
evas_object_hide(ptr->o_ptr);
-#ifndef HAVE_WAYLAND_ONLY
- if (ptr->win)
- ecore_x_window_cursor_set(ptr->win, 0);
-#endif
}
E_API void
if ((updates = evas_render_updates(ptr->buffer_evas)))
{
-#ifndef HAVE_WAYLAND_ONLY
- Ecore_X_Cursor cur;
-
- cur = ecore_x_cursor_new(ptr->win, ptr->pixels, ptr->w,
- ptr->h, ptr->hot.x, ptr->hot.y);
- ecore_x_window_cursor_set(ptr->win, cur);
- ecore_x_cursor_free(cur);
-#endif
evas_render_updates_free(updates);
}
}
E_API void
e_remember_update(E_Client *ec)
{
-#ifdef HAVE_WAYLAND
/* Use this as e_remeber_update is called in all the right places already */
e_uuid_store_entry_update(ec->uuid, ec);
-#endif
if (ec->new_client) return;
if (!ec->remember) return;
if (ec->remember->keep_settings) return;
*/
#include "e.h"
-#ifdef HAVE_WAYLAND
-# ifdef HAVE_WL_DRM
-#include <Ecore_Drm.h>
-# endif
+#ifdef HAVE_WL_DRM
+# include <Ecore_Drm.h>
#endif
#ifdef HAVE_EXECINFO_H
static void
_e_crash(void)
{
-#ifdef HAVE_WAYLAND
if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
{
#ifdef HAVE_WL_DRM
#endif
return;
}
-#endif
}
/* a tricky little devil, requires e and it's libs to be built
kill(getpid(), SIGUSR1);
kill(getpid(), SIGSEGV);
pause();
- /* _e_x_composite_shutdown(); */
- /* ecore_x_pointer_ungrab(); */
- /* ecore_x_keyboard_ungrab(); */
- /* ecore_x_ungrab(); */
- /* ecore_x_sync(); */
- /* e_alert_show(); */
}
E_API void
if (!ec) continue;
if (e_client_util_ignored_get(ec)) continue;
-#ifdef HAVE_WAYLAND_ONLY
win = e_pixmap_res_id_get(ec->pixmap);
-#else
- win = e_client_util_win_get(ec);
-#endif
eldbus_message_iter_arguments_append(array_of_ec, "(usiiiiibb)", &struct_of_ec);
eldbus_message_iter_arguments_append
{
E_Client *ec = NULL, *tec = NULL;
-#ifdef HAVE_WAYLAND_ONLY
ec = e_pixmap_find_client_by_res_id(win);
tec = e_pixmap_find_client_by_res_id(target);
-#else
- if ((!ec) || ((e_pixmap_type_get(ec->pixmap) == E_PIXMAP_TYPE_X)))
- {
- ec = e_pixmap_find_client(E_PIXMAP_TYPE_X, win);
- tec = e_pixmap_find_client(E_PIXMAP_TYPE_X, target);
- }
-#endif
if (!ec) return;
if (!th_data->registrant.win) return ECORE_CALLBACK_PASS_ON;
ec = ev->ec;
-#ifdef HAVE_WAYLAND_ONLY
win = e_pixmap_res_id_get(ec->pixmap);
-#else
- win = e_client_util_win_get(ec);
-#endif
if (win != th_data->registrant.win) return ECORE_CALLBACK_PASS_ON;
ec = ev->ec;
-#ifdef HAVE_WAYLAND_ONLY
win = e_pixmap_res_id_get(ec->pixmap);
-#else
- win = e_client_util_win_get(ec);
-#endif
if (win)
{
{
E_Client *ec;
Ecore_Window win;
-#ifdef HAVE_WAYLAND
uintptr_t wl_win_id = NULL;
-#endif
E_Pixmap_Type type = E_PIXMAP_TYPE_X;
win = elm_win_window_id_get(o);
-#ifdef HAVE_WAYLAND
if (!strncmp(ecore_evas_engine_name_get(ee), "wayland", 7))
{
type = E_PIXMAP_TYPE_WL;
wl_win_id = win;
}
else
-#endif
{
type = E_PIXMAP_TYPE_X;
ctx->pointer = e_pointer_window_new(win, EINA_TRUE);
}
-#ifdef HAVE_WAYLAND
if ((type == E_PIXMAP_TYPE_WL) && (wl_win_id))
ec = e_pixmap_find_client(type, wl_win_id);
else
-#endif
ec = e_pixmap_find_client(type, win);
if (ec)
ctx->client = ec;
if ((!title) || (!title[0]))
title = "E";
ecore_evas_title_set(ee, title);
-#ifdef HAVE_WAYLAND
if (type == E_PIXMAP_TYPE_WL)
{
if ((cp = e_pixmap_find(type, wl_win_id)))
cp = e_pixmap_new(type, wl_win_id);
}
else
-#endif
cp = e_pixmap_new(type, win);
EINA_SAFETY_ON_NULL_RETURN_VAL(cp, EINA_TRUE);
-#define E_COMP_WL
#include "e.h"
#include "bq_mgr_protocol.h"
-#define E_COMP_WL
#include "e.h"
#include "e_mod_main.h"
#include "e_input_method_protocol.h"
-#define E_COMP_WL
#include "e.h"
#include <xdg-shell-server-protocol.h>
#include <tizen-extension-server-protocol.h>
#define EXECUTIVE_MODE_ENABLED
-#define E_COMP_WL
#include "e.h"
#include <scaler-server-protocol.h>
#include <transform-server-protocol.h>