summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Spilsbury <sam.spilsbury@canonical.com>2010-12-07 00:40:33 +0800
committerSam Spilsbury <sam.spilsbury@canonical.com>2010-12-07 00:40:33 +0800
commit096e343ae70adc96ffe4351182cbcf89aa181579 (patch)
tree97f706cf3c78c3e8df44964fc2b127e13160056c
parent098fdc593bb2e6c618db86a0e236870c5e944338 (diff)
downloadunity-window-decorator-096e343ae70adc96ffe4351182cbcf89aa181579.tar.gz
unity-window-decorator-096e343ae70adc96ffe4351182cbcf89aa181579.tar.bz2
Add standalone building gtk-window-decorator
-rw-r--r--CMakeLists.txt113
-rw-r--r--COPYING.LGPL510
-rw-r--r--COPYING.MIT21
-rw-r--r--ChangeLog1795
-rw-r--r--Doxyfile1514
-rw-r--r--INSTALL4
-rw-r--r--NEWS477
-rw-r--r--RELEASING75
-rw-r--r--TODO22
-rw-r--r--cmake/CMakeLists.txt31
-rw-r--r--cmake/CompizBcop.cmake41
-rw-r--r--cmake/CompizCommon.cmake277
-rw-r--r--cmake/CompizDefaults.cmake15
-rw-r--r--cmake/CompizDefaults.cmake.in5
-rw-r--r--cmake/CompizGconf.cmake52
-rw-r--r--cmake/CompizPackage.cmake101
-rw-r--r--cmake/CompizPlugin.cmake438
-rw-r--r--cmake/FindCompiz.cmake90
-rw-r--r--cmake/all_plugins_in_folder_example-CMakeLists.txt10
-rw-r--r--cmake/base.cmake63
-rw-r--r--cmake/plugin_extensions/CompizGenGconf.cmake79
-rw-r--r--cmake/plugin_extensions/CompizGenInstallData.cmake25
-rw-r--r--cmake/plugin_extensions/CompizGenInstallImages.cmake25
-rw-r--r--compiz.pc.in12
-rw-r--r--config.h.core.in5
-rw-r--r--gtk/CMakeLists.txt93
-rw-r--r--gtk/config.h.gtk.in25
-rw-r--r--gtk/gnome/50-compiz-desktop-key.xml.in16
-rw-r--r--gtk/gnome/50-compiz-key.xml.in36
-rw-r--r--gtk/gnome/CMakeLists.txt84
-rw-r--r--gtk/gnome/compiz-window-manager.c505
-rw-r--r--gtk/gnome/compiz-window-manager.h39
-rw-r--r--gtk/gnome/compiz-wm.desktop.in17
-rw-r--r--gtk/gnome/compiz.desktop.in15
-rw-r--r--gtk/window-decorator/CMakeLists.txt80
-rw-r--r--gtk/window-decorator/TODO6
-rw-r--r--gtk/window-decorator/actionmenu.c109
-rw-r--r--gtk/window-decorator/blurprops.c68
-rw-r--r--gtk/window-decorator/cairo.c876
-rw-r--r--gtk/window-decorator/decorator.c872
-rw-r--r--gtk/window-decorator/decorprops.c134
-rw-r--r--gtk/window-decorator/events.c1133
-rw-r--r--gtk/window-decorator/forcequit.c176
-rw-r--r--gtk/window-decorator/gdk.c87
-rw-r--r--gtk/window-decorator/gtk-window-decorator.c407
-rw-r--r--gtk/window-decorator/gtk-window-decorator.h949
-rw-r--r--gtk/window-decorator/gwd.schemas.in81
-rw-r--r--gtk/window-decorator/metacity.c1591
-rw-r--r--gtk/window-decorator/settings.c560
-rw-r--r--gtk/window-decorator/style.c42
-rw-r--r--gtk/window-decorator/switcher.c427
-rw-r--r--gtk/window-decorator/tooltip.c184
-rw-r--r--gtk/window-decorator/util.c278
-rw-r--r--gtk/window-decorator/wnck.c601
-rw-r--r--images/CMakeLists.txt10
-rw-r--r--images/freedesktop.pngbin30453 -> 0 bytes
-rw-r--r--images/icon.pngbin529 -> 0 bytes
-rw-r--r--include/CMakeLists.txt11
-rw-r--r--include/compiz-common.h.in9
-rw-r--r--include/compiz.h91
-rw-r--r--include/core/CMakeLists.txt30
-rw-r--r--include/core/action.h178
-rw-r--r--include/core/atoms.h162
-rw-r--r--include/core/core.h85
-rw-r--r--include/core/countedlist.h114
-rw-r--r--include/core/icon.h53
-rw-r--r--include/core/match.h95
-rw-r--r--include/core/modifierhandler.h114
-rw-r--r--include/core/option.h242
-rw-r--r--include/core/output.h70
-rw-r--r--include/core/plugin.h332
-rw-r--r--include/core/pluginclasses.h70
-rw-r--r--include/core/pluginclasshandler.h167
-rw-r--r--include/core/point.h110
-rw-r--r--include/core/propertywriter.h54
-rw-r--r--include/core/rect.h227
-rw-r--r--include/core/region.h191
-rw-r--r--include/core/screen.h473
-rw-r--r--include/core/serialization.h158
-rw-r--r--include/core/session.h53
-rw-r--r--include/core/size.h69
-rw-r--r--include/core/timer.h108
-rw-r--r--include/core/window.h559
-rw-r--r--include/core/wrapsystem.h184
-rw-r--r--include/decoration.h428
-rw-r--r--kde/CMakeLists.txt1
-rw-r--r--kde/window-decorator-kde4/CMakeLists.txt76
-rw-r--r--kde/window-decorator-kde4/Makefile.am49
-rw-r--r--kde/window-decorator-kde4/decorator.cpp890
-rw-r--r--kde/window-decorator-kde4/decorator.h168
-rw-r--r--kde/window-decorator-kde4/kdecoration_plugins.cpp212
-rw-r--r--kde/window-decorator-kde4/kdecoration_plugins.h90
-rw-r--r--kde/window-decorator-kde4/main.cpp132
-rw-r--r--kde/window-decorator-kde4/options.cpp186
-rw-r--r--kde/window-decorator-kde4/options.h140
-rw-r--r--kde/window-decorator-kde4/org.kde.KWin.xml10
-rw-r--r--kde/window-decorator-kde4/paintredirector.cpp124
-rw-r--r--kde/window-decorator-kde4/paintredirector.h60
-rw-r--r--kde/window-decorator-kde4/switcher.cpp324
-rw-r--r--kde/window-decorator-kde4/switcher.h86
-rw-r--r--kde/window-decorator-kde4/utils.cpp249
-rw-r--r--kde/window-decorator-kde4/utils.h75
-rw-r--r--kde/window-decorator-kde4/window.cpp1939
-rw-r--r--kde/window-decorator-kde4/window.h276
-rw-r--r--legacy/compiz-cube.h230
-rw-r--r--legacy/compiz-cube.pc.in13
-rw-r--r--legacy/fs.xml.in13
-rw-r--r--legacy/fuse.cpp1442
-rw-r--r--legacy/gconf.cpp848
-rw-r--r--legacy/gconf.xml.in18
-rw-r--r--legacy/metadata.cpp1160
-rw-r--r--legacy/metadata.h106
-rw-r--r--legacy/minimize.cpp1059
-rw-r--r--legacy/minimize.xml.in43
-rw-r--r--legacy/privatemetadata.h40
-rw-r--r--legacy/video.cpp1329
-rw-r--r--legacy/video.xml.in14
-rw-r--r--libdecoration/CMakeLists.txt59
-rw-r--r--libdecoration/config.h.libdecoration.in4
-rw-r--r--libdecoration/decoration.c2953
-rw-r--r--libdecoration/libdecoration.pc.in12
-rw-r--r--metadata/CMakeLists.txt52
-rw-r--r--metadata/core.xml.in268
-rw-r--r--plugins/CMakeLists.txt10
-rw-r--r--plugins/annotate/CMakeLists.txt5
-rw-r--r--plugins/annotate/annotate.xml.in92
-rw-r--r--plugins/annotate/src/annotate.cpp980
-rw-r--r--plugins/annotate/src/annotate.h213
-rw-r--r--plugins/blur/CMakeLists.txt16
-rw-r--r--plugins/blur/blur.xml.in112
-rw-r--r--plugins/blur/src/blur.cpp2333
-rw-r--r--plugins/blur/src/blur.h241
-rw-r--r--plugins/clone/CMakeLists.txt5
-rw-r--r--plugins/clone/clone.xml.in22
-rw-r--r--plugins/clone/src/clone.cpp595
-rw-r--r--plugins/clone/src/clone.h147
-rw-r--r--plugins/commands/CMakeLists.txt5
-rw-r--r--plugins/commands/commands.xml.in385
-rw-r--r--plugins/commands/src/commands.cpp132
-rw-r--r--plugins/commands/src/commands.h50
-rw-r--r--plugins/compiztoolbox/CMakeLists.txt5
-rw-r--r--plugins/compiztoolbox/compiz-compiztoolbox.pc.in12
-rw-r--r--plugins/compiztoolbox/compiztoolbox.xml.in13
-rw-r--r--plugins/compiztoolbox/include/compiztoolbox/compiztoolbox.h168
-rw-r--r--plugins/compiztoolbox/src/compiztoolbox.cpp741
-rw-r--r--plugins/composite/CMakeLists.txt5
-rw-r--r--plugins/composite/compiz-composite.pc.in12
-rw-r--r--plugins/composite/composite.xml.in35
-rw-r--r--plugins/composite/include/composite/composite.h408
-rw-r--r--plugins/composite/src/composite.cpp103
-rw-r--r--plugins/composite/src/privates.h156
-rw-r--r--plugins/composite/src/screen.cpp997
-rw-r--r--plugins/composite/src/window.cpp630
-rw-r--r--plugins/copytex/CMakeLists.txt5
-rw-r--r--plugins/copytex/copytex.xml.in12
-rw-r--r--plugins/copytex/src/copytex.cpp341
-rw-r--r--plugins/copytex/src/copytex.h114
-rw-r--r--plugins/cube/CMakeLists.txt5
-rw-r--r--plugins/cube/compiz-cube.pc.in12
-rw-r--r--plugins/cube/cube.xml.in167
-rw-r--r--plugins/cube/include/cube/cube.h181
-rw-r--r--plugins/cube/src/cube.cpp1770
-rw-r--r--plugins/cube/src/privates.h183
-rw-r--r--plugins/dbus/CMakeLists.txt37
-rw-r--r--plugins/dbus/dbus.xml.in14
-rw-r--r--plugins/dbus/src/dbus.cpp2046
-rw-r--r--plugins/dbus/src/dbus.h185
-rw-r--r--plugins/decor/CMakeLists.txt14
-rw-r--r--plugins/decor/decor.xml.in75
-rw-r--r--plugins/decor/src/decor.cpp1821
-rw-r--r--plugins/decor/src/decor.h240
-rw-r--r--plugins/fade/CMakeLists.txt5
-rw-r--r--plugins/fade/fade.xml.in85
-rw-r--r--plugins/fade/src/fade.cpp398
-rw-r--r--plugins/fade/src/fade.h102
-rw-r--r--plugins/glib/CMakeLists.txt5
-rw-r--r--plugins/glib/glib.xml.in14
-rw-r--r--plugins/glib/src/glib.cpp177
-rw-r--r--plugins/glib/src/private.h77
-rw-r--r--plugins/gnomecompat/CMakeLists.txt5
-rw-r--r--plugins/gnomecompat/gnomecompat.xml.in59
-rw-r--r--plugins/gnomecompat/src/gnomecompat.cpp131
-rw-r--r--plugins/gnomecompat/src/gnomecompat.h53
-rw-r--r--plugins/imgpng/CMakeLists.txt5
-rw-r--r--plugins/imgpng/imgpng.xml.in16
-rw-r--r--plugins/imgpng/src/imgpng.cpp358
-rw-r--r--plugins/imgpng/src/imgpng.h69
-rw-r--r--plugins/imgsvg/CMakeLists.txt5
-rw-r--r--plugins/imgsvg/imgsvg.xml.in24
-rw-r--r--plugins/imgsvg/src/imgsvg.cpp637
-rw-r--r--plugins/imgsvg/src/imgsvg.h136
-rw-r--r--plugins/ini/CMakeLists.txt5
-rw-r--r--plugins/ini/ini.xml.in13
-rw-r--r--plugins/ini/src/ini.cpp611
-rw-r--r--plugins/ini/src/ini.h106
-rw-r--r--plugins/inotify/CMakeLists.txt10
-rw-r--r--plugins/inotify/inotify.xml.in14
-rw-r--r--plugins/inotify/src/inotify.cpp169
-rw-r--r--plugins/inotify/src/inotify.h66
-rw-r--r--plugins/kde/CMakeLists.txt22
-rw-r--r--plugins/kde/kde.xml.in15
-rw-r--r--plugins/kde/src/dispatcher.cpp265
-rw-r--r--plugins/kde/src/dispatcher.h79
-rw-r--r--plugins/kde/src/kde.cpp68
-rw-r--r--plugins/kde/src/kde.h60
-rw-r--r--plugins/kde/src/socket.cpp67
-rw-r--r--plugins/kde/src/socket.h44
-rw-r--r--plugins/kde/src/timer.cpp69
-rw-r--r--plugins/kde/src/timer.h55
-rw-r--r--plugins/move/CMakeLists.txt5
-rw-r--r--plugins/move/move.xml.in48
-rw-r--r--plugins/move/src/move.cpp730
-rw-r--r--plugins/move/src/move.h129
-rw-r--r--plugins/obs/CMakeLists.txt5
-rw-r--r--plugins/obs/obs.xml.in161
-rw-r--r--plugins/obs/src/obs.cpp332
-rw-r--r--plugins/obs/src/obs.h102
-rw-r--r--plugins/opengl/CMakeLists.txt8
-rw-r--r--plugins/opengl/compiz-opengl.pc.in12
-rw-r--r--plugins/opengl/include/opengl/fragment.h124
-rw-r--r--plugins/opengl/include/opengl/matrix.h66
-rw-r--r--plugins/opengl/include/opengl/opengl.h590
-rw-r--r--plugins/opengl/include/opengl/texture.h220
-rw-r--r--plugins/opengl/include/opengl/vector.h127
-rw-r--r--plugins/opengl/opengl.xml.in48
-rw-r--r--plugins/opengl/src/fragment.cpp1145
-rw-r--r--plugins/opengl/src/matrix.cpp440
-rw-r--r--plugins/opengl/src/opengl.cpp101
-rw-r--r--plugins/opengl/src/paint.cpp1262
-rw-r--r--plugins/opengl/src/privatefragment.h54
-rw-r--r--plugins/opengl/src/privates.h172
-rw-r--r--plugins/opengl/src/privatetexture.h85
-rw-r--r--plugins/opengl/src/screen.cpp1218
-rw-r--r--plugins/opengl/src/texture.cpp615
-rw-r--r--plugins/opengl/src/vector.cpp276
-rw-r--r--plugins/opengl/src/window.cpp365
-rw-r--r--plugins/place/CMakeLists.txt5
-rw-r--r--plugins/place/place.xml.in168
-rw-r--r--plugins/place/src/place.cpp1710
-rw-r--r--plugins/place/src/place.h141
-rw-r--r--plugins/regex/CMakeLists.txt5
-rw-r--r--plugins/regex/regex.xml.in14
-rw-r--r--plugins/regex/src/regex.cpp328
-rw-r--r--plugins/regex/src/regexplugin.h79
-rw-r--r--plugins/resize/CMakeLists.txt5
-rw-r--r--plugins/resize/resize.xml.in193
-rw-r--r--plugins/resize/src/resize.cpp1598
-rw-r--r--plugins/resize/src/resize.h184
-rw-r--r--plugins/rotate/CMakeLists.txt5
-rw-r--r--plugins/rotate/rotate.xml.in278
-rw-r--r--plugins/rotate/src/rotate.cpp1080
-rw-r--r--plugins/rotate/src/rotate.h173
-rw-r--r--plugins/scale/CMakeLists.txt5
-rw-r--r--plugins/scale/compiz-scale.pc.in12
-rw-r--r--plugins/scale/include/scale/scale.h173
-rw-r--r--plugins/scale/scale.xml.in179
-rw-r--r--plugins/scale/src/privates.h187
-rw-r--r--plugins/scale/src/scale.cpp1782
-rw-r--r--plugins/screenshot/CMakeLists.txt5
-rw-r--r--plugins/screenshot/screenshot.xml.in35
-rw-r--r--plugins/screenshot/src/screenshot.cpp362
-rw-r--r--plugins/screenshot/src/screenshot.h83
-rw-r--r--plugins/switcher/CMakeLists.txt5
-rw-r--r--plugins/switcher/src/switcher.cpp1196
-rw-r--r--plugins/switcher/src/switcher.h177
-rw-r--r--plugins/switcher/switcher.xml.in166
-rw-r--r--plugins/water/CMakeLists.txt5
-rw-r--r--plugins/water/src/water.cpp1356
-rw-r--r--plugins/water/src/water.h179
-rw-r--r--plugins/water/water.xml.in64
-rw-r--r--plugins/wobbly/CMakeLists.txt5
-rw-r--r--plugins/wobbly/src/wobbly.cpp2380
-rw-r--r--plugins/wobbly/src/wobbly.h369
-rw-r--r--plugins/wobbly/wobbly.xml.in126
-rw-r--r--plugins/zoom/CMakeLists.txt5
-rw-r--r--plugins/zoom/src/zoom.cpp742
-rw-r--r--plugins/zoom/src/zoom.h112
-rw-r--r--plugins/zoom/zoom.xml.in66
-rw-r--r--po/CMakeLists.txt56
-rw-r--r--po/ChangeLog25
-rw-r--r--po/POTFILES.in28
-rw-r--r--po/af.po3123
-rw-r--r--po/ar.po3009
-rw-r--r--po/as.po2624
-rw-r--r--po/be.po2738
-rw-r--r--po/bg.po3776
-rw-r--r--po/bn.po3576
-rw-r--r--po/bn_IN.po3566
-rw-r--r--po/bs.po3251
-rw-r--r--po/ca.po4148
-rw-r--r--po/cs.po4706
-rw-r--r--po/cy.po3267
-rw-r--r--po/da.po4135
-rw-r--r--po/de.po4823
-rw-r--r--po/el.po3334
-rw-r--r--po/en_GB.po3713
-rw-r--r--po/en_US.po2766
-rw-r--r--po/es.po4751
-rw-r--r--po/et.po3726
-rw-r--r--po/eu.po3222
-rw-r--r--po/fa.po2634
-rw-r--r--po/fi.po4724
-rw-r--r--po/fr.po3378
-rw-r--r--po/gl.po3329
-rw-r--r--po/gu.po3345
-rw-r--r--po/he.po3550
-rw-r--r--po/hi.po3799
-rw-r--r--po/hr.po3652
-rw-r--r--po/hu.po3218
-rw-r--r--po/id.po3178
-rw-r--r--po/it.po3436
-rw-r--r--po/ja.po2974
-rw-r--r--po/ka.po2999
-rw-r--r--po/km.po3751
-rw-r--r--po/ko.po3177
-rw-r--r--po/lo.po2997
-rw-r--r--po/lt.po3754
-rw-r--r--po/mk.po3017
-rw-r--r--po/ml_IN.po3000
-rw-r--r--po/mr.po2780
-rw-r--r--po/nb.po3358
-rw-r--r--po/nl.po3457
-rw-r--r--po/or.po3439
-rw-r--r--po/pa.po3861
-rw-r--r--po/pl.po3753
-rw-r--r--po/pt.po3309
-rw-r--r--po/pt_BR.po3363
-rw-r--r--po/ro.po3628
-rw-r--r--po/ru.po3258
-rw-r--r--po/sk.po3295
-rw-r--r--po/sl.po3772
-rw-r--r--po/sr.po3965
-rw-r--r--po/sv.po3389
-rw-r--r--po/ta.po3068
-rw-r--r--po/tr.po3558
-rw-r--r--po/uk.po3501
-rw-r--r--po/vi.po3000
-rw-r--r--po/xh.po3115
-rw-r--r--po/zh_CN.po4367
-rw-r--r--po/zh_TW.po4366
-rw-r--r--po/zu.po3115
-rw-r--r--src/CMakeLists.txt224
-rw-r--r--src/action.cpp655
-rw-r--r--src/actions.cpp289
-rw-r--r--src/atoms.cpp324
-rw-r--r--src/event.cpp1766
-rw-r--r--src/icon.cpp46
-rw-r--r--src/main.cpp277
-rw-r--r--src/match.cpp744
-rw-r--r--src/modifierhandler.cpp204
-rw-r--r--src/option.cpp982
-rw-r--r--src/output.cpp90
-rw-r--r--src/plugin.cpp700
-rw-r--r--src/pluginclasses.cpp74
-rw-r--r--src/point.cpp100
-rw-r--r--src/privateaction.h55
-rw-r--r--src/privatematch.h88
-rw-r--r--src/privateoption.h97
-rw-r--r--src/privateregion.h44
-rw-r--r--src/privatescreen.h459
-rw-r--r--src/privatewindow.h301
-rw-r--r--src/propertywriter.cpp242
-rw-r--r--src/rect.cpp285
-rw-r--r--src/region.cpp469
-rw-r--r--src/screen.cpp4655
-rw-r--r--src/session.cpp427
-rw-r--r--src/size.cpp50
-rw-r--r--src/string.cpp88
-rw-r--r--src/timer.cpp140
-rw-r--r--src/window.cpp5685
-rw-r--r--src/windowgeometry.cpp206
-rw-r--r--xslt/CMakeLists.txt13
-rw-r--r--xslt/bcop.xslt1581
-rw-r--r--xslt/compiz_gconf_schemas.xslt410
-rw-r--r--xslt/default_plugins.xslt76
375 files changed, 174 insertions, 309283 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 75e7109..ea2aa85 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,13 +1,9 @@
-project (compiz)
+project (gtk-window-decorator)
+
+find_package (Compiz REQUIRED)
-set (CMAKE_MODULE_PATH_ORIG ${CMAKE_MODULE_PATH})
-set (COMPIZ_CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
-set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${COMPIZ_CMAKE_MODULE_PATH})
include (CompizCommon)
include (CompizPackage)
-include (cmake/base.cmake)
-include (CheckFunctionExists)
-
set (CMAKE_CONFIGURATION_TYPES "Debug;Release;RelWithDebInfo;MinSizeRe" CACHE INTERNAL "" FORCE)
if (NOT CMAKE_BUILD_TYPE)
@@ -23,105 +19,20 @@ set (COMPIZ_VERSION_MICRO 2)
set (COMPIZ_VERSION_MACRO 1)
set (VERSION ${COMPIZ_VERSION_MAJOR}.${COMPIZ_VERSION_MINOR}.${COMPIZ_VERSION_MICRO}.${COMPIZ_VERSION_MACRO})
-set (DECOR_INTERFACE_VERSION 20080901)
-
-if (COMPIZ_PACKAGING_ENABLED)
- set (prefix ${CMAKE_INSTALL_PREFIX} CACHE PATH "prefix")
- set (exec_prefix ${CMAKE_INSTALL_PREFIX}/bin CACHE PATH "bindir")
- set (libdir ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH "libdir")
- set (includedir ${CMAKE_INSTALL_PREFIX}/include CACHE PATH "includedir")
- set (datadir ${CMAKE_INSTALL_PREFIX}/share CACHE PATH "datadir")
-else (COMPIZ_PACKAGING_ENABLED)
- set (prefix ${CMAKE_INSTALL_PREFIX} )
- set (exec_prefix ${CMAKE_INSTALL_PREFIX}/bin )
- set (libdir ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX})
- set (includedir ${CMAKE_INSTALL_PREFIX}/include )
- set (datadir ${CMAKE_INSTALL_PREFIX}/share )
-endif (COMPIZ_PACKAGING_ENABLED)
-
-set (compiz_plugindir ${libdir}/compiz)
-set (compiz_imagedir ${datadir}/compiz/images)
-set (compiz_metadatadir ${datadir}/compiz)
-set (COMPIZ_I18N_DIR ${CMAKE_SOURCE_DIR}/po)
-
-set (ALL_LINGUAS af ar bg bn bn_IN bs ca cs cy da de el en_GB en_US es eu et fi fr gl gu he hi hr hu id it ja ka km ko lo lt mk mr nb nl or pa pl pt pt_BR ro ru sk sl sr sv ta tr uk vi xh zh_CN zh_TW zu)
-set (GETTEXT_PACKAGE compiz)
-
-find_package (Boost 1.34.0 REQUIRED serialization)
-
-set (COMPIZ_REQUIRES
- x11
- xext
- xdamage
- xcomposite
- x11-xcb
- xrandr
- xinerama
- xext
- ice
- sm
- libxml-2.0
- libxslt
- "libstartup-notification-1.0 >= 0.7"
-)
-
-set (DECORATION_REQUIRES xrender)
-
-compiz_pkg_check_modules (COMPIZ REQUIRED ${COMPIZ_REQUIRES})
-compiz_pkg_check_modules (LIBDECORATION REQUIRED ${DECORATION_REQUIRES})
-
-list (APPEND COMPIZ_LIBRARIES ${Boost_LIBRARIES})
+option (BUILD_GTK "Build GTK window decorator" 1)
+option (BUILD_METACITY "Gtk-window-decorator metacity theme support" 1)
-include (CompizDefaults)
+compiz_set (USE_METACITY ${BUILD_METACITY})
-set (COMPIZ_CFLAGS "${COMPIZ_CFLAGS} -I${Boost_INCLUDE_DIR}")
-
-set (_compiz_package_string "Compiz ${VERSION}")
-set (_compiz_package "Compiz")
-
-compiz_configure_file (${compiz_SOURCE_DIR}/config.h.core.in ${compiz_BINARY_DIR}/generated/config.h)
-
-compiz_configure_file (
- ${CMAKE_SOURCE_DIR}/include/compiz-common.h.in
- ${CMAKE_BINARY_DIR}/generated/compiz-common.h
-)
-
-install (
- FILES ${CMAKE_BINARY_DIR}/generated/compiz-common.h
- DESTINATION ${COMPIZ_DESTDIR}${includedir}/compiz
-)
-
-compiz_configure_file (
- ${CMAKE_SOURCE_DIR}/compiz.pc.in
- ${CMAKE_BINARY_DIR}/compiz.pc
- COMPIZ_REQUIRES
- COMPIZ_CFLAGS
-)
-
-install (
- FILES ${CMAKE_BINARY_DIR}/compiz.pc
- DESTINATION ${COMPIZ_DESTDIR}${libdir}/pkgconfig
-)
-
-add_subdirectory (cmake)
-add_subdirectory (include)
-add_subdirectory (images)
-add_subdirectory (libdecoration)
-add_subdirectory (gtk)
-add_subdirectory (kde)
-add_subdirectory (po)
-add_subdirectory (metadata)
add_subdirectory (src)
-add_subdirectory (xslt)
-add_subdirectory (plugins)
-compiz_ensure_linkage ()
-compiz_package_generation ("Compiz")
-compiz_add_uninstall ()
-compiz_add_git_dist ()
+compiz_print_configure_header ("Compiz GTK Window Decorator")
+compiz_color_message ("\n${_escape}[4mFeatures:${_escape}[0m\n")
-_print_configure_results ()
+compiz_print_result_message ("Metacity Theme Support" USE_METACITY)
+compiz_print_configure_footer ()
-_check_compiz_cmake_macro (${CMAKE_MODULE_PATH_ORIG})
+compiz_add_uninstall ()
+compiz_package_generation ("Compiz GTK Window Decorator")
diff --git a/COPYING.LGPL b/COPYING.LGPL
deleted file mode 100644
index b124cf5..0000000
--- a/COPYING.LGPL
+++ /dev/null
@@ -1,510 +0,0 @@
-
- GNU LESSER GENERAL PUBLIC LICENSE
- Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL. It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
- This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it. You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations
-below.
-
- When we speak of free software, we are referring to freedom of use,
-not price. Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
- To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights. These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
- For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you. You must make sure that they, too, receive or can get the source
-code. If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it. And you must show them these terms so they know their rights.
-
- We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
- To protect each distributor, we want to make it very clear that
-there is no warranty for the free library. Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-
- Finally, software patents pose a constant threat to the existence of
-any free program. We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder. Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
- Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License. This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License. We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
- When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library. The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom. The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
- We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License. It also provides other free software developers Less
-of an advantage over competing non-free programs. These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries. However, the Lesser license provides advantages in certain
-special circumstances.
-
- For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it
-becomes a de-facto standard. To achieve this, non-free programs must
-be allowed to use the library. A more frequent case is that a free
-library does the same job as widely used non-free libraries. In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
- In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software. For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
- Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
- The precise terms and conditions for copying, distribution and
-modification follow. Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library". The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-
- GNU LESSER GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
- A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
- The "Library", below, refers to any such software library or work
-which has been distributed under these terms. A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language. (Hereinafter, translation is
-included without limitation in the term "modification".)
-
- "Source code" for a work means the preferred form of the work for
-making modifications to it. For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control
-compilation and installation of the library.
-
- Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it). Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-
- 1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
- You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-
- 2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) The modified work must itself be a software library.
-
- b) You must cause the files modified to carry prominent notices
- stating that you changed the files and the date of any change.
-
- c) You must cause the whole of the work to be licensed at no
- charge to all third parties under the terms of this License.
-
- d) If a facility in the modified Library refers to a function or a
- table of data to be supplied by an application program that uses
- the facility, other than as an argument passed when the facility
- is invoked, then you must make a good faith effort to ensure that,
- in the event an application does not supply such function or
- table, the facility still operates, and performs whatever part of
- its purpose remains meaningful.
-
- (For example, a function in a library to compute square roots has
- a purpose that is entirely well-defined independent of the
- application. Therefore, Subsection 2d requires that any
- application-supplied function or table used by this function must
- be optional: if the application does not supply it, the square
- root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library. To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License. (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.) Do not make any other change in
-these notices.
-
- Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
- This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
- 4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
- If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library". Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
- However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library". The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
- When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library. The
-threshold for this to be true is not precisely defined by law.
-
- If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work. (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
- Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-
- 6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
- You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License. You must supply a copy of this License. If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License. Also, you must do one
-of these things:
-
- a) Accompany the work with the complete corresponding
- machine-readable source code for the Library including whatever
- changes were used in the work (which must be distributed under
- Sections 1 and 2 above); and, if the work is an executable linked
- with the Library, with the complete machine-readable "work that
- uses the Library", as object code and/or source code, so that the
- user can modify the Library and then relink to produce a modified
- executable containing the modified Library. (It is understood
- that the user who changes the contents of definitions files in the
- Library will not necessarily be able to recompile the application
- to use the modified definitions.)
-
- b) Use a suitable shared library mechanism for linking with the
- Library. A suitable mechanism is one that (1) uses at run time a
- copy of the library already present on the user's computer system,
- rather than copying library functions into the executable, and (2)
- will operate properly with a modified version of the library, if
- the user installs one, as long as the modified version is
- interface-compatible with the version that the work was made with.
-
- c) Accompany the work with a written offer, valid for at least
- three years, to give the same user the materials specified in
- Subsection 6a, above, for a charge no more than the cost of
- performing this distribution.
-
- d) If distribution of the work is made by offering access to copy
- from a designated place, offer equivalent access to copy the above
- specified materials from the same place.
-
- e) Verify that the user has already received a copy of these
- materials or that you have already sent this user a copy.
-
- For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it. However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
- It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system. Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-
- 7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
- a) Accompany the combined library with a copy of the same work
- based on the Library, uncombined with any other library
- facilities. This must be distributed under the terms of the
- Sections above.
-
- b) Give prominent notice with the combined library of the fact
- that part of it is a work based on the Library, and explaining
- where to find the accompanying uncombined form of the same work.
-
- 8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License. Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License. However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
- 9. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Library or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
- 10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
-this License.
-
- 11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all. For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply, and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License
-may add an explicit geographical distribution limitation excluding those
-countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation. If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-
- 14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission. For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this. Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
- NO WARRANTY
-
- 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Libraries
-
- If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change. You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms
-of the ordinary General Public License).
-
- To apply these terms, attach the following notices to the library.
-It is safest to attach them to the start of each source file to most
-effectively convey the exclusion of warranty; and each file should
-have at least the "copyright" line and a pointer to where the full
-notice is found.
-
-
- <one line to give the library's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- 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.1 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, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-Also add information on how to contact you by electronic and paper mail.
-
-You should also get your employer (if you work as a programmer) or
-your school, if any, to sign a "copyright disclaimer" for the library,
-if necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the
- library `Frob' (a library for tweaking knobs) written by James
- Random Hacker.
-
- <signature of Ty Coon>, 1 April 1990
- Ty Coon, President of Vice
-
-That's all there is to it!
-
-
diff --git a/COPYING.MIT b/COPYING.MIT
deleted file mode 100644
index 69ef1bf..0000000
--- a/COPYING.MIT
+++ /dev/null
@@ -1,21 +0,0 @@
-
-Copyright © 2005 Novell, Inc.
-
-Permission to use, copy, modify, distribute, and sell this software
-and its documentation for any purpose is hereby granted without
-fee, provided that the above copyright notice appear in all copies
-and that both that copyright notice and this permission notice
-appear in supporting documentation, and that the name of
-Novell, Inc. not be used in advertising or publicity pertaining to
-distribution of the software without specific, written prior permission.
-Novell, Inc. makes no representations about the suitability of this
-software for any purpose. It is provided "as is" without express or
-implied warranty.
-
-NOVELL, INC. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
-NO EVENT SHALL NOVELL, INC. BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
-OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
-NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
-WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. \ No newline at end of file
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index bbfa473..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,1795 +0,0 @@
-2006-06-21 David Reveman <davidr@novell.com>
-
- * src/window.c: Add updateTransientHint to protect against circular
- transient dependencies. (bnc 186825)
-
-2006-06-20 David Reveman <davidr@novell.com>
-
- * src/window.c (addWindowSizeChanges): Constrain window
- dimensions if they are too large.
-
- * gnome/window-decorator/gnome-window-decorator.c (get_mwm_prop):
- Trap X errors.
-
-2006-06-20 Dan Winship <danw@novell.com>
-
- * configure.ac (ALL_LINGUAS): Add pl
-
-2006-06-16 David Reveman <davidr@novell.com>
-
- * plugins/compiz.schemas.in.in: Regen.
-
- * plugins/switcher.c:
- * plugins/scale.c: Add modal dialogs and fullscreen windows
- to default window types. (bnc 185749)
-
- * gnome/window-decorator/gnome-window-decorator.c: Track motif
- WM hints and disable decorations when application wants no
- titlebar. (bnc 185852)
-
-2006-06-15 David Reveman <davidr@novell.com>
-
- * plugins/cube.c (cubePaintTransformedScreen): Remove
- PAINT_SCREEN_CLEAR_MASK from mask.
-
- * plugins/switcher.c (switchPaintScreen): Add PAINT_SCREEN_CLEAR_MASK
- when zooming. (bnc 183676)
-
- * src/paint.c (paintTransformedScreen): Clear color buffer if
- PAINT_SCREEN_CLEAR_MASK is present.
-
- * include/compiz.h: Add PAINT_SCREEN_CLEAR_MASK.
-
- * gnome/window-decorator/gnome-window-decorator.c: Add DM selection
- support and --repalce option so it's possible to replace an
- existing window decorator in the same way as it's possible to replace
- a window manager. (bnc 185296)
- (close_button_event):
- (max_button_event):
- (min_button_event): De-highlight on NotifyGrab. (bnc 185293)
-
-2006-06-12 Dan Winship <danw@novell.com>
-
- * plugins/cube.c:
- * plugins/switcher.c: Mark cube as needing to load before switcher
- rather than marking switcher as requiring cube. bnc #183676.
-
- * plugins/gconf-dump.c (dumpPluginOptions): Output load_before and
- requires for all plugins, even if the list is empty, to ensure
- that an empty value in a new release overrides a non-empty value
- in an older release.
-
- * plugins/compiz.schemas.in.in: regen
-
-2006-06-09 Dan Winship <danw@novell.com>
-
- * configure.ac: add translations
-
-2006-06-09 David Reveman <davidr@novell.com>
-
- * plugins/move.c (moveHandleMotionEvent): Handle shaded windows
- better.
-
- * src/window.c (maximizeWindow):
- * src/event.c (handleEvent): Allow windows to be both maximized
- and shaded.
-
- * src/window.c: Update addWindowSizeChanges so it can be used by
- moveResizeWindow.
- (updateWindowAttributes): Add missing sendSyncRequest call.
- (addWindowSizeChanges): Make maximized window placement a bit better.
- (moveResizeWindow): Adjust window geometry using
- addWindowSizeChanges. (bnc 183121)
-
- * src/window.c: Only allow shading on windows with top decoration.
-
- * src/event.c (handleEvent): Check that shade action is allowed
- before shading a window.
-
-2006-06-08 David Reveman <davidr@novell.com>
-
- * plugins/decoration.c (decorInitWindow):
- * plugins/minimize.c (minInitWindow):
- * src/window.c (addWindow): Handle initially shaded windows
- correctly.
-
- * plugins/switcher.c (switchTerminate): Only use hideWindow
- if switcher window is managed and mapped.
- (switchInitiate): Only use showWindow if switcher window is
- hidden. (bnc 182519)
-
- * plugins/minimize.c (minHandleEvent): Make sure we adjust the window
- region correctly when it's being unshaded.
-
-2006-06-07 David Reveman <davidr@novell.com>
-
- * configure.ac: Bump version to 0.0.13.
-
- * plugins/compiz.schemas.in.in: Regen.
-
- * src/window.c: Add window shading support.
-
- * src/screen.c:
- * src/paint.c:
- * src/event.c: Adjust for window shading support.
- (handleEvent): Handle RESTACK client messages with sibling None
- correctly.
-
- * src/event.c:
- * src/display.c: Add toggle window shade binding.
-
- * plugins/minimize.c: Add window shading animation support.
-
- * plugins/fade.c:
- * plugins/place.c:
- * plugins/resize.c:
- * plugins/scale.c:
- * plugins/switcher.c:
- * plugins/decoration.c: Adjust for window shading support.
-
- * include/compiz.h: Add window shading support.
-
- * gnome/window-decorator/gnome-window-decorator.c: lower_window ->
- restack_window and change it so it can be used for both
- raising and lowering a window.
- Add support for double_click_titlebar setting.
- (title_event): Don't activate window on titlebar click only
- raise it. Use double_click_action to determine what should be
- done when titlebar is double clicked.
- (update_event_windows): Remove vertical resize event windows
- when top level window is shaded.
- (window_state_changed): Update event windows when window state
- changed.
-
- * gnome/window-decorator/gnome-window-decorator.c:
- * gnome/compiz-window-manager.c: Add support for shade double click
- setting.
-
- * plugins/compiz.schemas.in.in: Regen.
-
- * plugins/cube.c (cubePaintTransformedScreen):
- * plugins/wobbly.c (wobblyDrawWindowGeometry):
- * plugins/switcher.c (switchPaintWindow):
- * src/paint.c (drawWindowGeometry): Disable client-side texture
- coordinate arrays that are not used. (bnc #182430)
-
- * plugins/compiz.schemas.in.in:
- * plugins/resize.c:
- * plugins/move.c: Add initiate_keyboard binding which is more
- appropriate for key-binding as it moves the cursor to middle of
- window.
-
-2006-06-06 David Reveman <davidr@novell.com>
-
- * plugins/switcher.c: Track thumbnail damage correctly.
- (switchPaintScreen): Only intercept paintScreen when screen is
- grabbed or we're zooming and ss->translate > 0.001.
- (switchPaintScreen): Paint switcher window correctly when we're
- not zooming.
- Add cube as a dependency to make sure background is rendered
- correctly when zooming.
- (bnc #181909)
-
- * src/window.c (moveResizeWindow, ensureWindowVisibility):
- Don't make sure fullscreen windows are in workarea.
- (fdo #7115) (bnc #181907)
-
- * src/event.c (handleEvent): Track XA_WM_CLASS property changes.
-
- * src/window.c:
- * include/compiz.h: remove updateWindowClass and update
- updateWindowClassHints.
-
-2006-06-02 David Reveman <davidr@novell.com>
-
- * configure.ac: Bump version to 0.0.12.
-
- * src/event.c (handleEvent): Fix typo.
-
- * gnome/window-decorator/gnome-window-decorator.c:
- Hide tooltips on NotifyGrab. (bnc #180692)
-
-2006-06-01 Dan Winship <danw@novell.com>
-
- * src/event.c (handleEvent): If we receive a _NET_SHOWING_DESKTOP
- request with no window set, set the flag on all screens. (Fixes
- the KDE "show desktop" applet.) Also, don't allow a client to
- change its _NET_WM_DESKTOP.
-
- * src/window.c (addWindow): Set _NET_WM_DESKTOP on all windows to
- 0; KDE's pager and tasklist require this to be set. (bnc 178320)
-
-2006-06-01 David Reveman <davidr@novell.com>
-
- * include/compiz.h:
- * src/window.c: Add updateWindowClass.
-
-2006-05-31 David Reveman <davidr@novell.com>
-
- * include/compiz.h:
- * src/screen.c:
- * src/display.c: Add hide_skip_taskbar_windows option. (bnc 180055)
-
- * include/compiz.h:
- * src/window.c: Add getStartupId.
-
- * src/screen.c: Save initial viewport when startup notification
- is received. Fix implementation of applyStartupProperties.
- (bnc 180224)
-
- * src/event.c (handleEvent): Handle startup ID property changes.
-
- * plugins/place.c: Adjust work area to initial viewport.
-
- * plugins/cube.c (cubePaintTransformedScreen): Disable skydome
- animation while cube is unfolded. (bnc 179833)
-
- * plugins/switcher.c (switchPaintWindow): Make sure selected window is
- not clipped incorrectly when some window is transformed. (bnc 179828)
-
- * plugins/move.c (moveHandleEvent): Initialize xRoot and yRoot.
- (bnc 179902)
-
- * src/Makefile.am (INCLUDES): Add @GL_CFLAGS@. (Eric Work)
-
-2006-05-30 Dan Winship <danw@novell.com>
-
- * configure.ac: Check libwnck for wnck_window_has_name (new in
- HEAD).
-
- * gnome/window-decorator/gnome-window-decorator.c
- (wnck_window_get_real_name): #if HAVE_WNCK_WINDOW_HAS_NAME,
- redefine wnck_window_get_name to return NULL if the window only
- has a fallback name. bnc 173059.
-
- * src/event.c (handleEvent): call moveInputFocusToOtherWindow()
- before destroyWindow() when processing a DestroyNotify, or else
- the input focus can get stranded.
-
-2006-05-26 David Reveman <davidr@novell.com>
-
- * plugins/compiz.schemas.in.in: Regen.
-
- * plugins/scale.c (SCALE_SLOPPY_FOCUS_DEFAULT): TRUE.
-
- * plugins/decoration.c (decorWindowUpdate): No drop-shadow decoration
- on windows with below state.
-
- * src/window.c (recalcWindowType): Treat dock windows with below state
- as normal windows. (bnc #178316)
-
- * plugins/cube.c (cubePaintTransformedScreen): Avoid optimized case
- when more than 4 cube sides.
-
-2006-05-25 David Reveman <davidr@novell.com>
-
- * plugins/compiz.schemas.in.in: Regen.
-
- * src/window.c (moveResizeWindow): Don't adjust position for NorthWest
- gravity. (bnc 178765) (fdo #6992)
-
- * plugins/compiz.schemas.in.in:
- * include/compiz.h:
- * src/event.c (handleEvent):
- * src/display.c: Add maximize_window_horizontally,
- maximize_window_vertically, toggle_window_maximized,
- toggle_window_maximized_horizontally,
- toggle_window_maximized_vertically.
-
- * src/event.c (handleEvent): Track changes to maximizeWindow function.
-
- * plugins/move.c (moveHandleMotionEvent): Make sure we have a saved
- width before we use it. Track changes to maximizeWindow function.
-
- * plugins/wobbly.c (wobblyHandleEvent): Handle the case where
- window is not both vertically and horizontally maximized better.
-
- * include/compiz.h: Add MAXIMIZE_STATE macro.
-
- * include/compiz.h:
- * src/window.c: Remove unmaximizeWindow and make maximizeWindow
- take a state mask so it can be used for both maximizing and
- unmaximizing.
-
- * plugins/switcher.c: Don't add windows that appear after the switcher
- is popped up. (bnc 178350)
- (switchWindowRemove): Don't create a new list. Instead remove
- window from the existing list and make sure we're positioned
- correctly.
-
-2006-05-24 David Reveman <davidr@novell.com>
-
- * plugins/scale.c (scaleMoveFocusWindow): When moving to window on
- left, make sure the window we're moving to is completely left of
- currently selected window. And same thing when moving to window on
- right, top, bottom.
- (layoutThumbs): Set slot->x2 and slot->y2 correctly. (bnc 178216)
-
-2006-05-23 David Reveman <davidr@novell.com>
-
- * plugins/water.c: GL_UNSIGNED_INT_8_8_8_8_REV as pixel data type on
- MSBFirst machines.
-
- * src/texture.c: Include config.h before compiz.h so that
- IMAGE_BYTE_ORDER is defined correctly. (bnc 178171)
-
- * include/compiz.h: Define LSBFirst, MSBFirst, IMAGE_BYTE_ORDER,
- BITMAP_BIT_ORDER. (bnc 178171)
-
-2006-05-23 Dan Winship <danw@novell.com>
-
- * plugins/switcher.c (switchToWindow): use ss->windows here as
- well so that multiple activeNum==0 windows don't get skipped.
- (switchTerminate): Remove the screen grab right away so that
- keystrokes don't get dropped. bnc 177650
- (switchPreparePaintScreen, switchPaintScreen,
- switchDonePaintScreen): update for that
-
-2006-05-22 Dan Winship <danw@novell.com>
-
- * src/window.c (moveResizeWindow): deal with both vertical and
- horizontal struts; but not when moving a dock window
-
- * plugins/switcher.c (switchHandleEvent): Check init_all binding
- before init, so you can bind "<Alt>" to init_all and so end up
- with "<Alt>Tab" being init_all rather than init (but with no way
- to get "init"...). bnc 173376
-
-2006-05-21 David Reveman <davidr@novell.com>
-
- * src/display.c (addDisplay): Select for button events on root windows.
-
- * configure.ac: Bump version to 0.0.11.
-
- * gnome/window-decorator/gnome-window-decorator.c: Fix shadow
- performance by separating the convolution filter into one vertical and
- one horizontal pass.
-
- * src/window.c (mapWindow): Give sync request on map another try, it
- seems to be working now.
-
- * src/window.c (addWindow): Allow XGetWindowAttributes to fail.
- (bnc 173416).
-
- * src/window.c (addWindow): Initialize managed to false. Set managed
- to true if widows is viewable.
-
- * src/event.c (handleEvent): Set managed to false when window
- transitions to withdrawn state.
- (handleEvent): Set managed to true when we get MapRequest.
- (handleEvent): Constrain configure request if window is managed.
-
- * include/compiz.h: Add "managed" variable that is true while
- windows is managed.
-
-2006-05-19 David Reveman <davidr@novell.com>
-
- * plugins/switcher.c (ICON_SIZE): Allow use of larger window icons.
-
-2006-05-18 Dan Winship <danw@novell.com>
-
- * plugins/wobbly.c (WOBBLY_FOCUS_DEFAULT): Set this to "None" to
- match wobblyInitScreen() so that it actually works right.
-
- * plugins/compiz.schemas.in.in: regen
-
-2006-05-18 Dan Winship <danw@novell.com>
-
- * src/session.c (saveYourselfCallback): if we have a
- RestartCommand registered with the session manager, update the
- --sm-client-id in it to match the id we were assigned. bnc 176746
-
- * src/main.c (main, usage): remove unused --sm-save-file arg and
- fix documentation of --sm-client-id.
-
-2006-05-17 David Reveman <davidr@novell.com>
-
- * plugins/compiz.schemas.in.in: Regen (Overlay Icon).
-
- * plugins/switcher.c (switchPaintScreen): Don't remove switcher
- from window list, just temporarily mark it as destroyed. This fixes
- issue with switcher decorations disappearing when some window is
- unmapped.
-
- * src/screen.c (updateDefaultIcon): width and height should be
- unsigned.
-
- * gnome/window-decorator/gnome-window-decorator.c: Add minimal
- option that can be used to run g-w-d with drop-shadows but without full
- window decorations.
-
- * plugins/minimize.c (minHandleEvent): Restore window position
- when transitioning to withdrawn state.
-
- * plugins/scale.c: Remove next_window binding and fix so that arrow
- keys can be used to select window.
- Focus new window when pointer enter window decorations and sloppy focus
- is used.
- Remove scaleSelectWindow.
-
- * plugins/scale.c: Icon support (Nat Friedman).
-
-2006-05-17 Dan Winship <danw@novell.com>
-
- * src/display.c (handleSelectionClear, eventLoop): don't process
- exit-on-selection-clear until the event queue is empty, or else
- MapRequest and ConfigureRequest events could get lost. bnc 175558
-
-2006-05-14 David Reveman <davidr@novell.com>
-
- * src/event.c (handleEvent): mapNum might be 0 if we found the window
- unmapped when trying to bind it to a texture.
-
-2006-05-12 David Reveman <davidr@novell.com>
-
- * src/screen.c (enterShowDesktopMode): Only go into show desktop mode
- when some window is being hidden.
-
- * src/event.c (handleWindowDamageRect): Make sure placed is set to true
- when no plugin is doing placement.
- (handleEvent): Don't set WM_STATE on override redirect windows.
-
- * plugins/switcher.c (isSwitchWin): Don't show windows that ask not to
- be in tasklists.
-
- * plugins/rotate.c (rotateHandleEvent): Only adjust viewport if window
- has been placed.
-
- * plugins/minimize.c (minHandleEvent): Reset everything when going
- into withdrawn state.
-
- * src/window.c (moveResizeWindow): Handle west and north gravity
- correctly.
-
-2006-05-11 David Reveman <davidr@novell.com>
-
- * src/display.c (addDisplay):
- * src/screen.c (addScreen): Move server grab to addDisplay to make
- sure that no windows are created between XSelectInput and XQueryTree
- as that would result in them being added two times.
-
- * src/window.c (moveResizeWindow): Fix typo, CWY should be CWX.
- (moveResizeWindow): Constrain Y position so that window titlebar is
- visible.
- (restoreWindowGeometry): Fix issue with going from maximized state
- to non-maximized state without changing the window size.
-
- * gnome/window-decorator/gnome-window-decorator.c
- (max_window_name_width): Make sure title text fit in titlebar.
-
-2006-05-11 Dan Winship <danw@novell.com>
-
- * plugins/gconf-compiz-utils.c (gconfStringToBinding): Treat "" as
- meaning "disabled"
-
-2006-05-11 David Reveman <davidr@novell.com>
-
- * gnome/window-decorator/gnome-window-decorator.c (action_menu_map):
- Don't show window action menu on desktop and dock windows.
-
- * src/event.c (handleEvent): Allow click on window decorations
- to trigger window action menu.
-
- * plugins/place.c (placeWindow): Place fullscreen and maximized
- windows correctly.
- (placeWindow): Only clip dialog position to screen if parent is
- visible in current viewport.
-
-2006-05-09 David Reveman <davidr@novell.com>
-
- * plugins/switcher.c (switchPaintThumb): Rearrange code so we handle
- the case when bindWindow fails.
-
- * src/paint.c (paintWindow): Bail out if window is not mapped.
-
- * src/window.c (bindWindow): Make sure window is mapped when
- getting the window pixmap. (bnc 173248)
-
- * plugins/compiz.schemas.in.in: Regen.
-
- * plugins/cube.c (CUBE_MIPMAP_DEFAULT): Enable by default as
- performance seem to be OK now when new mipmaps are only generated
- when necessary.
-
- * src/texture.c (enableTexture): Don't generate new mipmaps
- every time the texture is used.
-
-2006-05-08 David Reveman <davidr@novell.com>
-
- * plugins/switcher.c: Allow switcher to be initiated with prev
- bindings. (Quinn Storm)
-
-2006-05-07 David Reveman <davidr@novell.com>
-
- * plugins/compiz.schemas.in.in: Regen.
-
- * plugins/switcher.c: Add icon support, minimized windows support
- and allow switcher to show up when only one selectable window exist.
-
- * images/Makefile.am: Add default icon image.
-
- * include/compiz.h:
- * src/texture.c:
- * src/event.c (handleEvent):
- * src/screen.c:
- * src/display.c:
- * src/window.c: Add WM icon interface.
-
- * gnome/window-decorator/gnome-window-decorator.c: Compute
- switcher title text width correctly.
-
- * src/event.c (handleEvent): Insert windows correctly when
- reparenting.
-
-2006-05-07 Dan Winship <danw@novell.com>
-
- * configure.ac: Add --with-scale-corner option and make
- compiz.schemas reflect it; the best corner to use depends on where
- the panels are and what's on them, so distros will want to
- override this to match their default panel layout.
-
- * src/event.c (eventMatches): Fix the the "water plugin gets
- mysteriously activated when activating some other keybinding" bug.
-
-2006-05-05 Dan Winship <danw@novell.com>
-
- * Makefile.am:
- * autogen.sh:
- * configure.ac: require intltool for option-description
- translation
-
- * plugins/Makefile.am: translate compiz.schemas.in into
- compiz.schemas
-
-2006-05-05 Dan Winship <danw@novell.com>
-
- * src/display.c (COMMAND_OPTION): Put numbers into the shortDescs
- of the command and run_command options
-
- * plugins/wobbly.c (WOBBLY_SNAP_MODIFIERS_DEFAULT): Use Shift
- rather than Control, for consistency with Metacity, and to remove
- the ambiguity about whether Ctrl+Alt+Button1 should be "grab cube"
- or "move with snapping". (bnc 169402)
-
- * plugins/compiz.schemas: regen
-
-2006-05-05 David Reveman <davidr@novell.com>
-
- * plugins/compiz.schemas: Regen.
-
- * gnome/window-decorator/gnome-window-decorator.c: Forward
- metacity's bell settings to compiz.
-
- * plugins/water.c:
- * plugins/wobbly.c:
- * plugins/fade.c: Add visual bell.
-
- * include/compiz.h:
- * src/display.c: Add audible bell option.
-
-2006-05-04 David Reveman <davidr@novell.com>
-
- * src/window.c (getModalTransient): Avoid infinite recursion when more
- than one group transient got modal state.
-
-2006-05-03 David Reveman <davidr@novell.com>
-
- * plugins/move.c:
- * plugins/resize.c (resizeHandleMotionEvent): Don't constrain the
- cursor.
-
- * plugins/rotate.c (rotateHandleEvent): Use defaultViewportForWindow
- to figure out which viewport we should move to. (bnc 152677)
-
- * src/window.c (addWindowSizeChanges): Offset x coordinate with
- default viewport coordinate. (bnc 171465)
- (updateWindowAttributes): Always add windows size changes. (bnc 171465)
-
- * include/compiz.h:
- * src/window.c (defaultViewportForWindow): Add defaultViewportForWindow
- function that computes the default viewport for a window.
-
-2006-05-02 David Reveman <davidr@novell.com>
-
- * plugins/cube.c (cubePaintTransformedScreen): Bump up size a bit more
- to make sure the cube unfolds completely.
-
- * src/event.c (handleEvent): Not constraints should be applied to
- ConfigureRequests for withdrawn windows. (bnc 171143)
-
- * src/window.c (syncWindowPosition): We never need to send synthetic
- ConfigureNotify events as we're not reparenting windows.
-
-2006-05-02 Dan Winship <danw@novell.com>
-
- * plugins/gconf-dump.c: rewrite to make compiz.schema regeneration
- a little easier, and to make it possible to generate schema files
- for third-party plugins. Include plugin descriptions and
- dependency information in the schema.
-
- * plugins/Makefile.am: add a rule to generate compiz.schemas
-
- * plugins/compiz.schemas: regen
-
- * plugins/cube.c, plugins/decoration.c, plugins/fade.c,
- plugins/gconf.c, plugins/minimize.c, plugins/wobbly.c:
- s/expose/scale/ in dependencies
-
-2006-05-02 David Reveman <davidr@novell.com>
-
- * include/compiz.h:
- * configure.ac: Don't require glproto, include necessary enums in
- compiz.h.
-
- * src/texture.c:
- * include/compiz.h: Update to latest EXT_tfp spec. Requires an
- X server that has also been updated.
-
- * configure.ac: Require glproto >= 1.4.7 with final EXT_tfp tokens.
-
-2006-05-01 David Reveman <davidr@novell.com>
-
- * src/window.c (circulateWindow):
- * src/event.c (handleEvent): Use getTopWindow instead of
- reverseWindows->id as reverseWindows might be a destroyed window.
-
- * include/compiz.h:
- * src/screen.c: Add getTopWindow function that returns top window.
-
-2006-04-30 David Reveman <davidr@novell.com>
-
- * plugins/compiz.schemas: Regen.
-
- * plugins/decoration.c (decorWindowUpdate): Don't decorate fullscreen
- windows.
-
- * plugins/cube.c: Add initial support for unfolding the cube. Default
- key-binding is <Control><Alt>Down.
-
- * plugins/rotate.c (rotateHandleEvent): Fix absolute rotation.
-
- * plugins/switcher.c: Fix so that bring-to-front doesn't change
- the actual stacking order.
- Add zoom option, enable it by default so it gets some testing.
- Made bring-to-front enabled by default as it makes zoom functionality
- more useful.
- Made switcher window always rendered above all other windows and
- not affected by screen transformations.
-
- * src/event.c (handleEvent): Send configure notify before mapping
- window if PPosition or USPosition is set.
-
- * src/screen.c (insertWindowIntoScreen): Sibling above doesn't have to
- be mapped. This change seem to currently by causing the
- stacking order of some override-redirect windows to be incorrect.
- Don't insert window when aboveId doesn't match an existing window.
- (removeScreenGrab): ifdef DEBUG around abort.
-
- * src/event.c (handleEvent): Only update active window property
- when it's changing.
-
- * src/window.c (sendConfigureNotify): Make sure the latest
- window attributes are put in the ConfigureNotify.
- (moveResizeWindow): Only send sync request if window is mapped.
-
- * plugins/rotate.c: Add support for edge-flipping when using
- drag-and-drop. Remove edge_flip and flip_move options and add
- edge_flip_pointer, edge_flip_move, edge_flip_dnd.
-
- * src/screen.c:
- * src/display.c:
- * include/compiz.h:
- Make screen edges drag-and-drop aware.
-
- * plugins/zoom.c:
- * plugins/water.c:
- * plugins/switcher.c:
- * plugins/scale.c:
- * plugins/rotate.c:
- * plugins/resize.c:
- * plugins/move.c:
- * src/scren.c:
- * include/compiz.h:
- Variable argument list to otherScreenGrabExist, last argument must
- be 0.
-
- * src/event.c:
- * src/display.c:
- * include/compiz.h: Add raise-on-click option.
-
- * gnome/window-decorator/gnome-window-decorator.c (title_event):
- Activate window when clicking titlebar.
-
-2006-04-28 David Reveman <davidr@novell.com>
-
- * gnome/window-decorator/gnome-window-decorator.c: Back out last change
- as it clearly didn't fix anything. XFixed being defined as "int"
- is perfectly fine of course. libXrender is currently broken on 64bit.
- See Bug #6774 for a fix.
- (XRenderSetPictureFilter_wrapper): Add workaround for 64bit
- issue in libXrender. (Dan Winship)
-
- * src/event.c (handleEvent):
- * src/display.c:
- * include/compiz.h:
- Add show desktop binding. (Martin Szulecki)
-
- * plugins/rotate.c: Reset timout handle correctly.
-
- * plugins/move.c:
- * plugins/resize.c:
- * plugins/rotate.c:
- * plugins/scale.c:
- * plugins/switcher.c:
- * plugins/water.c:
- * plugins/zoom.c: Track screen grab changes changes.
-
- * src/screen.c:
- * include/compiz.h: Associate all screen grabs with a name. Add
- otherScreenGrabExist function which can be used to check if screen
- is grabbed by other plugins.
-
-2006-04-28 Dan Winship <danw@novell.com>
-
- * src/event.c (eventMatches): new method that replaces EV_KEY and
- EV_BUTTON. Tests if an event matches a binding, being more precise
- about modifier state than EV_KEY and EV_BUTTON were.
- (eventTerminates): Tests if an event is "the opposite" of a
- binding. (Eg, button or modifier key release.) Replaces
- CompReleaseMask and "terminate" bindings.
- (handleEvent): Use eventMatches
-
- * src/screen.c (addPassiveKeyGrab, removePassiveKeyGrab,
- updatePassiveKeyGrabs): When passed a keybinding containing just
- modifiers, grab/ungrab every keypress event that would result in
- that modifier state (eg, both left and right modifier keys, and
- allow them to be pressed in any order).
-
- * src/display.c: Remove CompPressMask from default bindings.
- (eventLoop): don't add virtual modifiers to event state.
- (updateModifierMappings): store the XModifierKeymap for later
- use.
-
- * plugins/*.c: Use eventMatches and eventTerminates. Remove
- CompPressMask and "terminate" bindings (except from scale, which
- is different from the others).
-
- * plugins/switcher.c: Make initiate_all be just the modifier key
- used in addition to the initiate binding ("<Control>"). Remove
- next_window since it doesn't make a lot of sense to have it be
- different from initiate_all, and make prev_window be just a
- modifier key as well. ("<Shift>").
- (SwitchScreen): add extra options to store the fully-composed
- initiate_all, prev, and prev_all bindings.
- (switchScreenInitOptions, switchSetScreenOption): Generate and
- regenerate initiate_all, prev, and prev_all bindings as needed.
- (switchHandleEvent): update
-
- * plugins/gconf-compiz-utils.c: Remove "<Release>" handling.
-
- * plugins/compiz.schemas: regen, dropping the terminate bindings
- and updating a few others.
-
- * include/compiz.h: remove CompPressMask, CompReleaseMask,
- EV_BUTTON, and EV_KEY. Add eventMatches, eventTerminates, and
- keycodeToModifiers. Add modMap field to CompDisplay.
-
-2006-04-28 David Reveman <davidr@novell.com>
-
- * plugins/water.c: Handle enter/leave notify events.
-
- * plugins/decoration.c (decorInitWindow): Check for window specific
- decoration on both mapped and unmapped windows so that initially
- minimized windows get properly decorated. (Dan Winship)
-
- * gnome/window-decorator/gnome-window-decorator.c: Use xfixed_16_16_t
- instead of XFixed to avoid 64bit issue with XFixed being defined as
- "int".
-
- * configure.ac: xrender 0.8.4 is good enough.
-
-2006-04-27 Dan Winship <danw@novell.com>
-
- * plugins/rotate.c (rotateHandleEvent): for the
- rotate-to-specific-face keys, rotate counterclockwise when that's
- faster. (bnc 169427)
-
- * plugins/scale.c (scaleHandleEvent): Make the corners toggle
- scale mode rather than only activating it. (bnc 169408)
-
-2006-04-27 David Reveman <davidr@novell.com>
-
- * configure.ac: Bump version to 0.0.10.
-
- * plugins/decoration.c: Remove debug variable.
-
- * src/window.c (addWindow): Check if window is minimized. (Dan Winship)
-
- * plugins/compiz.schemas: Regen (snapoff and maximize_effect).
-
- * plugins/wobbly.c: Add maximize effect.
-
- * plugins/zoom.c:
- * plugins/water.c:
- * plugins/rotate.c:
- * plugins/resize.c:
- * plugins/move.c:
- * src/event.c:
- * src/screen.c:
- * src/display.c:
- * include/compiz.h: Add proper warp pointer interface and update
- all plugins to use it.
-
-2006-04-26 Dan Winship <danw@novell.com>
-
- * src/event.c (handleEvent): activate window on Button2 click in
- addition to Button1 and Button3.
-
- * plugins/gconf.c (gconfSetOption): gconf_value_compare against
- the old value for list-type options too.
- (gconfInitOption): Change the call to gconf_client_get_entry to
- request the default value again; the fix to gconfSetOption will
- prevent the infinite loops that happened before.
-
-2006-04-26 David Reveman <davidr@novell.com>
-
- * gnome/window-decorator/gnome-window-decorator.c (update_shadow):
- Remove comment that is no longer valid.
-
- * plugins/move.c: Support for maximized windows snap-off. Based on
- patch by Colin Guthrie.
-
- * plugins/rotate.c (rotateHandleEvent): Don't do edge flipping
- when a horizontally maximized or fullscreen window is grabbed.
-
- * plugins/zoom.c:
- * plugins/rotate.c:
- * plugins/resize.c:
- * plugins/move.c:
- * src/screen.c:
- * include/compiz.h: Add warpPointerToScreenPos and use it everywhere
- we want to invisibly warp the pointer.
-
-2006-04-25 David Reveman <davidr@novell.com>
-
- * gnome/window-decorator/gnome-window-decorator.c:
- * plugins/decoration.c: Add clamp and min size.
-
- * plugins/decoration.c (decorReleaseDecoration): Fix memory leak.
-
- * plugins/scale.c: Click on background leaves scale mode and enters
- show desktop mode. (Dan Winship)
-
- * plugins/minimize.c (minHandleEvent): Initialize scale and
- translate properly.
-
- * src/window.c (activateWindow):
- * src/event.c (handleEvent):
- * src/screen.c: Add window parameter to leaveShowDesktopMode and
- use this function for making one window leave show desktop mode.
- Fixes so that we're leaving show desktop mode when no windows
- are longer hidden.
-
- * plugins/scale.c (scaleSetScreenOption): Add missing break statement.
-
- * plugins/rotate.c (rotateInitScreen): Initialize rotateHandle.
-
- * src/paint.c (paintScreen): Only paint windows that have been
- damaged.
-
-2006-04-24 Dan Winship <danw@novell.com>
-
- * plugins/scale.c:
- * plugins/switcher.c: clarify the "initiate" descriptions
-
- * plugins/compiz.schemas: regen
-
-2006-04-24 David Reveman <davidr@novell.com>
-
- * src/paint.c (paintScreen): Always call paintWindow when window
- is visible. Fixes so that window animations (fade, minimize...) aren't
- paused when if window becomes invisible.
- (paintWindow): Return early if region is empty.
-
- * plugins/switcher.c: Use hideWindow and showWindow so that the
- decoration doesn't have to be redrawn every time the switcher window
- is mapped.
-
- * src/window.c:
- * include/compiz.h: Add hidden flag, that can be used to hide windows
- without minimizing them.
-
- * plugins/compiz.schemas: Regen (drop-shadow options).
-
- * configure.ac: xrender 0.9, required for g-w-d.
-
- * gnome/window-decorator/gnome-window-decorator.c:
- * plugins/decoration.c: Add configurable drop-shadows. A minor issue is
- that shadows around "tiny" windows are not rendered correctly when
- large shadow offsets are used. Solution is to have the decorator set
- a minimum size for which a decoration can be used so that no shadows
- are rendered around "tiny" windows.
-
-2006-04-20 Dan Winship <danw@novell.com>
-
- * plugins/rotate.c: add 12 go-directly-to-cube-face and 12
- go-directly-to-cube-face-with-window bindings.
-
- * src/display.c (compDisplayInitOptions): fix the binding type on
- WINDOW_MENU.
-
- * plugins/compiz.schemas: Regen. (lower_window, window_menu,
- scale_image, images, resize, flip_move, move_window_types, and the
- new rotate bindings)
-
-2006-04-20 David Reveman <davidr@novell.com>
-
- * src/window.c:
- * src/event.c (handleEvent):
- * src/display.c:
- * include/compiz.h:
- * gnome/window-decorator/gnome-window-decorator.c: Add force quit
- dialog.
-
- * plugins/resize.c: Changed default binding to Button2.
-
- * src/display.c (LOWER_WINDOW_BUTTON_DEFAULT): Button2 -> 6.
-
- * gnome/window-decorator/gnome-window-decorator.c:
- * include/compiz.h:
- * src/event.c (handleEvent):
- * src/display.c: Add window menu binding.
-
- * gnome/window-decorator/gnome-window-decorator.c: Pick up toolkit
- actions from compiz and send gnome panel actions for "main menu" and
- "run dialog" actions.
-
- * src/event.c (handleEvent):
- * src/screen.c:
- * include/compiz.h:
- * src/display.c (addDisplay): panel action -> toolkit action.
-
- * src/window.c (getModalTransient): Group transient must not be an
- ancestor to the window we've currently found as the window to focus.
- (getModalTransient): Check for child modal transient.
-
-2006-04-19 David Reveman <davidr@novell.com>
-
- * gnome/compiz-window-manager.c: Be nice to gnome-theme-manager
- and return a theme even though we currently don't support it.
-
- * include/compiz.h:
- * src/main.c: Remove window-image option.
-
- * include/compiz.h:
- * plugins/water.c:
- * plugins/cube.c:
- * src/texture.c:
- * src/paint.c:
- * src/main.c: Add strict-binding option.
-
-2006-04-18 Dan Winship <danw@novell.com>
-
- * src/event.c (handleEvent): Fix a crasher in the screenshot
- binding code (and rename some of the #defines to make them not so
- ridiculously long). Also temporarily hack around a bug in EV_KEY
- by putting the check for WINDOW_SCREENSHOT before the check for
- SCREENSHOT.
-
- * plugins/scale.c: Change the keybinding again, now to "Pause".
- (F11 is the "fullscreen mode" binding for many apps.)
-
- * plugins/compiz.schemas: update
-
- * plugins/gconf.c:
- * plugins/gconf-compiz-utils.c:
- * plugins/gconf-dump.c: Rearrange #includes to prevent warning
- about TRUE and FALSE being redefined
-
-2006-04-18 David Reveman <davidr@novell.com>
-
- * plugins/rotate.c (ROTATE_FLIPMOVE_DEFAULT): Changed to TRUE.
-
- * src/window.c (recalcWindowActions): Remove maximize and fullscreen
- actions when resizing isn't allowed.
-
- * gnome/window-decorator/gnome-window-decorator.c: Dynamic positioning
- of window buttons.
-
- * plugins/cube.c (readSvgToTexture): Fix typo.
-
- * plugins/resize.c: Constrain cursor movement to min/max window size.
-
- * src/window.c (constrainNewWindowSize): Fix aspect ratio calculations.
-
-2006-04-17 David Reveman <davidr@novell.com>
-
- * plugins/cube.c: Put PNG on top face by default.
-
- * images/Makefile.am: Remove window.png.
- Add novell.png.
-
- * include/compiz.h:
- * src/readpng.c: Add openImageFile.
-
- * plugins/cube.c: Support for PNGs on top face.
- Add scale image option which is used to determine if top face
- image should be scaled or not.
-
-2006-04-15 David Reveman <davidr@novell.com>
-
- * plugins/wobbly.c: Add modal dialog type to default list of windows
- that should be wobbly when moved.
-
- * plugins/water.c (SET): +1 for border.
-
-2006-04-14 Dan Winship <danw@novell.com>
-
- * plugins/gconf-dump.c: add "water" to gconfDeps
-
- * plugins/compiz.schemas: regen including the water options
-
-2006-04-14 David Reveman <davidr@novell.com>
-
- * src/event.c (handleWindowDamageRect): Ignore damage from windows
- that aren't redirected.
-
- * include/compiz.h:
- * src/window.c:
- * src/display.c (eventLoop):
- * src/screen.c: Add support for automatic unredirecting of fullscreen
- windows.
-
- * plugins/scale.c (scaleInitiate): Layout thumbnails before we
- grab the screen to make sure some window exist.
-
- * plugins/resize.c: Allow 4-way resize. (Mike Hearn)
-
-2006-04-13 Dan Winship <danw@novell.com>
-
- * src/screen.c (panelAction): take a timestamp and pass that to
- the panel rather than using CurrentTime
-
- * src/event.c (handleEvent): update for that
-
- * src/window.c (moveResizeWindow): fix the gravity handling so
- self-resizing windows don't dance (although I'm pretty sure this
- is a symptom of mishandling gravity somewhere else).
-
- * plugins/gconf.c (gconfInitOption): Request the default value of
- the key from gconf, rather than initializing the key to the
- internal default value if it hasn't yet been set by the user.
- Notably, this makes it so that "compiz gconf" on a new account
- will use the default value of active_plugins rather than the
- (effectively empty) list of plugins on the command line. (It also
- makes it so that the sysadmin can override defaults via sabayon or
- whatever.)
-
-2006-04-13 David Reveman <davidr@novell.com>
-
- * src/window.c (mapWindow): Maybe not, disable it again. :(
-
- * src/window.c (mapWindow): Enable draw synchronization on map
- again. Should be working correctly with CVS version of X server.
-
-2006-04-12 Dan Winship <danw@novell.com>
-
- * src/window.c (moveResizeWindow): move duplicated code from
- _NET_MOVERESIZE_WINDOW and ConfigureRequest handlers in event.c to
- here, and handle gravity as well. (Fixes bnc 163058.)
- (updateWindowAttributes): Do nothing if the window is
- override_redirect (and remove a few now-redundant checks of that
- elsewhere). Previously we were forgetting to check
- !override_redirect in the case where the motif hints changed. (bnc
- 163931)
- (getWindowUserTime): fix a cut-and-paste-o that caused a crash on
- 64bit machines.
-
- * src/event.c (handleEvent): fix the _NET_MOVERESIZE_WINDOW bit
- manipulation to correspond to what the EWMH means rather than what
- it says, and use moveResizeWindow for that and for
- ConfigureRequest.
-
- * plugins/gconf-compiz-utils.c (gconfBindingToString): DTRT with
- "None" bindings.
-
- * gnome/window-decorator/gnome-window-decorator.c (title_event):
- if the user right-clicks on the titlebar while the context menu is
- popped up, just pop it down and eat the click, like all other
- GNOME context menus do.
- (style_changed, value_changed): Don't add decorations to
- previously-undecorated windows. (bnc 165393)
-
-2006-04-11 David Reveman <davidr@novell.com>
-
- * src/screen.c (addScreen): Fix typo.
-
-2006-04-10 Dan Winship <danw@novell.com>
-
- * src/window.c (focusWindowOnMap): new function to decide whether
- or not to focus a newly-mapped window. In addition to the old
- checks, this also checks that _NET_WM_USER_TIME isn't 0, to allow
- a window to explicitly request to not get focus.
-
- * src/event.c (handleEvent): use focusWindowOnMap when processing
- MapRequest.
-
- * plugins/rotate.c (rotateHandleEvent): fix _NET_ACTIVE_WINDOW
- handling so this doesn't interfere with focusable panel applets.
-
- * plugins/compiz.schemas: regen (fixing cube top/bottom color)
-
- * plugins/gconf-dump.c: Handle CompOptionTypeColor.
-
- * configure.ac: Add --enable-gconf-dump so that the gconf-dump
- plugin doesn't get built in normal builds
-
- * plugins/Makefile.am: make gconf-dump optional.
-
-2006-04-09 Dan Winship <danw@novell.com>
-
- * plugins/gconf-dump.c: add plugin options, and add information
- about restrictions (numeric ranges, specific string values) to the
- long description. Make gconf-dump refuse to run if gconf is
- running (since you want the defaults it writes out to be coming
- from the defaults in the source code, not from any gconf
- overrides).
-
- * plugins/compiz.schemas: regen
-
- * plugins/gconf.c (gconfGetOptionValue): don't call gconfSetOption
- from here, or we'll get an infinite loop when anything changes
-
-2006-04-09 David Reveman <davidr@novell.com>
-
- * include/compiz.h:
- * src/display.c:
- * src/main.c:
- * src/screen.c:
- * src/texture.c:
- * src/window.c: Remove test mode.
-
- * plugins/Makefile.am: Remove schema from CLEANFILES.
-
- * plugins/compiz.schemas:
- * src/display.c:
- Improve documentation for runcommand keys slightly. (Mike Hearn)
-
- * include/compiz.h:
- * src/texture.c:
- * src/screen.c (addScreen): Switch to using GLX 1.3 functions.
- (James Jones)
-
- * src/main.c: Indirect rendering option. (James Jones)
-
-2006-04-08 David Reveman <davidr@novell.com>
-
- * plugins/water.c: Add rain delay option. (Emilie Roberts)
-
-2006-04-07 David Reveman <davidr@novell.com>
-
- * plugins/gconf-dump.c: Dump list options correctly.
-
- * plugins/rotate.c: Add flip_move option, edge flipping is only
- used when moving windows if this option is enabled.
- (rotateHandleEvent): Make we don't rotate when some other plugin
- has grabbed the screen.
-
- * plugins/scale.c: Change default key-binding to F11.
- (scaleInitiate): Make sure screen isn't grabbed by some other plugin.
- (scaleInitScreen): Initialize darkenBack properly.
-
- * configure.ac: Bump version to 0.0.9.
-
- * plugins/Makefile.am (CLEANFILES, EXTRA_DIST): Fix.
-
- * plugins/rotate.c (ROTATE_SPEED_DEFAULT): 1.5.
-
-2006-04-07 Dan Winship <danw@novell.com>
-
- (Much of this patch was written by Radek Doulik
- <rodo@novell.com>.)
-
- * src/display.c:
- * src/event.c:
- * src/screen.c: Move keybinding stuff to CompDisplay, making it no
- longer settable per-screen. Add bindings for screenshots (for
- compatibility with metacity, which handles that keybinding in
- GNOME for historical reasons).
-
- * include/compiz.h: add an explicit CompBindingTypeNone rather
- than relying on modifiers==0 to mean none. Update bindings stuff.
-
- * src/screen.c (removePassiveKeyGrab, removePassiveButtonGrab):
- Fix these to remove the right grab rather than always removing the
- most-recently-added one.
- (addScreenBinding): deal with CompBindingTypeNone
-
- * plugins/gconf-dump.c: hacky plugin to dump information about the
- other plugins to a gconf schemas file (used to regenerate
- compiz.schemas)
-
- * plugins/gconf-compiz-utils.c: shared code between gconf.c and
- gconf-dump.c
-
- * plugins/Makefile.am: add gconf-dump plugin and compiz.schemas,
- and code to install compiz.schemas.
-
- * configure.ac: Update gconf test to set macros needed for schema
- install.
-
-2006-04-07 David Reveman <davidr@novell.com>
-
- * plugins/rotate.c: Add edge flipping support.
-
- * plugins/scale.c: Allow corner screen edges to be used for
- initiating scale mode.
-
- * src/option.c (compSetBoolOption): Only return TRUE if value changed.
-
- * src/screen.c:
- * src/window.c:
- * plugins/minimize.c:
- * plugins/decoration.c:
- * include/compiz.h: Add immediate argument to MoveNotify, immediate
- means that any animations should be avoided.
-
- * src/screen.c:
- * plugins/water.c:
- * plugins/resize.c:
- * plugins/place.c:
- * plugins/move.c:
- * plugins/zoom.c:
- * plugins/rotate.c:
- * plugins/scale.c:
- * src/event.c:
- * include/compiz.h:
- Add previous pointer position that can be shared between multiple
- plugins.
-
-2006-04-06 David Reveman <davidr@novell.com>
-
- * include/compiz.h:
- * src/screen.c: Add screen edges and simple interface for enabling
- and disabling them.
-
- * plugins/switcher.c (switchDamageWindowRect)
- (switchWindowRemove): Update switcher list even when screen isn't
- grabbed.
-
- * plugins/switcher.c (switchDamageWindowRect):
- * include/compiz.h:
- * src/event.c (handleEvent):
- * src/window.c: Made it possible to select if window should be
- stacked above fullscreen windows or not.
-
- * src/window.c (findSiblingBelow): Only find a fullscreen sibling
- if aboveFs is TRUE.
- (activateWindow): Allow stacking of window above fullscreen windows
- when being activated.
-
-2006-04-05 David Reveman <davidr@novell.com>
-
- * plugins/water.c (fboEpilogue): Reset raster position. Avoids
- an FBO/raster-position issue found in newer nvidia drivers.
-
- * plugins/move.c: Add constrain_y option that constrains window
- movement so that top of window is always visible (on by default).
-
- * src/event.c (handleEvent): Change active window property even though