Ecore_Wayland: Remove 'ecore_wl_window' (not used or needed).

SVN revision: 66543
This commit is contained in:
Christopher Michael 2011-12-26 23:29:49 +00:00
parent 627d39bfa2
commit 4bd3586d2b
2 changed files with 0 additions and 232 deletions

View File

@ -18,32 +18,11 @@
# define EAPI
# endif
typedef enum _Ecore_Wl_Window_Type Ecore_Wl_Window_Type;
typedef struct _Ecore_Wl_Window Ecore_Wl_Window;
typedef struct _Ecore_Wl_Event_Mouse_In Ecore_Wl_Event_Mouse_In;
typedef struct _Ecore_Wl_Event_Mouse_Out Ecore_Wl_Event_Mouse_Out;
typedef struct _Ecore_Wl_Event_Focus_In Ecore_Wl_Event_Focus_In;
typedef struct _Ecore_Wl_Event_Focus_Out Ecore_Wl_Event_Focus_Out;
enum _Ecore_Wl_Window_Type
{
ECORE_WL_WINDOW_TYPE_SHM,
ECORE_WL_WINDOW_TYPE_EGL
};
struct _Ecore_Wl_Window
{
int id;
int x, y, w, h;
Ecore_Wl_Window_Type type;
Eina_Bool synced : 1;
struct wl_surface *surface;
struct wl_shell_surface *shell_surface;
struct wl_callback *callback;
};
struct _Ecore_Wl_Event_Mouse_In
{
int modifiers;
@ -111,21 +90,6 @@ EAPI unsigned int ecore_wl_format_get(void);
EAPI void ecore_wl_sync(void);
EAPI void ecore_wl_flush(void);
EAPI Ecore_Wl_Window *ecore_wl_window_new(Ecore_Wl_Window_Type type, int x, int y, int w, int h);
EAPI void ecore_wl_window_free(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_move(Ecore_Wl_Window *win, int x, int y);
EAPI void ecore_wl_window_resize(Ecore_Wl_Window *win, int w, int h);
EAPI void ecore_wl_window_show(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_hide(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_raise(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_lower(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_activate(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_focus(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_fullscreen(Ecore_Wl_Window *win);
EAPI void ecore_wl_window_attach(Ecore_Wl_Window *win, struct wl_buffer *buffer);
EAPI void ecore_wl_window_damage(Ecore_Wl_Window *win, int x, int y, int w, int h);
EAPI void ecore_wl_window_sync(Ecore_Wl_Window *win);
EAPI extern int ECORE_WL_EVENT_MOUSE_IN;
EAPI extern int ECORE_WL_EVENT_MOUSE_OUT;
EAPI extern int ECORE_WL_EVENT_FOCUS_IN;

View File

@ -1,196 +0,0 @@
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
#include "Ecore.h"
#include "ecore_private.h"
#include "Ecore_Wayland.h"
#include "ecore_wl_private.h"
/* local function prototypes */
static void _ecore_wl_window_cb_frame(void *data, struct wl_callback *cb __UNUSED__, uint32_t tm __UNUSED__);
/* local variables */
static const struct wl_callback_listener _ecore_wl_window_frame_listener =
{
_ecore_wl_window_cb_frame
};
EAPI Ecore_Wl_Window *
ecore_wl_window_new(Ecore_Wl_Window_Type type, int x, int y, int w, int h)
{
static int _win_id = 1;
Ecore_Wl_Window *win;
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!(win = calloc(1, sizeof(Ecore_Wl_Window)))) return NULL;
win->id = _win_id++;
printf("Ecore_Wl Window Id: %d\n", win->id);
win->x = x;
win->y = y;
win->w = w;
win->h = h;
win->synced = EINA_TRUE;
win->type = type;
return win;
}
EAPI void
ecore_wl_window_free(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
// ecore_wl_window_hide(win);
free(win);
}
EAPI void
ecore_wl_window_move(Ecore_Wl_Window *win, int x, int y)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if ((win->x == x) && (win->y == y)) return;
win->x = x;
win->y = y;
}
EAPI void
ecore_wl_window_resize(Ecore_Wl_Window *win, int w, int h)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if ((win->w == w) && (win->h == h)) return;
win->w = w;
win->h = h;
}
EAPI void
ecore_wl_window_show(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
win->surface = wl_compositor_create_surface(ecore_wl_compositor_get());
win->shell_surface =
wl_shell_get_shell_surface(ecore_wl_shell_get(), win->surface);
wl_shell_surface_set_toplevel(win->shell_surface);
}
EAPI void
ecore_wl_window_hide(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if (win->callback) wl_callback_destroy(win->callback);
if (win->shell_surface) wl_shell_surface_destroy(win->shell_surface);
if (win->surface) wl_surface_destroy(win->surface);
}
EAPI void
ecore_wl_window_raise(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if (!win->shell_surface) return;
wl_shell_surface_set_toplevel(win->shell_surface);
}
EAPI void
ecore_wl_window_lower(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
}
EAPI void
ecore_wl_window_activate(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if (!win->shell_surface) return;
wl_shell_surface_set_toplevel(win->shell_surface);
}
EAPI void
ecore_wl_window_focus(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if (!win->shell_surface) return;
wl_shell_surface_set_toplevel(win->shell_surface);
}
EAPI void
ecore_wl_window_fullscreen(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if (!win->shell_surface) return;
wl_shell_surface_set_fullscreen(win->shell_surface);
}
EAPI void
ecore_wl_window_attach(Ecore_Wl_Window *win, struct wl_buffer *buffer)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if ((win->surface) && (buffer))
wl_surface_attach(win->surface, buffer, 0, 0);
}
EAPI void
ecore_wl_window_damage(Ecore_Wl_Window *win, int x, int y, int w, int h)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
if (!win->surface) return;
if (win->synced)
{
if (win->callback) wl_callback_destroy(win->callback);
win->callback = wl_surface_frame(win->surface);
wl_callback_add_listener(win->callback,
&_ecore_wl_window_frame_listener, win);
win->synced = EINA_FALSE;
}
wl_surface_damage(win->surface, x, y, w, h);
}
EAPI void
ecore_wl_window_sync(Ecore_Wl_Window *win)
{
LOGFN(__FILE__, __LINE__, __FUNCTION__);
if (!win) return;
ecore_wl_flush();
while (!win->synced)
ecore_wl_sync();
}
/* local functions */
static void
_ecore_wl_window_cb_frame(void *data, struct wl_callback *cb __UNUSED__, uint32_t tm __UNUSED__)
{
Ecore_Wl_Window *win;
if (!(win = data)) return;
win->synced = EINA_TRUE;
if (win->callback) wl_callback_destroy(win->callback);
win->callback = NULL;
wl_surface_damage(win->surface, 0, 0, win->w, win->h);
}