diff --git a/README.in b/README.in
index fc79a0718..c89055d7d 100644
--- a/README.in
+++ b/README.in
@@ -210,9 +210,6 @@ Clutter has additional command line options for the configure script:
win32:
Microsoft Windows(tm) WGL backend.
- fruity:
- Apple iPod Touch(tm)/iPhone(tm) backend. (EXPERIMENTAL)
-
--with-imagebackend=[gdk-pixbuf/quartz/internal]
Select the image loading backend used by COGL
diff --git a/clutter/Makefile.am b/clutter/Makefile.am
index 5314d7e7e..480474dcc 100644
--- a/clutter/Makefile.am
+++ b/clutter/Makefile.am
@@ -536,29 +536,6 @@ clutterosx_includedir = $(clutter_includedir)/osx
clutterosx_include_HEADERS = $(osx_source_h)
endif # SUPPORT_OSX
-# Fruity backend rules
-fruity_source_c = \
- $(srcdir)/fruity/clutter-backend-fruity.c \
- $(srcdir)/fruity/clutter-stage-fruity.c \
- $(srcdir)/fruity/clutter-fruity.c \
- $(NULL)
-
-fruity_source_h = \
- $(srcdir)/fruity/clutter-backend-fruity.h \
- $(srcdir)/fruity/clutter-stage-fruity.h \
- $(srcdir)/fruity/clutter-fruity.h \
- $(NULL)
-
-if SUPPORT_FRUITY
-AM_CFLAGS += -xobjective-c
-
-backend_source_c_priv += $(fruity_source_c)
-backend_source_h_priv += $(fruity_source_h)
-
-clutterfruity_includedir = $(clutter_includedir)/fruity
-clutterfruity_include_HEADERS = $(srcdir)/fruity/clutter-fruity.h
-endif # SUPPORT_FRUITY
-
# Wayland backend rules
if SUPPORT_WAYLAND
backend_source_h += \
diff --git a/clutter/clutter-main.c b/clutter/clutter-main.c
index 183f7845b..c7d2f30fc 100644
--- a/clutter/clutter-main.c
+++ b/clutter/clutter-main.c
@@ -665,19 +665,12 @@ clutter_main (void)
loop = g_main_loop_new (NULL, TRUE);
main_loops = g_slist_prepend (main_loops, loop);
-#ifdef HAVE_CLUTTER_FRUITY
- /* clutter fruity creates an application that forwards events and manually
- * spins the mainloop
- */
- clutter_fruity_main ();
-#else
if (g_main_loop_is_running (main_loops->data))
{
clutter_threads_leave ();
g_main_loop_run (loop);
clutter_threads_enter ();
}
-#endif
main_loops = g_slist_remove (main_loops, loop);
@@ -1406,14 +1399,9 @@ pre_parse_hook (GOptionContext *context,
if (env_string)
clutter_disable_mipmap_text = TRUE;
-#ifdef HAVE_CLUTTER_FRUITY
- /* we always enable fuzzy picking in the "fruity" backend */
- clutter_use_fuzzy_picking = TRUE;
-#else
env_string = g_getenv ("CLUTTER_FUZZY_PICK");
if (env_string)
clutter_use_fuzzy_picking = TRUE;
-#endif /* HAVE_CLUTTER_FRUITY */
return _clutter_backend_pre_parse (backend, error);
}
diff --git a/clutter/cogl/cogl/Makefile.am b/clutter/cogl/cogl/Makefile.am
index 0d97216a3..ce3ff0d3b 100644
--- a/clutter/cogl/cogl/Makefile.am
+++ b/clutter/cogl/cogl/Makefile.am
@@ -344,10 +344,6 @@ cogl_sources_c += \
$(srcdir)/winsys/cogl-winsys-egl.c \
$(srcdir)/winsys/cogl-winsys-stub.c
endif
-if SUPPORT_EGL_PLATFORM_FRUITY
-cogl_sources_c += \
- $(srcdir)/winsys/cogl-winsys-fruity.c
-endif
if SUPPORT_EGL_PLATFORM_DRM_SURFACELESS
cogl_sources_c += \
$(srcdir)/winsys/cogl-winsys-egl.c \
diff --git a/clutter/cogl/cogl/winsys/cogl-winsys-fruity.c b/clutter/cogl/cogl/winsys/cogl-winsys-fruity.c
deleted file mode 100644
index 9c937e4bc..000000000
--- a/clutter/cogl/cogl/winsys/cogl-winsys-fruity.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Cogl
- *
- * An object oriented GL/GLES Abstraction/Utility Layer
- *
- * Copyright (C) 2007,2008,2009 Intel Corporation.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library 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
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see .
- *
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "cogl.h"
-
-CoglFuncPtr
-_cogl_winsys_get_proc_address (const char *name)
-{
- return NULL;
-}
-
diff --git a/clutter/cogl/configure.ac b/clutter/cogl/configure.ac
index 1ef4e406c..45bfe8c72 100644
--- a/clutter/cogl/configure.ac
+++ b/clutter/cogl/configure.ac
@@ -273,9 +273,7 @@ AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_POWERVR_X11, [false])
AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_POWERVR_NULL, [false])
AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_POWERVR_GDL, [false])
AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_DRM_SURFACELESS, [false])
-AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_FRUITY, [false])
AM_CONDITIONAL(SUPPORT_OSX, [false])
-AM_CONDITIONAL(SUPPORT_FRUITY, [false])
AM_CONDITIONAL(SUPPORT_WIN32, [false])
AM_CONDITIONAL(SUPPORT_CEX100, [false])
AM_CONDITIONAL(SUPPORT_WAYLAND, [false])
diff --git a/clutter/fruity/clutter-backend-fruity.c b/clutter/fruity/clutter-backend-fruity.c
deleted file mode 100644
index df1c1e8f1..000000000
--- a/clutter/fruity/clutter-backend-fruity.c
+++ /dev/null
@@ -1,302 +0,0 @@
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "clutter-backend-fruity.h"
-#include "clutter-stage-fruity.h"
-
-#include "clutter-debug.h"
-#include "clutter-main.h"
-#include "clutter-stage-private.h"
-#include "clutter-private.h"
-
-static ClutterBackendEGL *backend_singleton = NULL;
-
-
-G_DEFINE_TYPE (ClutterBackendEGL, clutter_backend_egl, CLUTTER_TYPE_BACKEND);
-
-static gboolean
-clutter_backend_egl_pre_parse (ClutterBackend *backend,
- GError **error)
-{
- return TRUE;
-}
-
-static gboolean
-clutter_backend_egl_post_parse (ClutterBackend *backend,
- GError **error)
-{
- ClutterBackendEGL *backend_egl = CLUTTER_BACKEND_EGL(backend);
- EGLBoolean status;
-
- backend_egl->edpy = eglGetDisplay (EGL_DEFAULT_DISPLAY);
-
- status = eglInitialize (backend_egl->edpy,
- &backend_egl->egl_version_major,
- &backend_egl->egl_version_minor);
-
- if (status != EGL_TRUE)
- {
- g_set_error (error, CLUTTER_INIT_ERROR,
- CLUTTER_INIT_ERROR_BACKEND,
- "Unable to Initialize EGL");
- return FALSE;
- }
-
- CLUTTER_NOTE (BACKEND, "EGL Reports version %i.%i",
- backend_egl->egl_version_major,
- backend_egl->egl_version_minor);
-
- return TRUE;
-}
-
-static void
-clutter_backend_egl_ensure_context (ClutterBackend *backend,
- ClutterStage *stage)
-{
- /* not doing anything since we only have one context */
-}
-
-static void
-clutter_backend_egl_redraw (ClutterBackend *backend,
- ClutterStage *stage)
-{
- ClutterBackendEGL *backend_egl = CLUTTER_BACKEND_EGL (backend);
- ClutterStageEGL *stage_egl;
- ClutterStageWindow *impl;
-
- impl = _clutter_stage_get_window (stage);
- if (!impl)
- return;
-
- g_assert (CLUTTER_IS_STAGE_EGL (impl));
- stage_egl = CLUTTER_STAGE_EGL (impl);
-
- eglWaitNative (EGL_CORE_NATIVE_ENGINE);
- _clutter_stage_do_paint (stage, NULL);
- cogl_flush ();
- eglWaitGL();
- eglSwapBuffers (backend_egl->edpy, stage_egl->egl_surface);
-}
-
-static ClutterActor *
-clutter_backend_egl_create_stage (ClutterBackend *backend,
- ClutterStage *wrapper,
- GError **error)
-{
- ClutterBackendEGL *backend_egl = CLUTTER_BACKEND_EGL (backend);
- ClutterStageEGL *stage_egl;
- ClutterActor *stage;
-
- if (backend_egl->stage)
- {
- g_warning ("The EGL native backend does not support multiple stages");
- return backend_egl->stage;
- }
-
- stage = g_object_new (CLUTTER_TYPE_STAGE_FRUITY, NULL);
-
- stage_egl = CLUTTER_STAGE_EGL (stage);
- stage_egl->backend = backend_egl;
- stage_egl->wrapper = wrapper;
-
- backend_egl->stage = CLUTTER_ACTOR (stage_egl);
-
- return stage;
-}
-
-
-static void
-clutter_backend_egl_init_events (ClutterBackend *backend)
-{
-}
-
-static const GOptionEntry entries[] =
-{
- { NULL }
-};
-
-static void
-clutter_backend_egl_finalize (GObject *gobject)
-{
- if (backend_singleton)
- backend_singleton = NULL;
-
- G_OBJECT_CLASS (clutter_backend_egl_parent_class)->finalize (gobject);
-}
-
-static void
-clutter_backend_egl_dispose (GObject *gobject)
-{
- ClutterBackendEGL *backend_egl = CLUTTER_BACKEND_EGL (gobject);
-
- _clutter_events_uninit (CLUTTER_BACKEND (backend_egl));
-
- if (backend_egl->egl_context)
- {
- eglDestroyContext (backend_egl->edpy, backend_egl->egl_context);
- backend_egl->egl_context = NULL;
- }
-
- if (backend_egl->edpy)
- {
- eglTerminate (backend_egl->edpy);
- backend_egl->edpy = 0;
- }
-
- G_OBJECT_CLASS (clutter_backend_egl_parent_class)->dispose (gobject);
-}
-
-static GObject *
-clutter_backend_egl_constructor (GType gtype,
- guint n_params,
- GObjectConstructParam *params)
-{
- GObjectClass *parent_class;
- GObject *retval;
-
- if (!backend_singleton)
- {
- parent_class = G_OBJECT_CLASS (clutter_backend_egl_parent_class);
- retval = parent_class->constructor (gtype, n_params, params);
-
- backend_singleton = CLUTTER_BACKEND_EGL (retval);
-
- return retval;
- }
-
- g_warning ("Attempting to create a new backend object. This should "
- "never happen, so we return the singleton instance.");
-
- return g_object_ref (backend_singleton);
-}
-
-static ClutterFeatureFlags
-clutter_backend_egl_get_features (ClutterBackend *backend)
-{
- ClutterBackendEGL *backend_egl = CLUTTER_BACKEND_EGL (backend);
-
- CLUTTER_NOTE (BACKEND, "Checking features\n"
- "GL_VENDOR: %s\n"
- "GL_RENDERER: %s\n"
- "GL_VERSION: %s\n"
- "EGL_VENDOR: %s\n"
- "EGL_VERSION: %s\n"
- "EGL_EXTENSIONS: %s\n",
- glGetString (GL_VENDOR),
- glGetString (GL_RENDERER),
- glGetString (GL_VERSION),
- eglQueryString (backend_egl->edpy, EGL_VENDOR),
- eglQueryString (backend_egl->edpy, EGL_VERSION),
- eglQueryString (backend_egl->edpy, EGL_EXTENSIONS));
-
- return CLUTTER_FEATURE_STAGE_STATIC;
-}
-
-static void
-clutter_backend_egl_class_init (ClutterBackendEGLClass *klass)
-{
- GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
- ClutterBackendClass *backend_class = CLUTTER_BACKEND_CLASS (klass);
-
- gobject_class->constructor = clutter_backend_egl_constructor;
- gobject_class->dispose = clutter_backend_egl_dispose;
- gobject_class->finalize = clutter_backend_egl_finalize;
-
- backend_class->pre_parse = clutter_backend_egl_pre_parse;
- backend_class->post_parse = clutter_backend_egl_post_parse;
- backend_class->init_events = clutter_backend_egl_init_events;
- backend_class->create_stage = clutter_backend_egl_create_stage;
- backend_class->ensure_context = clutter_backend_egl_ensure_context;
- backend_class->redraw = clutter_backend_egl_redraw;
- backend_class->get_features = clutter_backend_egl_get_features;
-}
-
-static void
-clutter_backend_egl_init (ClutterBackendEGL *backend_egl)
-{
- ClutterBackend *backend = CLUTTER_BACKEND (backend_egl);
- ClutterMainContext *context;
- int i;
-
- clutter_backend_set_resolution (backend, 96.0);
- clutter_backend_set_double_click_time (backend, 250);
- clutter_backend_set_double_click_distance (backend, 5);
-
- context = _clutter_context_get_default ();
-
-#define MAX_FINGERS 5
-
- for (i = 0; i < MAX_FINGERS; i++)
- {
- ClutterFruityFingerDevice *device;
-
- device = g_new0 (ClutterFruityFingerDevice, 1);
- context->input_devices = g_slist_append (context->input_devices, device);
-
- device->device.id = i;
- device->device.click_count = 0;
- device->device.previous_time = 0;
- device->device.previous_x = -1;
- device->device.previous_y = -1;
- device->device.previous_button_number = -1;
- device->x = 0;
- device->y = 0;
- }
-
-#undef MAX_FINGERS
-}
-
-GType
-_clutter_backend_impl_get_type (void)
-{
- return clutter_backend_egl_get_type ();
-}
-
-/**
- * clutter_egl_display:
- *
- * Retrieves the EGLDisplay used by Clutter.
- *
- * Return value: the EGL display
- *
- * Deprecated: 1.6: Use clutter_fruity_get_egl_display() instead
- *
- * Since: 0.6
- */
-EGLDisplay
-clutter_egl_display (void)
-{
- return backend_singleton->edpy;
-}
-
-/**
- * clutter_fruity_egl_display:
- *
- * Retrieves the EGLDisplay used by Clutter.
- *
- * Return value: the EGL display
- *
- * Since: 1.6
- */
-EGLDisplay
-clutter_fruity_get_egl_display (void)
-{
- if (backend_singleton == NULL)
- {
- g_critical ("%s has been called before clutter_init()", G_STRFUNC);
- return 0;
- }
-
- return backend_singleton->edpy;
-}
-
-void *rpl_malloc (size_t allocation)
-{
- return g_malloc (allocation);
-}
-
-void rpl_free (void *ptr)
-{
- g_free (ptr);
-}
diff --git a/clutter/fruity/clutter-backend-fruity.h b/clutter/fruity/clutter-backend-fruity.h
deleted file mode 100644
index 6fd7ddebc..000000000
--- a/clutter/fruity/clutter-backend-fruity.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/* Clutter.
- * An OpenGL based 'interactive canvas' library.
- * Authored By Matthew Allum
- * Copyright (C) 2006-2007 OpenedHand
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library 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
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see .
- *
- *
- */
-
-#ifndef __CLUTTER_BACKEND_EGL_H__
-#define __CLUTTER_BACKEND_EGL_H__
-
-/*#ifdef HAVE_CLUTTER_FRUITY */
-/* extra include needed for the GLES header for arm-apple-darwin */
-#include
-/*#endif*/
-
-
-#include
-#include
-
-#include
-
-#include "clutter-backend-private.h"
-
-G_BEGIN_DECLS
-
-#define CLUTTER_TYPE_BACKEND_FRUITY (clutter_backend_egl_get_type ())
-#define CLUTTER_BACKEND_EGL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_TYPE_BACKEND_FRUITY, ClutterBackendEGL))
-#define CLUTTER_IS_BACKEND_EGL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_BACKEND_FRUITY))
-#define CLUTTER_BACKEND_EGL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CLUTTER_TYPE_BACKEND_FRUITY, ClutterBackendEGLClass))
-#define CLUTTER_IS_BACKEND_EGL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_BACKEND_FRUITY))
-#define CLUTTER_BACKEND_EGL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_BACKEND_FRUITY, ClutterBackendEGLClass))
-
-typedef struct _ClutterBackendEGL ClutterBackendEGL;
-typedef struct _ClutterBackendEGLClass ClutterBackendEGLClass;
-typedef struct _ClutterFruityFingerDevice ClutterFruityFingerDevice;
-
-struct _ClutterFruityFingerDevice
-{
- ClutterInputDevice device;
- int x, y;
- gboolean is_down;
-};
-
-struct _ClutterBackendEGL
-{
- ClutterBackend parent_instance;
-
- /* EGL Specific */
- EGLDisplay edpy;
- EGLSurface egl_surface;
- EGLContext egl_context;
-
- gint egl_version_major;
- gint egl_version_minor;
-
- /* main stage singleton */
- ClutterActor *stage;
-
- /* event source */
- GSource *event_source;
-
- int num_fingers;
-
- /*< private >*/
-};
-
-struct _ClutterBackendEGLClass
-{
- ClutterBackendClass parent_class;
-};
-
-GType clutter_backend_egl_get_type (void) G_GNUC_CONST;
-
-void _clutter_events_init (ClutterBackend *backend);
-void _clutter_events_uninit (ClutterBackend *backend);
-
-G_END_DECLS
-
-#endif /* __CLUTTER_BACKEND_EGL_H__ */
diff --git a/clutter/fruity/clutter-fruity.c b/clutter/fruity/clutter-fruity.c
deleted file mode 100644
index e15a8649d..000000000
--- a/clutter/fruity/clutter-fruity.c
+++ /dev/null
@@ -1,443 +0,0 @@
-#include
-#include "clutter-backend-fruity.h"
-#include "clutter-stage-fruity.h"
-#include "../clutter-main.h"
-#include "../clutter-private.h"
-#import
-
-#import
-#import
-#include
-#include
-#include
-
-#import
-#import
-#import
-#import
-#import
-#include "clutter-fruity.h"
-
-static gboolean alive = TRUE;
-
-@interface StageView : UIView
-{
-}
-
-@end
-
-
-@implementation StageView
-
-struct GSPathPoint {
- char unk0;
- char unk1;
- short int status;
- int unk2;
- float x;
- float y;
-};
-
-typedef struct {
- int unk0;
- int unk1;
- int type;
- int subtype;
- float unk2;
- float unk3;
- float x;
- float y;
- int timestamp1;
- int timestamp2;
- int unk4;
- int modifierFlags;
- int unk5;
- int unk6;
- int mouseEvent;
- short int dx;
- short int fingerCount;
- int unk7;
- int unk8;
- char unk9;
- char numPoints;
- short int unk10;
- struct GSPathPoint points[10];
-} MEvent;
-
-#define MAX_FINGERS 5
-
-- (void)doEvent:(GSEvent*)gs_event
-{
- ClutterBackendEGL *ba = CLUTTER_BACKEND_EGL (clutter_get_default_backend());
- int i, j;
- ClutterMainContext *context;
- ClutterStage *stage = CLUTTER_STAGE_EGL(ba->stage)->wrapper;
- MEvent *event = (MEvent*)gs_event;
-
- context = _clutter_context_get_default ();
-
- bool mapped[MAX_FINGERS] = {false, false, false, false, false}; /* an event has been mapped to this device */
- int evs[MAX_FINGERS] = {0,0,0,0,0};
-
- /* using numPoints (with the points[i].status check) seems to
- * be no different from using numFingers :/ */
-
- for (i = 0; i < event->numPoints; i++)
- {
- bool found = false;
-
- if (event->points[i].status != 3) /* skip if finger not down */
- continue;
-
- /* NSLog(@"IncomingEvent: %d, pos: %f, %f", i, event->points[i].x, event->points[i].y);*/
-
- /* check if this finger maps to one of the existing devices */
- for (j = 0; j < MAX_FINGERS; j++)
- {
- ClutterFruityFingerDevice *dev;
-
- if (mapped[j])
- continue; /* we're already using device j */
-
- dev = g_slist_nth_data (context->input_devices, j);
-
- if (!dev->is_down)
- continue; /* device isn't down we cannot really match against it */
-
- int dist = (event->points[i].x - dev->x) * (event->points[i].x - dev->x) +
- (event->points[i].y - dev->y) * (event->points[i].y - dev->y);
- if (dist < 20 * 20)
- {
- found = true;
- mapped[j] = true;
-
- /* only generate motion events if we've changed position */
- if (dist >= 1)
- {
- dev->x = event->points[i].x;
- dev->y = event->points[i].y;
- // MOUSEMOVE
- /*NSLog(@"MouseMove: %d, pos: %d, %d", j, dev->x, dev->y);*/
- evs[j] = 3;
- }
- break;
- }
- }
-
- if (!found)
- {
- ClutterFruityFingerDevice *dev;
-
- for (j = 0; j < MAX_FINGERS; j++)
- {
- dev = g_slist_nth_data (context->input_devices, j);
- if (!dev->is_down)
- break;
- }
-
- dev->x = event->points[i].x;
- dev->y = event->points[i].y;
- g_assert (dev->is_down == FALSE);
- dev->is_down = TRUE;
-
- mapped[j] = true;
-
- // MOUSEDOWN
- /* NSLog(@"MouseDown: %d, pos: %d, %d", j, event->points[i].x, dev->x, dev->y); */
- evs[j] = 2;
- }
- }
-
- for (j = 0; j < MAX_FINGERS; j++)
- {
- ClutterFruityFingerDevice *dev;
-
- dev = g_slist_nth_data (context->input_devices, j);
-
- if (dev->is_down && !mapped[j])
- {
- // MOUSEUP
- /* NSLog(@"MouseUp: %d, pos: %d, %d", j, dev->x, dev->y); */
- evs[j] = 1;
- dev->is_down = FALSE;
- }
- }
-
- /* Now I guess go through device list and deliver an event for each
- * if valid and devliver if so...
- */
- {
- i = 0;
- GSList *list_it;
-
- for (list_it = context->input_devices;
- list_it != NULL;
- list_it = list_it->next)
- {
- ClutterFruityFingerDevice *dev = (ClutterFruityFingerDevice *)list_it->data;
-
- if (evs[i] > 0)
- {
- ClutterEvent *cev;
-
- if (evs[i] == 1)
- {
- cev = clutter_event_new (CLUTTER_BUTTON_RELEASE);
- cev->button.device = (ClutterInputDevice *)dev;
- cev->button.x = dev->x;
- cev->button.y = dev->y;
- cev->button.button = 1;
- cev->button.time = clutter_get_timestamp () / 1000;
- cev->any.stage = stage;
- clutter_do_event (cev);
- clutter_event_free (cev);
- }
- else if (evs[i] == 2)
- {
- cev = clutter_event_new (CLUTTER_BUTTON_PRESS);
- cev->button.device = (ClutterInputDevice *)dev;
- cev->button.x = dev->x;
- cev->button.y = dev->y;
- cev->button.button = 1;
- cev->button.time = clutter_get_timestamp () / 1000;
- cev->any.stage = stage;
- clutter_do_event (cev);
- clutter_event_free (cev);
- }
- else /* evs = 3, motion */
- {
- cev = clutter_event_new (CLUTTER_MOTION);
- cev->motion.device = (ClutterInputDevice *)dev;
- cev->motion.x = dev->x;
- cev->motion.y = dev->y;
- cev->motion.time = clutter_get_timestamp () / 1000;
- cev->any.stage = stage;
- clutter_do_event (cev);
- clutter_event_free (cev);
- }
- }
- i++;
- }
- }
-}
-
-#if 0 // old style
-- (void) mouseDown:(GSEvent*)event
-{
- CGPoint location= GSEventGetLocationInWindow(event);
- ClutterBackendEGL *backend_fruity = CLUTTER_BACKEND_EGL (clutter_get_default_backend());
- ClutterStage *stage = CLUTTER_STAGE_EGL(backend_fruity->stage)->wrapper;
- ClutterEvent *cev;
- float x = location.x;
- float y = location.y;
-
- cev = clutter_event_new (CLUTTER_BUTTON_PRESS);
- cev->button.x = x;
- cev->button.y = y;
- cev->button.button = 1;
- cev->button.time = clutter_get_timestamp () / 1000;
- cev->any.stage = stage;
-
- clutter_do_event (cev);
- clutter_event_free (cev);
-}
-
-- (void) mouseUp:(GSEvent*)event
-{
- ClutterEvent *cev;
- ClutterBackendEGL *backend_fruity = CLUTTER_BACKEND_EGL (clutter_get_default_backend());
- ClutterStage *stage = CLUTTER_STAGE_EGL(backend_fruity->stage)->wrapper;
- CGPoint location= GSEventGetLocationInWindow(event);
- float x = location.x;
- float y = location.y;
-
- cev = clutter_event_new (CLUTTER_BUTTON_RELEASE);
- cev->button.x = x;
- cev->button.y = y;
- cev->button.button = 1;
- cev->button.time = clutter_get_timestamp () / 1000;
- cev->any.stage = stage;
- clutter_do_event (cev);
- clutter_event_free (cev);
-}
-
-- (void) mouseDragged:(GSEvent*)event
-{
- ClutterEvent *cev;
- ClutterBackendEGL *backend_fruity = CLUTTER_BACKEND_EGL (clutter_get_default_backend());
- ClutterStage *stage = CLUTTER_STAGE_EGL(backend_fruity->stage)->wrapper;
- CGPoint location= GSEventGetLocationInWindow(event);
- float x = location.x;
- float y = location.y;
-
- cev = clutter_event_new (CLUTTER_MOTION);
- cev->motion.x = x;
- cev->motion.y = y;
- cev->motion.time = clutter_get_timestamp () / 1000;
- cev->any.stage = stage;
- clutter_do_event (cev);
- clutter_event_free (cev);
-}
-#endif
-
-/* New... */
-
-#if 0
-- (void)gestureChanged:(GSEvent*)event {
- NSLog(@"gestureChanged:");
- [self doEvent: event];
-}
-
-- (void)gestureEnded:(GSEvent*)event {
- NSLog(@"gestureEnded:");
- [self doEvent: event];
-}
-
-- (void)gestureStarted:(GSEvent*)event {
- /*NSLog(@"gestureStarted:");*/
- [self doEvent: event];
-}
-#endif
-
-- (void)mouseDown:(GSEvent*)event {
- /*NSLog(@"mouseDown:");*/
- [self doEvent: event];
-}
-
-- (void)mouseDragged:(GSEvent*)event {
- /*NSLog(@"mouseDragged:");*/
- [self doEvent: event];
-}
-
-- (void)mouseEntered:(GSEvent*)event {
- /*NSLog(@"mouseEntered:");*/
- [self doEvent: event];
-}
-
-- (void)mouseExited:(GSEvent*)event {
- /*NSLog(@"mouseExited:");*/
- [self doEvent: event];
-}
-
-- (void)mouseMoved:(GSEvent*)event {
- /*NSLog(@"mouseMoved:");*/
- [self doEvent: event];
-}
-
-- (void)mouseUp:(GSEvent*)event {
- /*NSLog(@"mouseUp:");*/
- [self doEvent: event];
-}
-
-- (void)view:(UIView *)view handleTapWithCount:(int)count event:(GSEvent *)event {
- /*NSLog(@"handleTapWithCount: %d", count);*/
- [self doEvent: event];
-}
-
-- (double)viewTouchPauseThreshold:(UIView *)view {
- return 0.5;
-}
-
-- (BOOL)isFirstResponder {
- return YES;
-}
-
-@end
-
-
-@interface ClutterUIKit : UIApplication
-{
- StageView *stage_view;
-}
-@end
-
-@implementation ClutterUIKit
-
-- (void) applicationDidFinishLaunching: (id) unused
-{
- NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
-
- [UIHardware _setStatusBarHeight:0.0f];
- [self setStatusBarMode:2 orientation:0 duration:0.0f fenceID:0];
-
- CGRect screenRect = [UIHardware fullScreenApplicationContentRect];
- UIWindow* window = [[UIWindow alloc] initWithContentRect: screenRect];
-
- [window orderFront: self];
- [window makeKey: self];
- [window _setHidden: NO];
-
- [NSTimer
- scheduledTimerWithTimeInterval:0.0025
- target: self
- selector: @selector(update)
- userInfo: nil
- repeats: YES
- ];
-
- StageView *stageView = [StageView alloc];
- [stageView initWithFrame: screenRect];
- [window setContentView: stageView];
-
- stage_view = stageView;
-
- [pool release];
-}
-
-- (void)applicationWillTerminate
-{
- /* FIXME: here we should do things to shut down the uikit application */
- [stage_view release];
- ClutterBackendEGL *backend_fruity = CLUTTER_BACKEND_EGL (clutter_get_default_backend());
- ClutterStageEGL *stage_fruity;
- stage_fruity = CLUTTER_STAGE_EGL(backend_fruity->stage);
-
- alive = FALSE;
- /* FIXME why is this unrealize here? is the intent to destroy the stage?
- * or hide it? Trying to clean up all manual unrealization so
- * clutter_actor_unrealize() can be made private to clutter-actor.c
- */
- clutter_actor_unrealize (CLUTTER_ACTOR (stage_fruity));
- clutter_main_quit ();
-}
-
-- (void)applicationWillSuspend
-{
- ClutterBackendEGL *backend_fruity = CLUTTER_BACKEND_EGL (clutter_get_default_backend());
- ClutterStageEGL *stage_fruity;
- stage_fruity = CLUTTER_STAGE_EGL(backend_fruity->stage);
- alive = FALSE;
-}
-
-- (void)applicationDidResumeFromUnderLock
-{
- alive = TRUE;
- [stage_view setNeedsDisplay];
-}
-
-- (void) update
-{
- if (alive && g_main_context_pending (NULL))
- g_main_context_iteration (NULL, FALSE);
-}
-
-- (id)initWithFrame:(struct CGRect)frame {
- [super initWithFrame: frame];
- [super setTapDelegate: self];
- [super setGestureDelegate: self];
- return self;
-}
-
-@end
-
-void clutter_fruity_main (void)
-{
- NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
- UIApplicationMain(0, NULL, [ClutterUIKit class]);
- [pool release];
-}
-
-
-
-
-
diff --git a/clutter/fruity/clutter-fruity.h b/clutter/fruity/clutter-fruity.h
deleted file mode 100644
index f704188b9..000000000
--- a/clutter/fruity/clutter-fruity.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Clutter.
- *
- * An OpenGL based 'interactive canvas' library.
- *
- * Authored By Matthew Allum
- *
- * Copyright (C) 2006 OpenedHand
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library 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
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see .
- *
- *
- */
-
-#ifndef __CLUTTER_FRUITY_H__
-#define __CLUTTER_FRUITY_H__
-
-#include
-
-#if HAVE_CLUTTER_FRUITY
-/* extra include needed for the GLES header for arm-apple-darwin */
-#include
-#endif
-
-#include
-#include
-
-#include
-
-G_BEGIN_DECLS
-
-#ifndef CLUTTER_DISABLE_DEPRECATED
-EGLDisplay clutter_egl_display (void);
-#endif
-
-EGLDisplay clutter_fruity_get_egl_display (void);
-
-void clutter_uikit_main (void);
-
-G_END_DECLS
-
-#endif /* __CLUTTER_EGL_H__ */
diff --git a/clutter/fruity/clutter-stage-fruity.c b/clutter/fruity/clutter-stage-fruity.c
deleted file mode 100644
index 8fb881fdb..000000000
--- a/clutter/fruity/clutter-stage-fruity.c
+++ /dev/null
@@ -1,259 +0,0 @@
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "clutter-stage-fruity.h"
-#include "clutter-fruity.h"
-#include "clutter-backend-fruity.h"
-
-#include "../clutter-main.h"
-#include "../clutter-feature.h"
-#include "../clutter-color.h"
-#include "../clutter-util.h"
-#include "../clutter-event.h"
-#include "../clutter-enum-types.h"
-#include "../clutter-private.h"
-#include "../clutter-debug.h"
-#include "../clutter-units.h"
-#include "../clutter-stage.h"
-#include "../clutter-stage-window.h"
-
-static void clutter_stage_window_iface_init (ClutterStageWindowIface *iface);
-
-G_DEFINE_TYPE_WITH_CODE (ClutterStageEGL,
- clutter_stage_egl,
- CLUTTER_TYPE_ACTOR,
- G_IMPLEMENT_INTERFACE (CLUTTER_TYPE_STAGE_WINDOW,
- clutter_stage_window_iface_init));
-
-static void
-clutter_stage_egl_show (ClutterActor *actor)
-{
- CLUTTER_ACTOR_SET_FLAGS (actor, CLUTTER_ACTOR_MAPPED);
-}
-
-static void
-clutter_stage_egl_hide (ClutterActor *actor)
-{
- CLUTTER_ACTOR_UNSET_FLAGS (actor, CLUTTER_ACTOR_MAPPED);
-}
-
-static void
-clutter_stage_egl_unrealize (ClutterActor *actor)
-{
- ClutterStageEGL *stage_egl = CLUTTER_STAGE_EGL (actor);
-
- CLUTTER_MARK();
-
- if (CLUTTER_ACTOR_CLASS (clutter_stage_egl_parent_class)->unrealize != NULL)
- CLUTTER_ACTOR_CLASS (clutter_stage_egl_parent_class)->unrealize (actor);
-
- if (stage_egl->egl_surface)
- {
- eglDestroySurface (clutter_fruity_get_egl_display (),
- stage_egl->egl_surface);
- stage_egl->egl_surface = EGL_NO_SURFACE;
- }
-}
-
-static void
-clutter_stage_egl_realize (ClutterActor *actor)
-{
- ClutterStageEGL *stage_egl = CLUTTER_STAGE_EGL (actor);
- ClutterBackendEGL *backend_egl;
- EGLConfig configs[2];
- EGLint config_count;
- EGLBoolean status;
- EGLint cfg_attribs[] = {
- EGL_BUFFER_SIZE, EGL_DONT_CARE,
- EGL_RED_SIZE, 5,
- EGL_GREEN_SIZE, 6,
- EGL_BLUE_SIZE, 5,
- EGL_DEPTH_SIZE, 16,
- EGL_ALPHA_SIZE, EGL_DONT_CARE,
- EGL_STENCIL_SIZE, 2,
- EGL_SURFACE_TYPE, EGL_WINDOW_BIT,
- EGL_NONE };
-
- CLUTTER_NOTE (BACKEND, "Realizing main stage");
-
- backend_egl = CLUTTER_BACKEND_EGL (clutter_get_default_backend ());
-
- status = eglGetConfigs (backend_egl->edpy,
- configs,
- 2,
- &config_count);
-
- if (status != EGL_TRUE)
- g_warning ("eglGetConfigs failed");
-
- status = eglChooseConfig (backend_egl->edpy,
- cfg_attribs,
- configs,
- G_N_ELEMENTS (configs),
- &config_count);
-
- if (status != EGL_TRUE)
- {
- g_critical ("eglChooseConfig failed");
- CLUTTER_ACTOR_UNSET_FLAGS (actor, CLUTTER_ACTOR_REALIZED);
- return;
- }
-
- if (stage_egl->egl_surface != EGL_NO_SURFACE)
- {
- eglDestroySurface (backend_egl->edpy, stage_egl->egl_surface);
- stage_egl->egl_surface = EGL_NO_SURFACE;
- }
-
- if (backend_egl->egl_context)
- {
- eglDestroyContext (backend_egl->edpy, backend_egl->egl_context);
- backend_egl->egl_context = NULL;
- }
-
- stage_egl->egl_surface =
- eglCreateWindowSurface (backend_egl->edpy,
- configs[0],
- NULL,
- NULL);
-
-
-
- if (stage_egl->egl_surface == EGL_NO_SURFACE)
- {
- g_critical ("Unable to create an EGL surface");
- CLUTTER_ACTOR_UNSET_FLAGS (actor, CLUTTER_ACTOR_REALIZED);
- return;
- }
-
- eglQuerySurface (backend_egl->edpy,
- stage_egl->egl_surface,
- EGL_WIDTH,
- &stage_egl->surface_width);
-
- eglQuerySurface (backend_egl->edpy,
- stage_egl->egl_surface,
- EGL_HEIGHT,
- &stage_egl->surface_height);
-
- CLUTTER_NOTE (BACKEND, "EGL surface is %ix%i",
- stage_egl->surface_width,
- stage_egl->surface_height);
-
-
- if (G_UNLIKELY (backend_egl->egl_context == NULL))
- {
- CLUTTER_NOTE (GL, "Creating EGL Context");
-
- backend_egl->egl_context = eglCreateContext (backend_egl->edpy,
- configs[0],
- EGL_NO_CONTEXT,
- NULL);
-
- if (backend_egl->egl_context == EGL_NO_CONTEXT)
- {
- g_critical ("Unable to create a suitable EGL context");
-
- CLUTTER_ACTOR_UNSET_FLAGS (actor, CLUTTER_ACTOR_REALIZED);
- return;
- }
- }
-
- /* this will make sure to set the current context */
- CLUTTER_NOTE (BACKEND, "Setting context");
-
- /* this should be done in ClutterBackend::ensure_context */
- status = eglMakeCurrent (backend_egl->edpy,
- stage_egl->egl_surface,
- stage_egl->egl_surface,
- backend_egl->egl_context);
-
- if (status != EGL_TRUE)
- {
- g_critical ("eglMakeCurrent failed");
- CLUTTER_ACTOR_UNSET_FLAGS (actor, CLUTTER_ACTOR_REALIZED);
- return;
- }
-}
-
-static void
-clutter_stage_egl_get_preferred_width (ClutterActor *self,
- gfloat for_height,
- gfloat *min_width_p,
- gfloat *natural_width_p)
-{
- ClutterStageEGL *stage_egl = CLUTTER_STAGE_EGL (self);
-
- if (min_width_p)
- *min_width_p = CLUTTER_UNITS_FROM_DEVICE (stage_egl->surface_width);
-
- if (natural_width_p)
- *natural_width_p = CLUTTER_UNITS_FROM_DEVICE (stage_egl->surface_width);
-}
-
-static void
-clutter_stage_egl_get_preferred_height (ClutterActor *self,
- gfloat for_width,
- gfloat *min_height_p,
- gfloat *natural_height_p)
-{
- ClutterStageEGL *stage_egl = CLUTTER_STAGE_EGL (self);
-
- if (min_height_p)
- *min_height_p = CLUTTER_UNITS_FROM_DEVICE (stage_egl->surface_height);
-
- if (natural_height_p)
- *natural_height_p = CLUTTER_UNITS_FROM_DEVICE (stage_egl->surface_height);
-}
-
-static void
-clutter_stage_egl_dispose (GObject *gobject)
-{
- ClutterStageEGL *stage_egl = CLUTTER_STAGE_EGL (gobject);
-
- G_OBJECT_CLASS (clutter_stage_egl_parent_class)->dispose (gobject);
-}
-
-static void
-clutter_stage_egl_class_init (ClutterStageEGLClass *klass)
-{
- GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
- ClutterActorClass *actor_class = CLUTTER_ACTOR_CLASS (klass);
-
- gobject_class->dispose = clutter_stage_egl_dispose;
-
- actor_class->show = clutter_stage_egl_show;
- actor_class->hide = clutter_stage_egl_hide;
- actor_class->realize = clutter_stage_egl_realize;
- actor_class->unrealize = clutter_stage_egl_unrealize;
- actor_class->get_preferred_width = clutter_stage_egl_get_preferred_width;
- actor_class->get_preferred_height = clutter_stage_egl_get_preferred_height;
-}
-
-static void
-clutter_stage_egl_set_fullscreen (ClutterStageWindow *stage_window,
- gboolean fullscreen)
-{
- g_warning ("Stage of type '%s' do not support ClutterStage::set_fullscreen",
- G_OBJECT_TYPE_NAME (stage_window));
-}
-
-static ClutterActor *
-clutter_stage_egl_get_wrapper (ClutterStageWindow *stage_window)
-{
- return CLUTTER_ACTOR (CLUTTER_STAGE_EGL (stage_window)->wrapper);
-}
-
-static void
-clutter_stage_window_iface_init (ClutterStageWindowIface *iface)
-{
- iface->set_fullscreen = clutter_stage_egl_set_fullscreen;
- iface->set_title = NULL;
- iface->get_wrapper = clutter_stage_egl_get_wrapper;
-}
-
-static void
-clutter_stage_egl_init (ClutterStageEGL *stage)
-{
-}
diff --git a/clutter/fruity/clutter-stage-fruity.h b/clutter/fruity/clutter-stage-fruity.h
deleted file mode 100644
index c361fbe25..000000000
--- a/clutter/fruity/clutter-stage-fruity.h
+++ /dev/null
@@ -1,48 +0,0 @@
-#ifndef __CLUTTER_STAGE_EGL_H__
-#define __CLUTTER_STAGE_EGL_H__
-
-#include
-#include
-
-#if HAVE_CLUTTER_FRUITY
-/* extra include needed for the GLES header for arm-apple-darwin */
-#include
-#endif
-
-#include
-#include
-#include "clutter-backend-fruity.h"
-
-#define CLUTTER_TYPE_STAGE_FRUITY (clutter_stage_egl_get_type ())
-#define CLUTTER_STAGE_EGL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_TYPE_STAGE_FRUITY, ClutterStageEGL))
-#define CLUTTER_IS_STAGE_EGL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_STAGE_FRUITY))
-#define CLUTTER_STAGE_EGL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CLUTTER_TYPE_STAGE_FRUITY, ClutterStageEGLClass))
-#define CLUTTER_IS_STAGE_EGL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_STAGE_FRUITY))
-#define CLUTTER_STAGE_EGL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_STAGE_FRUITY, ClutterStageEGLClass))
-
-typedef struct _ClutterStageEGL ClutterStageEGL;
-typedef struct _ClutterStageEGLClass ClutterStageEGLClass;
-
-struct _ClutterStageEGL
-{
- ClutterActor parent_instance;
-
- /* from the backend */
- gint surface_width;
- gint surface_height;
-
- EGLSurface egl_surface;
-
- /* the stage wrapper */
- ClutterStage *wrapper;
- ClutterBackendEGL *backend;
-};
-
-struct _ClutterStageEGLClass
-{
- ClutterActorClass parent_class;
-};
-
-GType clutter_stage_egl_get_type (void) G_GNUC_CONST;
-
-#endif /* __CLUTTER_STAGE_EGL_H__ */
diff --git a/configure.ac b/configure.ac
index fddf4d9bd..9a9f4a77d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -197,7 +197,7 @@ experimental_backend=no
experimental_image=no
AC_ARG_WITH([flavour],
- [AC_HELP_STRING([--with-flavour=@<:@glx/opengl-egl-xlib/wayland/eglx/eglnative/osx/win32/fruity/cex100@:>@],
+ [AC_HELP_STRING([--with-flavour=@<:@glx/opengl-egl-xlib/wayland/eglx/eglnative/osx/win32/cex100@:>@],
[Select the Clutter window system backend])],
[CLUTTER_FLAVOUR=$with_flavour])
@@ -402,25 +402,6 @@ AS_CASE([$CLUTTER_FLAVOUR],
FLAVOUR_LIBS="$FLAVOUR_LIBS -lgdl $EVDEV_LIBS"
],
- [fruity],
- [
- experimental_backend="yes"
- # the GL header is defined in the COGL checks above
- CLUTTER_STAGE_TYPE="CLUTTER_TYPE_STAGE_FRUITY"
- AC_DEFINE([HAVE_CLUTTER_FRUITY], [1], [Have the Fruity backend])
- AC_DEFINE([COGL_HAS_EGL_PLATFORM_FRUITY_SUPPORT], [1],
- [Cogl supports OpenGLES using the EGL API with Fruity platform typedefs])
-
- COGL_DRIVER="gles"
- # the fruity backend requires a different handling for GLES
- glesversion=fruity
-
- FLAVOUR_LIBS="$FLAVOUR_LIBS -ObjC -framework Foundation -framework CoreFoundation -framework CoreGraphics -framework CoreSurface -framework GraphicsServices -framework OpenGLES -framework LayerKit -framework UIKit"
-
- CLUTTER_WINSYS=fruity
- CLUTTER_SONAME_INFIX=fruity
- ],
-
[osx],
[
experimental_backend="yes"
@@ -462,7 +443,8 @@ AS_CASE([$CLUTTER_FLAVOUR],
CLUTTER_SONAME_INFIX=win32
],
- [AC_MSG_ERROR([Invalid backend for Clutter: use glx, osx, win32, eglx, eglnative or fruity])]
+ [AC_MSG_ERROR([Invalid backend for Clutter: use glx, osx,
+ win32, eglx or eglnative])]
)
AS_IF([test "x$SUPPORT_X11" = "x1"],
@@ -536,11 +518,8 @@ AM_CONDITIONAL(SUPPORT_EGL, [test "x$SUPPORT_EGL" = "x1"])
AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_POWERVR_X11, [test "x$SUPPORT_EGL_PLATFORM_POWERVR_X11" = "x1"])
AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_POWERVR_NULL, [test "x$SUPPORT_EGL_PLATFORM_POWERVR_NULL" = "x1"])
AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_POWERVR_GDL, [test "x$SUPPORT_EGL_PLATFORM_POWERVR_GDL" = "x1"])
-AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_FRUITY, [test "x$CLUTTER_WINSYS" = "xfruity"])
AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_DRM_SURFACELESS, [test "x$SUPPORT_EGL_PLATFORM_DRM_SURFACELESS" = "x1"])
-AM_CONDITIONAL(SUPPORT_EGL_PLATFORM_FRUITY, [test "x$CLUTTER_WINSYS" = "xfruity"])
AM_CONDITIONAL(SUPPORT_OSX, [test "x$CLUTTER_WINSYS" = "xosx"])
-AM_CONDITIONAL(SUPPORT_FRUITY, [test "x$CLUTTER_WINSYS" = "xfruity"])
AM_CONDITIONAL(SUPPORT_WIN32, [test "x$CLUTTER_WINSYS" = "xwin32"])
AM_CONDITIONAL(SUPPORT_CEX100, [test "x$SUPPORT_EGL_PLATFORM_POWERVR_GDL" = "x1"])
AM_CONDITIONAL(SUPPORT_WAYLAND, [test "x$CLUTTER_WINSYS" = "xwayland"])
@@ -649,17 +628,6 @@ AS_IF([test "x$COGL_DRIVER" = "xgles"],
NEED_SEPARATE_EGL=yes
],
- [fruity],
- [
- cogl_gl_headers="GLES/gl.h GLES/glext.h"
- AC_DEFINE([HAVE_COGL_GLES], 1, [Have GL/ES for rendering])
- cogl_gles_version_define="COGL_HAS_GLES1"
-
- AC_CHECK_HEADERS([GLES/egl.h],
- [],
- [AC_MSG_ERROR([Unable to locate required GLES headers])])
- ],
-
[AC_MSG_ERROR([Unknown argument for --with-gles])]
)
]
diff --git a/doc/reference/clutter/Makefile.am b/doc/reference/clutter/Makefile.am
index adc47850d..82b8a83f3 100644
--- a/doc/reference/clutter/Makefile.am
+++ b/doc/reference/clutter/Makefile.am
@@ -95,7 +95,6 @@ IGNORE_HFILES=\
cogl \
egl \
evdev \
- fruity \
glx \
osx \
x11 \
diff --git a/doc/reference/clutter/building-clutter.xml b/doc/reference/clutter/building-clutter.xml
index 53a8e1b54..c922a1297 100644
--- a/doc/reference/clutter/building-clutter.xml
+++ b/doc/reference/clutter/building-clutter.xml
@@ -141,7 +141,7 @@
- --with-flavour=[glx/eglx/eglnative/win32/osx/fruity/cex100]
+ --with-flavour=[glx/eglx/eglnative/win32/osx/cex100]
Select the Clutter backend; default=glx.