Robert Bragg
7ea4380725
Adds a compositor_private member to MetaWindow
...
Since we often need to find a MutterWindow corresponding to a MetaWindow
this make it a simple de-reference of a compositor private pointer.
2008-10-31 09:10:10 +00:00
Robert Bragg
6d8baea4c2
[stacking] Simplifies the way compositor code has to handle stacking
...
The compositor now gets handed a GList of MetaWindows when the stacking
gets syncd with the X server.
2008-10-30 22:09:48 +00:00
Owen W. Taylor
20ce1e77d9
Don't show_all() the stage and overlay group at initialization.
...
Calling clutter_actor_show_all() on the stage and overlay_group breaks
the ability for plugins to create initially hidden actors. Call
clutter_actor_show() instead.
2008-10-31 18:59:04 -04:00
Owen W. Taylor
15daecacdc
Allow absolute paths instead of plugin names
...
If a mutter plugin name (in GConf, or more likely on the command line)
looks like an absolute path, use that path directly rather than
looking for the plugin in the plugins directory.
2008-10-31 02:13:53 -04:00
Owen W. Taylor
6683b5efff
Clean up messages when loading plugins
...
Remove a "got here" leftover, remove unnecessary trailing \n when
calling g_message(), include g_module_error() in the output when
loading a module fails.
2008-10-29 14:40:51 -04:00
Owen W. Taylor
783e51281a
Fix installation with --disable-static
...
If --disable-static is passed to configure, then .a files won't be built
or installed. Make removing them in install-exec-hook not fatal if they
don't exist.
2008-10-29 11:58:43 -04:00
Tomas Frydrych
f80e39e2ca
mutter_plugin_get_screen()
2008-11-03 10:07:12 +00:00
Tomas Frydrych
685bbb2e64
Fixed format
2008-11-03 09:59:01 +00:00
Matthew Allum
e85f67f564
Fix minor warning
2008-10-31 23:37:46 +00:00
Matthew Allum
eeb762e1e2
Remove overlay debug message.
2008-10-31 23:12:40 +00:00
Matthew Allum
3991e82539
Set TFP texture filter-quality to high (as to enable mipmaps)
2008-10-31 16:28:33 +00:00
Tomas Frydrych
312cbf3e04
Added G_MODULE_BIND_LOCAL for plugin load.
...
See http://bugzilla.openedhand.com/show_bug.cgi?id=1216 .
2008-10-31 08:08:08 +00:00
Tomas Frydrych
ce2bfc008d
mutter_window_get_description()
...
Human redable description useful for debugging, now accessible to plugins and
and also for override redirect windows.
2008-10-30 08:30:42 +00:00
Tomas Frydrych
b2fe0097e6
mutter_plugin_get_xdisplay()
2008-10-29 13:27:35 +00:00
Tomas Frydrych
e4501f801e
mutter_plugin_set_stage_input_region()
2008-10-29 13:03:03 +00:00
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