Tomas Frydrych
7bef175590
MUTTER_PLUGIN_DIR variable/define
...
Define for use in plugin manager
Makefile variable for plugin pc file and plugin installation.
2008-10-29 10:28:48 +00:00
Tomas Frydrych
a4a102726e
Removed tridy-grid and scratch plugin
2008-10-29 09:01:50 +00:00
Matthew Allum
a42ea69d0e
Tweak workspace switcher to display all windows
2008-10-28 23:04:51 +00:00
Tomas Frydrych
8f594c93cd
Added StructureNotifyMask for override redirect windows.
...
We need to be getting ConfigureNotify events for these, so we can respond
to changes in position of these windows. We cannot add this to windows
Metacity manages, as this makes it got mental.
2008-10-28 13:02:33 +00:00
Tomas Frydrych
8f8a193c7e
Revert "Add StructureNotifyMask windows the compositor is interested in."
...
This reverts commit f76f4dc898c435d9a15bc96a9aad89526f69fcb2.
2008-10-28 12:27:30 +00:00
Matthew Allum
c283fbe9b3
Merge branch 'clutter' of ssh://gitserver@git.o-hand.com/metacity-clutter into clutter
2008-10-28 11:34:05 +00:00
Matthew Allum
53d89a7fd5
Tweak/fix/improve workspace switching effect
2008-10-28 11:30:29 +00:00
Tomas Frydrych
68c2f75558
Changes necessary to build plugins out of tree:
...
metacity-plugins.pc.in
installation necessary header files
fixed misplaced inclusion of config.h
2008-10-28 10:45:45 +00:00
Tomas Frydrych
2a3445c865
Add StructureNotifyMask windows the compositor is interested in.
2008-10-27 17:17:09 +00:00
Tomas Frydrych
b1c5a2e221
Added mutter_get_plugin() to mutter-plugin.h
...
So we can completely hide the struct name from plugins.
2008-10-27 10:34:32 +00:00
Tomas Frydrych
1d6e70a49d
Fixed stale comment.
2008-10-27 09:38:21 +00:00
Tomas Frydrych
310970a91b
De-C99fied default and scratch plugins.
2008-10-27 09:33:58 +00:00
Tomas Frydrych
07c1003905
Live previews for hidden windows.
...
ClutterActors for hidden windows (such windows on different than active
workspaces and windows that are minimized) are available, and reflect the
actual state of the window. This is intended for use in task-switchers etc.
This feature is disabled by default (due to increased demand on resources),
and can be enabled through the metacity/general/live_hidden_windows gconf key.
A trivial sample window switcher is included in the scratch plugin (activated
by clicking on the slide out panel).
2008-10-24 10:07:24 +01:00
Matthew Allum
273d213509
Integrate in Ebassi's workspace switching code from ui-hackfest branch.
2008-10-23 15:36:33 +01:00
Matthew Allum
4d441a6f7b
Make the overlay message a little less in your face..
2008-10-23 12:53:01 +01:00
Tomas Frydrych
3cc7b2c74d
Fixed how windows are added to avoid duplication.
2008-10-22 17:12:15 +01:00
Tomas Frydrych
275cccb136
Fixed process_reparent()
2008-10-22 14:40:06 +01:00
Iain Holmes
be11a6bf72
Allow framed ARGB windows to have a shadow
...
When creating the drop shadow source, just have a translucent centre
2008-10-21 16:51:18 +01:00
Tomas Frydrych
0684ef95c5
Fixed up stage reactivity bug.
2008-10-21 08:58:44 +01:00
Tomas Frydrych
775cb1f4a4
Removed plugin .features member (no longer required); reanambled all effects in scratch plugin by popular demand.
2008-10-20 13:04:46 +01:00
Tomas Frydrych
8a0ffa93eb
Merge branch 'clutter' of ssh://gitserver@git.o-hand.com/metacity-clutter into clutter
2008-10-20 08:54:03 +01:00
Tomas Frydrych
7ddb3a4663
Disabled event effects; disable_stage() convenience function.
2008-10-20 08:52:38 +01:00
Robert Bragg
9a66ce6b01
Removes unused files: compositor-clutter-plugin-manager.c and compositor-clutter-plugin.h
2008-10-17 17:12:57 +01:00
Robert Bragg
08c3c187eb
Removes the running counter from the plugins and instead manage it internally
...
to the plugin manager
2008-10-17 17:10:15 +01:00
Tomas Frydrych
b422faa4fe
Fixed build when building without --with-clutter
2008-10-17 12:45:45 +01:00
Tomas Frydrych
a8dd848ca4
Connect to captured-event signal on stage for generic panel processing
...
This is to allow the panel to handle events the normal way without interference
2008-10-17 11:02:04 +01:00
Tomas Frydrych
143cb3d60b
white space tweaks
2008-10-17 07:25:18 +01:00
Tomas Frydrych
92610f53c3
renamed DefaultPluginState to PluginState
2008-10-17 07:23:34 +01:00
Tomas Frydrych
30ece059cf
whitespace cleanup; use g_slice in scratch plugin.
2008-10-16 23:29:24 +01:00
Tomas Frydrych
1e59d63e31
adjusted panel color and opacity
2008-10-16 23:08:12 +01:00
Tomas Frydrych
7380163eaf
Renamed moblin.c to avoid confusion
2008-10-16 23:04:32 +01:00
Tomas Frydrych
dc33ad1adf
Merge branch 'moblin-plugin' into clutter
...
Conflicts:
src/compositor/clutter/compositor-clutter-plugin-manager.c
src/compositor/mutter/plugins/Makefile.am
src/compositor/mutter/plugins/moblin.c
src/include/compositor-clutter-plugin.h
src/include/compositor-clutter.h
2008-10-16 23:02:34 +01:00
Tomas Frydrych
b5414c27a3
sliding panel
2008-10-16 15:50:03 +01:00
Robert Bragg
2f790b0165
This changes the meta_compositor_clutter namespacing to simply "mutter" which
...
helps makes code much more readable.
2008-10-16 12:50:01 +01:00
Tomas Frydrych
d185a84140
Api to set specific input region on stage from plugins.
2008-10-16 12:16:08 +01:00
Tomas Frydrych
749698eb54
connect xevent handler
2008-10-16 10:42:03 +01:00
Tomas Frydrych
6323467879
Fixed input mask on overlay window to get pointer and key events.
2008-10-16 10:41:34 +01:00
Tomas Frydrych
d94a34a2c1
disabled workspace switch effect
2008-10-16 08:27:46 +01:00
Tomas Frydrych
9005e4a68f
set panel width to match screen
2008-10-16 08:26:37 +01:00
Tomas Frydrych
9e4f5a26dd
hook moblin plugin into stage reactivity API
2008-10-16 08:05:50 +01:00
Tomas Frydrych
ae906b318a
API for enabling/disabling input to stage window.
2008-10-16 07:50:49 +01:00
Tomas Frydrych
8d373e009d
Process motion events on stage to handle panle closing.
2008-10-16 00:06:20 +01:00
Tomas Frydrych
f0364b2eed
Panel sliding
2008-10-15 18:14:52 +01:00
Tomas Frydrych
5af56eebd1
panel slide timeout
2008-10-15 17:57:41 +01:00
Tomas Frydrych
5f3e27bbd7
Mockup panel, xevent skeleton.
2008-10-15 17:50:06 +01:00
Tomas Frydrych
f6c958ff26
Added moblin plugin to build system.
2008-10-15 17:26:24 +01:00
Robert Bragg
c4fe54d004
Passes through the plugin manager and default plugin trying to rename
...
terse variable names, simplify the plugin interface or consider tweaks
for maintainability.
* Renames plg -> plugin
* Renames mgr ->plugin_mgr (since in a combined window and composite
manager I think "mgr" will end up being ambiguous in places)
* Renames PluginWorkspaceRectangle -> MetaRectangle (We are no longer
concerned about mbwm2 portability)
* Renames a few one letter variable names e.g. a -> window, r ->rect
* Renames some vars to indicate what they represent not their data type,
e.g. group1, group2 ->workspace0, workspace1
* Renames the variable mcw -> mc_window to make it more immediately
obvious what it represents.
* Removes the verbose META_COMPOSITOR_CLUTTER_PLUGIN_SWITCH_WORKSPACE macro,
and just uses metacity_plugin instead.
* Instead of hanging data of the plugins global descriptor, we just use a
standalone static global variable.
* Make do_init a function pointer inside the plugin descriptors instead of
special casing it and using another g_module_symbol call. This also removes
the need for the META_COMPOSITOR_CLUTTER_PLUGIN_INIT_FUNC macro.
* A bunch of anal 80char fixes
* Removes the screen_width,height variables from the plugin descriptor struct
and add a plugin API instead.
2008-10-13 12:23:47 +01:00
Emmanuele Bassi
74b34fe239
[default] Use the slice allocator
...
The actor's private data created by the compositor is allocated
using g_new(), but since we are allocating a lot of small structures
all the time it's better to use the slice allocator instead.
Also, use a GQuark instead of using a string, so that the quark
lookup is done only once and the rest of the time is just an
integer comparison.
2008-10-10 17:11:13 +01:00
Tomas Frydrych
7124a7acc1
Removed unused compositer-clutter-plugin.c file.
2008-10-10 11:38:58 +01:00
Tomas Frydrych
2fffd6fe9f
Removed no longer needed completed() pointer from plugin struct.
2008-10-10 11:38:00 +01:00
Tomas Frydrych
6b1719de1c
Added direction parameter to plugin switch_workspace()
...
To facilitate nicer effects; extended direction defined in workspace.h so we
can represent up-left, etc.
2008-10-09 17:57:12 +01:00
Tomas Frydrych
0225449e12
Fallback to default plugin if no plugins are specified via gconf.
2008-10-09 15:33:06 +01:00
Tomas Frydrych
1a8e5872d1
Accessors for plugins to obtain stage and overlay_group actors.
2008-10-09 13:22:32 +01:00
Tomas Frydrych
0e6fba083f
Removed unnecessary ActorPrivate::workspace member.
2008-10-08 16:10:15 +01:00
Tomas Frydrych
1178800abb
Added convenience get_plugin () accessor.
2008-10-08 16:05:09 +01:00
Tomas Frydrych
f061a6d793
Added convenience function meta_comp_clutter_plugin_effect_completed()
2008-10-08 16:01:04 +01:00
Tomas Frydrych
976635a22b
Merge branch 'clutter' of ssh://gitserver@git.o-hand.com/metacity-clutter into clutter
2008-10-08 14:53:37 +01:00
Robert Bragg
69c0da91e5
Creates a src/compositor/clutter directory to help de-clutter things
2008-10-08 14:17:54 +01:00
Tomas Frydrych
306a7497fc
Fixed up for new plugin API; changed private key not to colide with default plugin.
2008-10-08 12:33:24 +01:00
Tomas Frydrych
0a7fc94799
Revert "Build metacity as library so that plugins can link against it."
...
This reverts commit 57c2e6d716485205a9178afe01dbc43641b5c2aa.
2008-10-08 12:19:08 +01:00
Tomas Frydrych
cca5e69c64
Removed debug printfs.
2008-10-08 10:16:53 +01:00
Tomas Frydrych
bbdd7d9b15
Build metacity as library so that plugins can link against it.
...
Renamed original main() to meta_main(); added wrapper main() into metacity.c.
2008-10-08 10:11:57 +01:00
Tomas Frydrych
60695fd89a
Refactored plugin API to use MetaCompWindow.
2008-10-07 16:29:03 +01:00
Tomas Frydrych
c5d59254af
Moved compositor-clutter.h to src/include so it can be used from plugins.
2008-10-07 15:08:36 +01:00
Tomas Frydrych
2bcd7c839b
Renamed simple plugin to 'default'
2008-10-07 14:58:34 +01:00
Tomas Frydrych
cc50d99712
Public API around MetaCompWindow actor
...
Added accessors for xwindow, window type and workspace number.
2008-10-07 14:52:21 +01:00
Tomas Frydrych
93c316f3b8
Fixed warning
...
Removed static declartion of tidy_texture_frame_new and added appropriate #include.
2008-10-07 09:07:51 +01:00
Tomas Frydrych
7983c29f67
Plugin manager API cleanup
...
Renamed meta_compositor_clutter_plugin_manager_event_0 to
meta_compositor_clutter_plugin_manager_event_simple and
meta_compositor_clutter_plugin_manager_event_4i to
meta_compositor_clutter_plugin_manager_event_maximize for improved clarity.
2008-10-07 09:01:58 +01:00
Robert Bragg
22f386b35b
Removes old static prototype for tidy_texture_frame_new from compositor-clutter.c
2008-10-06 15:52:01 +01:00
Robert Bragg
d6e4fc41c2
Splits tidy-texture-frame out from compositor-clutter.c
2008-10-06 15:07:39 +01:00
Neil Roberts
735877d89a
Don't try to use multisampling for textures that are sliced.
2008-09-30 16:54:12 +01:00
Neil Roberts
ee60128334
Support for GL ES in the Clutter compositor.
...
Check for whether clutter/glx/clutter-glx-texture-pixmap.h is
available in the configure script and if not use
ClutterX11TexturePixmap directly.
glGetTexLevelParameter isn't available on GL ES so instead it checks
whether NPOTs textures are available and assumes the next power of two
size if not.
2008-09-30 15:33:18 +01:00
Matthew Allum
3bbd5e32f2
Fix configure events generating too many updates
...
Split stage into window and overlay groups
Add an event hook to plugins
2008-10-02 12:16:15 +01:00
Neil Roberts
43e3fbc518
Set the input mask on the composited windows to include
...
ShapeNotifyMask. Remove the call to resize_win in process_shape
because it is redundant.
2008-09-25 13:30:34 +01:00
Tomas Frydrych
c58ade6600
When testing for shadow, test for window shape before override redirect.
2008-09-25 09:30:13 +01:00
Tomas Frydrych
33ae559eca
Stripped trailing space.
2008-09-25 09:29:57 +01:00
Neil Roberts
4f1fd37231
Handle ShapeNotify events in the clutter compositor and update the
...
clip rectangles on the MetaShapedTexture.
2008-09-24 22:53:39 +01:00
Neil Roberts
6654cb65d7
Made MetaShapedTexure take XRectangles instead of ClutterGeometries to
...
represent the rectangles.
2008-09-24 22:52:56 +01:00
Neil Roberts
19d338cb50
Make MetaShapedTexture a subclass of ClutterGLXTexturePixmap and use
...
it for window actors.
2008-09-24 21:48:02 +01:00
Neil Roberts
0bbe8b8004
Add a cast in shaped-texture.c to prevent warnings about comparing
...
signed and unsigned integers.
2008-09-24 21:40:10 +01:00
Neil Roberts
99d3cc1b2b
Add an actor for drawing textures clipped to a list rectangles
2008-09-24 21:36:38 +01:00
Tomas Frydrych
d6f340eb96
Fixed install-exec-hook for plugins to work correctly when $DESTDIR is set.
2008-09-24 09:46:52 +01:00
Tomas Frydrych
9b3a0d1ad8
Basic plugin infastructure and a sample simple plugin.
2008-09-18 16:09:11 +01:00
Tomas Frydrych
b7bdc5ec69
Fall back on XRender if initializing clutter fails.
2008-09-17 16:39:32 +01:00
Tomas Frydrych
6946d6a4a3
Moved shadow source actor form screen to the compositor (only one needed).
2008-08-20 13:18:43 +01:00
Tomas Frydrych
2bcb7d73be
Handle resize on root window.
2008-08-20 13:01:40 +01:00
Tomas Frydrych
655bfaec80
GType wrapper for XWindowAttributes, MetaCompWindow::x-window-attributes prop
...
So we do not have to query window attributes in the MetaCompWindow constructor
but can pass them as a property (so we can gracefully handle the case where no
attributes can be retrieved).
2008-08-20 11:48:00 +01:00
Tomas Frydrych
a3f56bb289
Added --with-clutter option; initialize Clutter from meta_ui_init().
...
Fixed up the build files so we do not build xrender compositor when building
clutter backend; moved clutter initialization to meta_ui_init() so commandline
arguments can be passed into clutter_init().
2008-08-20 10:31:10 +01:00
Tomas Frydrych
b48f9ca907
Code cleanup and pretification.
2008-08-20 09:33:39 +01:00
Tomas Frydrych
8589eab403
Cleaned up MetaCompWindow disposal.
2008-08-20 08:26:52 +01:00
Tomas Frydrych
1ee1842638
Made MetaCompWindow into ClutterGroup sub-class.
2008-08-19 17:02:00 +01:00
Tomas Frydrych
70afce0325
Cast shadows to SE.
2008-08-19 14:33:20 +01:00
Tomas Frydrych
1f29679c0d
Basic CM minimize effect
...
Added minimize hook to the compositor, hooked up into MetaWindow, implemented
in the clutter compositor.
2008-08-19 11:47:30 +01:00
Tomas Frydrych
99b547bc1d
Fixed handling of opacity and argb32 windows.
...
Parsing of _NET_WM_WINDOW_OPACITY; no shadows for argb32 and translucent
windows.
2008-08-19 10:57:15 +01:00
Tomas Frydrych
030afac8ab
Cleaned up repar_win
...
Uncommented path for TFP; fixed leak of parts regions; removed unnecessary
'damaged' flag.
2008-08-19 10:15:16 +01:00
Tomas Frydrych
121a65e4f4
Fixed destroy effect
...
Stopped processing of unmap and damage messages when a destroy message is
already in the queue.
2008-08-19 09:20:04 +01:00
Tomas Frydrych
a8bcfb9a0c
Removed process_expose
...
No Expose event processing is necessary, since clutter stage paints
automatically when changes are made to the scenegraph (so we only need to
update our window textures as damaged; everything else just works).
2008-08-18 17:08:01 +01:00
Tomas Frydrych
9f9df52ba6
Reduced MAX_TILE_SIZE to 8px so that shaddows work even with small windows
...
(e.g., tootips).
2008-08-18 16:23:50 +01:00
Tomas Frydrych
676a516ff2
Add shaddows to override-redirect windows, e.g. Gtk menus (Gtk should really
...
be fixed not to use override redirect for menus as the maemo fork does).
2008-08-18 16:16:38 +01:00
Tomas Frydrych
4134949d72
get_window_type:
...
Streamlined to use the MetaWindow type where that is available; for unmanaged
windows, query window props as before.
2008-08-18 15:44:26 +01:00