summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* cogl/pango/Makefile.am pass EXTRA_LDFLAGS for linkingwip/cogl-winsys-eglRobert Bragg2011-05-031-1/+1
| | | | | | | When building on windows for example we need to ensure we pass -no-undefined to the linker. Although we were substituting a COGL_EXTRA_LDFLAGS variable from our configure.ac we forgot to reference that when linking cogl-pango.
* cogl/configure.ac: AC_SUBST an empty MAINTAINER_CFLAGSRobert Bragg2011-05-031-0/+4
| | | | | | | | For compatibility with the way we build Cogl as part of Clutter we now substitute an empty MAINTAINER_CFLAGS variable. When building Cogl standalone all our extra CFLAGS go through COGL_EXTRA_CFLAGS so the separate MAINTAINER_CFLAGS aren't used, but automake will get confused if a substitution isn't made.
* cogl/configure.ac: check when building for win32Robert Bragg2011-05-031-8/+39
| | | | | | This adds a check for when building on win32 so we can skip pkg-config checks for opengl and can add appropriate flags to COGL_EXTRA_{LD,C}FLAGS.
* cogl/configure.ac: fix pkg-config checksRobert Bragg2011-05-031-3/+2
| | | | | | | This fixes the gdk-pixbuf check to not mistakenly check for the "xi" package instead of gdk-pixbuf and remove a spurious listing "gl" in COGL_PKG_REQUIRES which should only be there when we are using using opengl not if we are using gles.
* cogl/Makefile.am: pass EXTRA_LDFLAGS for linkingRobert Bragg2011-05-031-1/+1
| | | | | | | When building on windows for example we need to ensure we pass -no-undefined to the linker. Although we were substituting a COGL_EXTRA_LDFLAGS variable from our configure.ac we forgot to reference that when linking cogl.
* cogl: remove OSX/WIN32 specific bits in favour of a stub winsysRobert Bragg2011-05-036-83/+8
| | | | | | | | Until Cogl gains native win32/OSX support this remove the osx and win32 winsys files and instead we'll just rely on the stub-winsys.c to handle these platforms. Since the only thing the platform specific files were providing anyway was a get_proc_address function; it was trivial to simply update the clutter backend code to handle this directly for now.
* cogl-gl.c: remove really_enable_npot hack for OSXRobert Bragg2011-05-031-33/+4
| | | | | | | | | This is a workaround for a bug on OSX for some radeon hardware that we can't verify and the referenced bug link is no longer valid. If this is really still a problem then a new bug should be opened and we can look at putting the fix in some more appropriate place than cogl-gl.c
* cogl/configure.ac: Adds --enable-stub-winsys optionRobert Bragg2011-05-032-1/+35
| | | | | | | | | | We want to be able to split Cogl out as a standalone project but there are still some window systems that are natively supported by Cogl. This allows Clutter to support those window systems directly but still work with a standalone Cogl library. This also ensure we set the SUPPORT_STUB conditional in clutter's configure.ac when building for win32/osx and wayland.
* winsys-glx: map X window automatically if not foreignRobert Bragg2011-05-031-0/+2
| | | | | | | | | | | | For now we are going for the semantics that when a CoglOnscreen is first allocated then it will automatically be mapped. This is for convenience and if you don't want that behaviour then it is possible to instead create an Onscreen from a foreign X window and in that case it wont be mapped automatically. This approach means that Cogl doesn't need onscreen_map/unmap functions but it's possible we'll decide later that we can't avoid adding such functions and we'll have to change these semantics.
* cogl/configure.ac: make COGL_HAS_xyz defines publicRobert Bragg2011-05-031-9/+3
| | | | | | Instead of using AC_DEFINE for the various COGL_HAS_PLATFORM defines this now adds them to the COGL_DEFINES_SYMBOLS variable which gets substituted into the public cogl-defines.h header.
* add missing Cogl bits to .gitignoreRobert Bragg2011-05-031-0/+14
|
* clutter/Makefile.am: mark clutter-cex100.h as BUILT_SOURCESRobert Bragg2011-05-031-1/+3
| | | | | clutter-xcex100.h is generated from clutter-cex100.h.in when running ./configure so it should be added to automake's BUILT_SOURCES variable.
* Adds Cogl Hello World and "X11 foreign" example applicationsRobert Bragg2011-05-036-1/+217
| | | | | | | | | This adds a simple standalone Cogl application that can be used to smoke test a standalone build of Cogl without Clutter. This also adds an x11-foreign app that shows how a toolkit can ask Cogl to draw to an X Window that it owns instead of Cogl being responsible for automatically creating and mapping an X Window for CoglOnscreen.
* cogl/configure.ac: add options to control driver/egl platformRobert Bragg2011-05-033-56/+311
| | | | | | | | | This allows more detailed control over the driver and winsys features that Cogl should have. Cogl is designed so it can support multiple window systems simultaneously so we have enable/disable options for the drivers (gl vs gles1 vs gles2) and options for the individual window systems; currently glx and egl. Egl is broken down into an option for each platform.
* EGL: Updates GDL platform supportRobert Bragg2011-05-0311-19/+189
| | | | | | | The GDL API is used for example on intel ce4100 (aka Sodaville) based systems as a way to allocate memory that can be composited using the platforms overlay hardware. This updates the Cogl EGL winsys and the support in Clutter so we can continue to support these platforms.
* Don't reference GL_STACK_OVERFLOW/UNDERFLOW for GLESRobert Bragg2011-05-031-0/+2
| | | | | These symbols aren't available when building with GLES so only reference them when building with OpenGL.
* winsys: Expose environment variable to choose winsysRobert Bragg2011-05-034-0/+12
| | | | | This makes it possible to override the winsys that cogl uses by setting the COGL_RENDERER environment variable e.g. to "GLX" or "EGL"
* Add a vtable of indirection to the winsys codeRobert Bragg2011-05-0312-241/+483
| | | | | | | So that we can dynamically select what winsys backend to use at runtime we need to have some indirection to how code accesses the winsys instead of simply calling _cogl_winsys* functions that would collide if we wanted to compile more than one backend into Cogl.
* texture-pixmap-x11: Move GLX code to cogl-winsys-glx.cRobert Bragg2011-05-035-519/+632
| | | | | | | | | This moves the GLX specific code from cogl-texture-pixmap-x11.c into cogl-winsys-glx.c. If we want the winsys components to by dynamically loadable then we can't have GLX code scattered outside of cogl-winsys-glx.c. This also sets us up for supporting the EGL_texture_from_pixmap extension which is almost identical to the GLX_texture_from_pixmap extension.
* Moves all EGL code down from Clutter to CoglRobert Bragg2011-05-0316-1297/+1405
| | | | | | | | | | As was recently done for the GLX window system code, this commit moves the EGL window system code down from the Clutter backend code into a Cogl winsys. Note: currently the cogl/configure.ac is hard coded to only build the GLX winsys so currently this is only available when building Cogl as part of Clutter.
* remove references to unused DRM_SURFACELESS EGL platformRobert Bragg2011-05-033-14/+0
| | | | | | | The "DRM_SURFACELESS" EGL platform was invented when we were adding the wayland backend to Clutter but in the end we added a dedicated backend instead of extending the EGL backend so actually the platform name isn't used.
* Updated Spanish translationDaniel Mustieles2011-05-021-28/+38
|
* Updated Spanish translationDaniel Mustieles2011-04-291-27/+27
|
* Updated Spanish translationDaniel Mustieles2011-04-281-34/+34
|
* Updated Spanish translationDaniel Mustieles2011-04-251-32/+32
|
* cogl-context: Initialize context->stub_winsysNeil Roberts2011-04-211-0/+1
| | | | | If Cogl is built using a full Winsys then it wasn't initialising context->stub_winsys which sometimes made it crash later on.
* [l10n] Updated German translationMario Blättermann2011-04-201-246/+271
|
* cogl-winsys-stub: Remove _cogl_winsys_has_featureNeil Roberts2011-04-201-7/+0
| | | | | | Commit b061f737 moved _cogl_winsys_has_feature to the common winsys code so there's no need to define it in the stub winsys any more. This was breaking builds for backends using the stub winsys.
* cogl-winsys-glx: Fix the comparison in find_onscreen_for_xidNeil Roberts2011-04-201-1/+1
| | | | | | | | | The comparison for finding onscreen framebuffers in find_onscreen_for_xid had a small thinko so that it would ignore framebuffers when the negation of the type is onscreen. This ends up doing the right thing anyway because the onscreen type has the value 0 and the offscreen type has the value 1 but presumably it would fail if we ever added any other framebuffer types.
* clutter-backend-glx: Protect against unrefing the Cogl context twiceNeil Roberts2011-04-201-1/+5
| | | | | | The dispose function may be called multiple times during destruction so it needs to be resilient against destroying any resources twice. This wasn't the case for the reference to the Cogl context.
* cogl-winsys: Move _cogl_winsys_has_feature to cogl-winsys.cNeil Roberts2011-04-202-9/+9
| | | | | | The code for _cogl_winsys_has_feature will be identical in all of the winsys backends for the time being, so it seems to make sense to have it in the common cogl-winsys.c file.
* cogl-context: Store winsys features in an array of unsigned intsNeil Roberts2011-04-209-45/+126
| | | | | | | | | | | | | Previously the mask of available winsys features was stored in a CoglBitmask. That isn't the ideal type to use for this because it is intended for a growable array of bits so it can allocate extra memory if there are more than 31 flags set. For the winsys feature flags the highest used bit is known at compile time so it makes sense to allocate a fixed array instead. This is conceptually similar to the CoglDebugFlags which are stored in an array of integers with macros to test a bit in the array. This moves the macros used for CoglDebugFlags to cogl-flags.h and makes them more generic so they can be shared with CoglContext.
* cogl-renderer: Move the XEvent filters to be generic for all renderersNeil Roberts2011-04-2012-245/+190
| | | | | | | | | | | | | | | | | Instead of having cogl_renderer_xlib_add_filter and friends there is now cogl_renderer_add_native_filter which can be used regardless of the backend. The callback function for the filter now just takes a void pointer instead of an XEvent pointer which should be interpreted differently depending on the backend. For example, on Xlib it would still be an XEvent but on Windows it could be a MSG. This simplifies the code somewhat because the _cogl_xlib_add_filter no longer needs to have its own filter list when a stub renderer is used because there is always a renderer available. cogl_renderer_xlib_handle_event has also been renamed to cogl_renderer_handle_native_event. This just forwards the event on to all of the listeners. The backend renderer is expected to register its own event filter if it wants to process the events in some way.
* evdev: Remove unused variableEmmanuele Bassi2011-04-181-1/+0
|
* cogl/glx: Silence a compiler warningEmmanuele Bassi2011-04-181-1/+1
|
* animation: Use ::destroy with animate()Emmanuele Bassi2011-04-161-13/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ClutterAnimation uses the weak ref machinery of GObject when associated to ClutterActor by clutter_actor_animate() and friends - all the while taking a reference on the actor itself. In order to trigger the weak ref callback, external code would need to unref the Actor at least twice, which has slim chance of happening. Plus, the way to destroy an Actor is to call destroy(), not call unref(). The destruction sequence of ClutterActor emits the ::destroy signal, which should be used by classes to release external references the might be holding. My oh my, this sounds *exactly* the case! So, let's switch to using the ::destroy signal for clutter_actor_animate() and friends, since we know that the object bound to the Animation is an Actor, and has a ::destroy signal. This change has the added benefit of allowing destroying an actor as the result of the Animation::completed signal without getting a segfault or other bad things to happen. Obviously, the change does not affect other GObject classes, or Animation instances created using clutter_animation_new(); for those, the current "let's take a reference on the object to avoid it going away in-flight" mechanism should still suffice. Side note: it would be interesting if GObject had an interface for "destructible" objects, so that we could do a safe type check. I guess it's a Rainy Day Project(tm)...
* actor: Use _clutter_actor_meta_get_debug_name()Emmanuele Bassi2011-04-151-2/+2
| | | | | The ActorMeta name can be more informative than just the GType class name.
* actor-meta: Add a get_debug_name() private methodEmmanuele Bassi2011-04-152-0/+19
| | | | Similar to ClutterActor's own get_debug_name().
* Updated Spanish translationDaniel Mustieles2011-04-141-35/+25
|
* Use the actor's debug name consistentlyEmmanuele Bassi2011-04-142-18/+22
| | | | | | Do not use the generic GType class name: we have a :name property on ClutterActor that is generally used for debugging purposes — so we should use it when creating debugging spew in a consistent way.
* glx: Chain up in ::unrealize()Emmanuele Bassi2011-04-141-0/+3
| | | | | And avoid a segmentation fault on stage destruction if the main loop keeps running.
* x11: Provide a StageWindow::unrealize implementationEmmanuele Bassi2011-04-141-0/+17
| | | | | | | | | | | | | | | | | | The Cogl rework removed the Window creation from realize and its relative destruction from unrealize; the two vfuncs also managed the mapping between Window and Stage implementation that we use when dealing with event handling. Sadly, the missing unrealization left entries in the mapping dangling. Since ClutterStageX11 already provides a ::realize implementation that sub-classes are supposed to chain up to, and the Window ↔ Stage mapping is private to clutter-stage-x11.c, it seems only fair that the ClutterStageX11 should also provide an ::unrealize implementation matching the ::realize. This implementation just removes the StageX11 pointer from the X11 Window ↔ ClutterStageX11 mapping we set up in ::realize, since the X11 Window is managed by Cogl, now.
* GL_IMG_TEXTURE_NPOT extension enables TEXTURE_NPOT features on GLESJames Athey2011-04-131-1/+1
| | | | | | Older drivers for PowerVR SGX hardware have the vendor-specific GL_IMG_TEXTURE_NPOT extension instead of the functionally-equivalent GL_OES_TEXTURE_NPOT extension.
* determine evdev device type using g_udev_device_has_propertyJames Athey2011-04-121-19/+14
| | | | http://bugzilla.clutter-project.org/show_bug.cgi?id=2631
* uniquely name and enable evdev ClutterInputDevice objects on creationJames Athey2011-04-121-2/+4
| | | | http://bugzilla.clutter-project.org/show_bug.cgi?id=2631
* Silence another compiler warningEmmanuele Bassi2011-04-121-1/+5
|
* Silence the compiler by removing unused variablesEmmanuele Bassi2011-04-121-8/+1
|
* glx: Protect GLX SwapEvent symbolsEmmanuele Bassi2011-04-121-3/+11
| | | | | | We need to guard the usage of symbols related to the GLX_INTEL_swap_event extension, to avoid breaking on platforms and/or versions of Mesa that do not expose that extension.
* Updated Slovenian translationMatej Urbančič2011-04-121-196/+199
|
* Updated Slovenian translationMatej Urbančič2011-04-121-146/+107
|