[mutter/wayland] window: Add a type for Wayland windows
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/wayland] window: Add a type for Wayland windows
- Date: Thu, 20 Mar 2014 15:03:23 +0000 (UTC)
commit 1c41f71eef1d12862131c47d1461235dbe7a1e8e
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Wed Mar 19 09:26:17 2014 -0400
window: Add a type for Wayland windows
src/Makefile.am | 4 ++-
src/core/window.c | 3 +-
src/wayland/window-wayland.c | 51 ++++++++++++++++++++++++++++++++++++++++++
src/wayland/window-wayland.h | 44 ++++++++++++++++++++++++++++++++++++
4 files changed, 100 insertions(+), 2 deletions(-)
---
diff --git a/src/Makefile.am b/src/Makefile.am
index d67362b..1d0c53c 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -210,7 +210,9 @@ libmutter_wayland_la_SOURCES = \
wayland/meta-wayland-types.h \
wayland/meta-wayland-versions.h \
wayland/meta-weston-launch.c \
- wayland/meta-weston-launch.h
+ wayland/meta-weston-launch.h \
+ wayland/window-wayland.c \
+ wayland/window-wayland.h
nodist_libmutter_wayland_la_SOURCES = \
$(mutter_built_sources)
diff --git a/src/core/window.c b/src/core/window.c
index 0941dca..78adb98 100644
--- a/src/core/window.c
+++ b/src/core/window.c
@@ -61,6 +61,7 @@
#include "x11/xprops.h"
#include "x11/session.h"
+#include "wayland/window-wayland.h"
#include "wayland/meta-wayland-private.h"
/* Windows that unmaximize to a size bigger than that fraction of the workarea
@@ -783,7 +784,7 @@ _meta_window_shared_new (MetaDisplay *display,
if (client_type == META_WINDOW_CLIENT_TYPE_X11)
window = g_object_new (META_TYPE_WINDOW_X11, NULL);
else
- window = g_object_new (META_TYPE_WINDOW, NULL);
+ window = g_object_new (META_TYPE_WINDOW_WAYLAND, NULL);
window->constructing = TRUE;
diff --git a/src/wayland/window-wayland.c b/src/wayland/window-wayland.c
new file mode 100644
index 0000000..627755d
--- /dev/null
+++ b/src/wayland/window-wayland.c
@@ -0,0 +1,51 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2014 Red Hat
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ *
+ * Written by:
+ * Jasper St. Pierre <jstpierre mecheye net>
+ */
+
+#include "config.h"
+
+#include "window-wayland.h"
+
+#include "window-private.h"
+
+struct _MetaWindowWayland
+{
+ MetaWindow parent;
+};
+
+struct _MetaWindowWaylandClass
+{
+ MetaWindowClass parent_class;
+};
+
+G_DEFINE_TYPE (MetaWindowWayland, meta_window_wayland, META_TYPE_WINDOW)
+
+static void
+meta_window_wayland_init (MetaWindowWayland *window_wayland)
+{
+}
+
+static void
+meta_window_wayland_class_init (MetaWindowWaylandClass *klass)
+{
+}
diff --git a/src/wayland/window-wayland.h b/src/wayland/window-wayland.h
new file mode 100644
index 0000000..c1c6674
--- /dev/null
+++ b/src/wayland/window-wayland.h
@@ -0,0 +1,44 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2014 Red Hat
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ *
+ * Written by:
+ * Jasper St. Pierre <jstpierre mecheye net>
+ */
+
+#ifndef META_WINDOW_WAYLAND_H
+#define META_WINDOW_WAYLAND_H
+
+#include <meta/window.h>
+
+G_BEGIN_DECLS
+
+#define META_TYPE_WINDOW_WAYLAND (meta_window_wayland_get_type())
+#define META_WINDOW_WAYLAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), META_TYPE_WINDOW_WAYLAND,
MetaWindowWayland))
+#define META_WINDOW_WAYLAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), META_TYPE_WINDOW_WAYLAND,
MetaWindowWaylandClass))
+#define META_IS_WINDOW_WAYLAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), META_TYPE_WINDOW_WAYLAND))
+#define META_IS_WINDOW_WAYLAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), META_TYPE_WINDOW_WAYLAND))
+#define META_WINDOW_WAYLAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), META_TYPE_WINDOW_WAYLAND,
MetaWindowWaylandClass))
+
+GType meta_window_wayland_get_type (void);
+
+typedef struct _MetaWindowWayland MetaWindowWayland;
+typedef struct _MetaWindowWaylandClass MetaWindowWaylandClass;
+
+#endif
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]