Merge lp:~amaranth/compiz/no_wrapper into lp:~compiz/compiz/ubuntu
- no_wrapper
- Merge into ubuntu
Proposed by
Travis Watkins
Status: | Merged |
---|---|
Merged at revision: | not available |
Proposed branch: | lp:~amaranth/compiz/no_wrapper |
Merge into: | lp:~compiz/compiz/ubuntu |
Diff against target: |
1462 lines (+482/-715) 23 files modified
debian/changelog (+32/-0) debian/compiz-core.install (+1/-2) debian/compiz-core.links (+0/-1) debian/compiz-core.manpages (+0/-1) debian/compiz-manager (+0/-457) debian/compiz-manager.defaults (+0/-7) debian/compiz-wrapper.install (+0/-1) debian/compiz.1 (+52/-20) debian/compiz.real.1 (+0/-64) debian/control (+3/-20) debian/patches/010-disable-child-window-clipping.patch (+8/-8) debian/patches/013-add-cursor-theme-support.patch (+16/-16) debian/patches/015_draw_dock_shadows_on_desktop.patch (+6/-4) debian/patches/016_call_glxwaitx_before_drawing.patch (+5/-3) debian/patches/017_always_unredirect_screensaver_on_nvidia.patch (+5/-5) debian/patches/020_fix_focus.patch (+81/-81) debian/patches/037_fullscreen_stacking_fixes.patch (+4/-4) debian/patches/049-damage-report-non-empty.patch (+8/-8) debian/patches/050_stacking.patch (+4/-4) debian/patches/060_move_checks_to_compiz.patch (+252/-0) debian/patches/099-autogen.patch (+4/-4) debian/patches/series (+1/-0) debian/rules (+0/-5) |
To merge this branch: | bzr merge lp:~amaranth/compiz/no_wrapper |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Michael Vogt | Needs Information | ||
Review via email: mp+15108@code.launchpad.net |
Commit message
Description of the change
To post a comment you must log in.
Revision history for this message
Travis Watkins (amaranth) wrote : | # |
lp:~amaranth/compiz/no_wrapper
updated
- 318. By Travis Watkins
-
fix memleak and xfwm4 checking
Revision history for this message
Michael Vogt (mvo) wrote : | # |
Thanks a lot for working on this. It looks great, the only issue I can see is that compiz-wrapper is used by KDE. So we need to communicate with them that it will go away.
review:
Needs Information
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'debian/changelog' |
2 | --- debian/changelog 2009-10-29 09:43:03 +0000 |
3 | +++ debian/changelog 2009-11-23 15:56:08 +0000 |
4 | @@ -1,3 +1,35 @@ |
5 | +compiz (1:0.8.4-0ubuntu4) lucid; urgency=low |
6 | + |
7 | + * debian/patches/060_move_checks_to_compiz.patch: |
8 | + - add all relevant checks from compiz-manager to compiz itself |
9 | + Compiz already checks for almost everything it needs so there is no |
10 | + need to check twice. |
11 | + * debian/rules: |
12 | + * debian/compiz-core.install: |
13 | + * debian/compiz-core.manpages: |
14 | + - install compiz as compiz, not compiz.real |
15 | + * debian/compiz-manager: |
16 | + * debian/compiz-manager.defaults: |
17 | + * debian/compiz-wrapper.install: |
18 | + * debian/compiz-core.links: |
19 | + debian/compiz.real.1: |
20 | + - no longer needed, deleted |
21 | + * debian/control: |
22 | + - remove compiz-wrapper package |
23 | + * debian/patches/010-disable-child-window-clipping.patch: |
24 | + * debian/patches/013-add-cursor-theme-support.patch: |
25 | + * debian/patches/015_draw_dock_shadows_on_desktop.patch: |
26 | + * debian/patches/016_call_glxwaitx_before_drawing.patch: |
27 | + * debian/patches/017_always_unredirect_screensaver_on_nvidia.patch: |
28 | + * debian/patches/020_fix_focus.patch: |
29 | + * debian/patches/037_fullscreen_stacking_fixes.patch: |
30 | + * debian/patches/049-damage-report-non-empty.patch: |
31 | + * debian/patches/050_stacking.patch: |
32 | + * debian/patches/099-autogen.patch: |
33 | + - refreshed |
34 | + |
35 | + -- Travis Watkins <amaranth@ubuntu.com> Sun, 01 Nov 2009 11:33:21 -0600 |
36 | + |
37 | compiz (1:0.8.4-0ubuntu3) karmic-proposed; urgency=low |
38 | |
39 | * debian/patches/030_from_git_crash_fix_multiscreen.patch: |
40 | |
41 | === modified file 'debian/compiz-core.install' |
42 | --- debian/compiz-core.install 2009-03-06 09:24:34 +0000 |
43 | +++ debian/compiz-core.install 2009-11-23 15:56:08 +0000 |
44 | @@ -1,7 +1,6 @@ |
45 | usr/bin/compiz-decorator |
46 | -usr/bin/compiz.real |
47 | +usr/bin/compiz |
48 | usr/share/compiz/*.png |
49 | usr/share/compiz/core.xml |
50 | usr/share/locale |
51 | usr/share/apport |
52 | -etc/xdg/compiz |
53 | |
54 | === removed file 'debian/compiz-core.links' |
55 | --- debian/compiz-core.links 2008-06-03 12:36:51 +0000 |
56 | +++ debian/compiz-core.links 1970-01-01 00:00:00 +0000 |
57 | @@ -1,1 +0,0 @@ |
58 | -usr/bin/compiz usr/bin/compiz-manager |
59 | |
60 | === modified file 'debian/compiz-core.manpages' |
61 | --- debian/compiz-core.manpages 2007-06-12 08:21:49 +0000 |
62 | +++ debian/compiz-core.manpages 2009-11-23 15:56:08 +0000 |
63 | @@ -1,2 +1,1 @@ |
64 | -debian/compiz.real.1 |
65 | debian/compiz.1 |
66 | |
67 | === removed file 'debian/compiz-manager' |
68 | --- debian/compiz-manager 2009-09-25 21:47:27 +0000 |
69 | +++ debian/compiz-manager 1970-01-01 00:00:00 +0000 |
70 | @@ -1,457 +0,0 @@ |
71 | -#!/bin/sh |
72 | -# Compiz Manager wrapper script |
73 | -# |
74 | -# Copyright (c) 2007 Kristian Lyngstøl <kristian@bohemians.org> |
75 | -# |
76 | -# This program is free software; you can redistribute it and/or modify |
77 | -# it under the terms of the GNU General Public License as published by |
78 | -# the Free Software Foundation; either version 2 of the License, or |
79 | -# (at your option) any later version. |
80 | -# |
81 | -# This program is distributed in the hope that it will be useful, |
82 | -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
83 | -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
84 | -# GNU General Public License for more details. |
85 | -# |
86 | -# |
87 | -# You should have received a copy of the GNU General Public License |
88 | -# along with this program; if not, write to the Free Software |
89 | -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
90 | -# |
91 | -# |
92 | -# Contributions by: Treviño (3v1n0) <trevi55@gmail.com>, Ubuntu Packages |
93 | -# |
94 | -# Much of this code is based on Beryl code, also licensed under the GPL. |
95 | -# This script will detect what options we need to pass to compiz to get it |
96 | -# started, and start a default plugin and possibly window decorator. |
97 | -# |
98 | - |
99 | - |
100 | -COMPIZ_BIN_PATH="/usr/local/bin/" # For window decorators and compiz |
101 | -PLUGIN_PATH="/usr/local/lib/compiz/" |
102 | -GLXINFO="/usr/bin/glxinfo" |
103 | -KWIN="/usr/bin/kwin" |
104 | -METACITY="/usr/bin/metacity" |
105 | -XFWM="/usr/bin/xfwm" |
106 | -COMPIZ_NAME="compiz" # Final name for compiz (compiz.real) |
107 | - |
108 | -# For Xgl LD_PRELOAD |
109 | -LIBGL_NVIDIA="/usr/lib/nvidia/libGL.so.1.2.xlibmesa" |
110 | -LIBGL_FGLRX="/usr/lib/fglrx/libGL.so.1.2.xlibmesa" |
111 | - |
112 | -# Minimum amount of memory (in kilo bytes) that nVidia cards need |
113 | -# to be allowed to start |
114 | -# Set to 262144 to require 256MB |
115 | -NVIDIA_MEMORY="65536" # 64MB |
116 | -NVIDIA_SETTINGS="nvidia-settings" # Assume it's in the path by default |
117 | - |
118 | -# For detecting what driver is in use, the + is for one or more /'s |
119 | -XORG_DRIVER_PATH="/usr/lib/xorg/modules/drivers/+" |
120 | -FALLBACKWM="xterm" |
121 | -if [ x"$KDE_FULL_SESSION" = x"true" ]; then |
122 | - FALLBACKWM="${KWIN}"; |
123 | -elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then |
124 | - FALLBACKWM="${METACITY}" |
125 | -elif xprop -root _DT_SAVE_MODE | grep ' = \"xfce4\"$' >/dev/null 2>&1; then |
126 | - FALLBACKWM="${XFWM}" |
127 | -fi |
128 | - |
129 | -FALLBACKWM_OPTIONS="--replace $@" |
130 | - |
131 | -# Driver whitelist |
132 | -WHITELIST="nvidia intel ati radeon radeonhd i810 fglrx" |
133 | - |
134 | -# blacklist based on the pci ids |
135 | -# See http://wiki.compiz-fusion.org/Hardware/Blacklist for details |
136 | -#T=" 1002:5954 1002:5854 1002:5955" # ati rs480 |
137 | -#T="$T 1002:4153" # ATI Rv350 |
138 | -#T="$T 8086:2982 8086:2992 8086:29a2 8086:2a02 8086:2a12" # intel 965 |
139 | -#T="$T 8086:2a02 " # Intel GM965 |
140 | -T="$T 8086:3577 8086:2562 " # Intel 830MG, 845G (LP: #259385) |
141 | -BLACKLIST_PCIIDS="$T" |
142 | -unset T |
143 | - |
144 | -COMPIZ_OPTIONS="--ignore-desktop-hints --replace" |
145 | -COMPIZ_PLUGINS="move resize place decoration animation" |
146 | - |
147 | -# Use emerald by default if it exist |
148 | -USE_EMERALD="yes" |
149 | - |
150 | -# No indirect by default |
151 | -INDIRECT="no" |
152 | - |
153 | -# Default X.org log if xset q doesn't reveal it |
154 | -XORG_DEFAULT_LOG="/var/log/Xorg.0.log" |
155 | - |
156 | -# Set to yes to enable verbose |
157 | -VERBOSE="yes" |
158 | - |
159 | -# Echos the arguments if verbose |
160 | -verbose() |
161 | -{ |
162 | - if [ "x$VERBOSE" = "xyes" ]; then |
163 | - printf "$*" |
164 | - fi |
165 | -} |
166 | - |
167 | -# abort script and run fallback windowmanager |
168 | -abort_with_fallback_wm() |
169 | -{ |
170 | - if [ "x$SKIP_CHECKS" = "xyes" ]; then |
171 | - verbose "SKIP_CHECKS is yes, so continuing despite problems.\n" |
172 | - return 0; |
173 | - fi |
174 | - |
175 | - if [ "x$CM_DRY" = "xyes" ]; then |
176 | - verbose "Dry run failed: Problems detected with 3D support.'n" |
177 | - exit 1; |
178 | - fi |
179 | - |
180 | - verbose "aborting and using fallback: $FALLBACKWM \n" |
181 | - |
182 | - if [ -x $FALLBACKWM ]; then |
183 | - exec $FALLBACKWM $FALLBACKWM_OPTIONS |
184 | - else |
185 | - printf "no $FALLBACKWM found, exiting\n" |
186 | - exit 1 |
187 | - fi |
188 | -} |
189 | - |
190 | -# Check if we run with the Software Rasterizer, this happens e.g. |
191 | -# when a second screen session is opened via f-u-a on intel |
192 | -check_software_rasterizer() |
193 | -{ |
194 | - verbose "Checking for Software Rasterizer: " |
195 | - if glxinfo 2> /dev/null | egrep -q '^OpenGL renderer string: Software Rasterizer' ; then |
196 | - verbose "present. \n"; |
197 | - return 0; |
198 | - else |
199 | - verbose "Not present. \n" |
200 | - return 1; |
201 | - fi |
202 | - |
203 | -} |
204 | - |
205 | -# Check for non power of two texture support |
206 | -check_npot_texture() |
207 | -{ |
208 | - verbose "Checking for non power of two support: " |
209 | - if glxinfo 2> /dev/null | egrep -q '(GL_ARB_texture_non_power_of_two|GL_NV_texture_rectangle|GL_EXT_texture_rectangle|GL_ARB_texture_rectangle)' ; then |
210 | - verbose "present. \n"; |
211 | - return 0; |
212 | - else |
213 | - verbose "Not present. \n" |
214 | - return 1; |
215 | - fi |
216 | - |
217 | -} |
218 | - |
219 | -# Check for presence of FBConfig |
220 | -check_fbconfig() |
221 | -{ |
222 | - verbose "Checking for FBConfig: " |
223 | - if [ "$INDIRECT" = "yes" ]; then |
224 | - $GLXINFO -i | grep -q GLX.*fbconfig |
225 | - FB=$? |
226 | - else |
227 | - $GLXINFO | grep -q GLX.*fbconfig |
228 | - FB=$? |
229 | - fi |
230 | - |
231 | - if [ $FB = "0" ]; then |
232 | - unset FB |
233 | - verbose "present. \n" |
234 | - return 0; |
235 | - else |
236 | - unset FB |
237 | - verbose "not present. \n" |
238 | - return 1; |
239 | - fi |
240 | -} |
241 | - |
242 | - |
243 | -# Check for TFP |
244 | -check_tfp() |
245 | -{ |
246 | - verbose "Checking for texture_from_pixmap: " |
247 | - if [ $($GLXINFO 2>/dev/null | grep -c GLX_EXT_texture_from_pixmap) -gt 2 ] ; then |
248 | - verbose "present. \n" |
249 | - return 0; |
250 | - else |
251 | - verbose "not present. \n" |
252 | - if [ "$INDIRECT" = "yes" ]; then |
253 | - unset LIBGL_ALWAYS_INDIRECT |
254 | - INDIRECT="no" |
255 | - return 1; |
256 | - else |
257 | - verbose "Trying again with indirect rendering:\n"; |
258 | - INDIRECT="yes" |
259 | - export LIBGL_ALWAYS_INDIRECT=1 |
260 | - check_tfp; |
261 | - return $? |
262 | - fi |
263 | - fi |
264 | -} |
265 | - |
266 | -# Check wether the composite extension is present |
267 | -check_composite() |
268 | -{ |
269 | - verbose "Checking for Composite extension: " |
270 | - if xdpyinfo -queryExtensions | grep -q Composite ; then |
271 | - verbose "present. \n"; |
272 | - return 0; |
273 | - else |
274 | - verbose "not present. \n"; |
275 | - return 1; |
276 | - fi |
277 | -} |
278 | - |
279 | -# Detects if Xgl is running |
280 | -check_xgl() |
281 | -{ |
282 | - verbose "Checking for Xgl: " |
283 | - if xvinfo | grep -q Xgl ; then |
284 | - verbose "present. \n" |
285 | - return 0; |
286 | - else |
287 | - verbose "not present. \n" |
288 | - return 1; |
289 | - fi |
290 | -} |
291 | - |
292 | -# Check if the nVidia card has enough video ram to make sense |
293 | -check_nvidia_memory() |
294 | -{ |
295 | - if [ ! -x "$NVIDIA_SETTINGS" ]; then |
296 | - return 0 |
297 | - fi |
298 | - |
299 | - MEM=$(${NVIDIA_SETTINGS} -q VideoRam | egrep Attribute\ \'VideoRam\'\ .*: | cut -d: -f3 | sed 's/[^0-9]//g') |
300 | - if [ $MEM -lt $NVIDIA_MEMORY ]; then |
301 | - verbose "Less than ${NVIDIA_MEMORY}kb of memory and nVidia"; |
302 | - return 1; |
303 | - fi |
304 | - return 0; |
305 | -} |
306 | - |
307 | -# Check for existence if NV-GLX |
308 | -check_nvidia() |
309 | -{ |
310 | - if [ ! -z $NVIDIA_INTERNAL_TEST ]; then |
311 | - return $NVIDIA_INTERNAL_TEST; |
312 | - fi |
313 | - verbose "Checking for nVidia: " |
314 | - if xdpyinfo | grep -q NV-GLX ; then |
315 | - verbose "present. \n" |
316 | - NVIDIA_INTERNAL_TEST=0 |
317 | - return 0; |
318 | - else |
319 | - verbose "not present. \n" |
320 | - NVIDIA_INTERNAL_TEST=1 |
321 | - return 1; |
322 | - fi |
323 | -} |
324 | - |
325 | -# Check if the max texture size is large enough compared to the resolution |
326 | -check_texture_size() |
327 | -{ |
328 | - # Check how many screens we've got and iterate over them |
329 | - N=$(xdpyinfo | grep -i "number of screens" | sed 's/.*[^0-9]//g') |
330 | - for i in $(seq 1 $N); do |
331 | - verbose "Checking screen $i" |
332 | - TEXTURE_LIMIT=$(glxinfo -l | grep GL_MAX_TEXTURE_SIZE | sed -n "$i s/^.*=[^0-9]//g p") |
333 | - RESOLUTION=$(xdpyinfo | grep -i dimensions: | sed -n -e "$i s/^ *dimensions: *\([0-9]*x[0-9]*\) pixels.*/\1/ p") |
334 | - VRES=$(echo $RESOLUTION | sed 's/.*x//') |
335 | - HRES=$(echo $RESOLUTION | sed 's/x.*//') |
336 | - verbose "Comparing resolution ($RESOLUTION) to maximum 3D texture size ($TEXTURE_LIMIT): "; |
337 | - if [ $VRES -gt $TEXTURE_LIMIT ] || [ $HRES -gt $TEXTURE_LIMIT ]; then |
338 | - verbose "Failed.\n" |
339 | - return 1; |
340 | - fi |
341 | - verbose "Passed.\n" |
342 | - done |
343 | - return 0 |
344 | -} |
345 | - |
346 | -# check driver whitelist |
347 | -running_under_whitelisted_driver() |
348 | -{ |
349 | - LOG=$(xset q|grep "Log file"|awk '{print $3}') |
350 | - if [ "$LOG" = "" ]; then |
351 | - XORG_CURRENT_LOG="/var/log/Xorg.$(echo $DISPLAY | cut -d : -f2 | sed "s/\..*//g").log" |
352 | - if [ -f $XORG_CURRENT_LOG ]; then |
353 | - verbose "xset q doesn't reveal the location of the log file. Using fallback $XORG_CURRENT_LOG \n" |
354 | - LOG=$XORG_CURRENT_LOG; |
355 | - else |
356 | - verbose "xset q doesn't reveal the location of the log file. Using fallback $XORG_DEFAULT_LOG \n" |
357 | - LOG=$XORG_DEFAULT_LOG; |
358 | - fi |
359 | - fi |
360 | - if [ -z "$LOG" ];then |
361 | - verbose "AIEEEEH, no Log file found \n" |
362 | - verbose "$(xset q) \n" |
363 | - return 0 |
364 | - fi |
365 | - for DRV in ${WHITELIST}; do |
366 | - if egrep -q "Loading ${XORG_DRIVER_PATH}${DRV}_drv\.so" $LOG && |
367 | - ! egrep -q "Unloading ${XORG_DRIVER_PATH}${DRV}_drv\.so" $LOG; |
368 | - then |
369 | - return 0 |
370 | - fi |
371 | - done |
372 | - verbose "No whitelisted driver found\n" |
373 | - return 1 |
374 | -} |
375 | - |
376 | -# check pciid blacklist |
377 | -have_blacklisted_pciid() |
378 | -{ |
379 | - OUTPUT=$(lspci -n) |
380 | - for ID in ${BLACKLIST_PCIIDS}; do |
381 | - if echo "$OUTPUT" | egrep -q "$ID"; then |
382 | - verbose "Blacklisted PCIID '$ID' found \n" |
383 | - return 0 |
384 | - fi |
385 | - done |
386 | - OUTPUT=$(lspci -vn | grep -i VGA) |
387 | - verbose "Detected PCI ID for VGA: $OUTPUT\n" |
388 | - return 1 |
389 | -} |
390 | - |
391 | -build_env() |
392 | -{ |
393 | - if check_nvidia; then |
394 | - export __GL_YIELD=NOTHING |
395 | - fi |
396 | - if [ "$INDIRECT" = "yes" ]; then |
397 | - export LIBGL_ALWAYS_INDIRECT=1 |
398 | - fi |
399 | - if check_xgl; then |
400 | - if [ -f ${LIBGL_NVIDIA} ]; then |
401 | - export LD_PRELOAD="${LD_PRELOAD:+${LD_PRELOAD} }${LIBGL_NVIDIA}" |
402 | - verbose "Enabling Xgl with nVidia drivers...\n" |
403 | - fi |
404 | - if [ -f ${LIBGL_FGLRX} ]; then |
405 | - export LD_PRELOAD="${LD_PRELOAD:+${LD_PRELOAD} }${LIBGL_FGLRX}" |
406 | - verbose "Enabling Xgl with fglrx ATi drivers...\n" |
407 | - fi |
408 | - fi |
409 | - |
410 | - export FROM_WRAPPER=yes |
411 | -} |
412 | - |
413 | -build_args() |
414 | -{ |
415 | - if [ "x$INDIRECT" = "xyes" ]; then |
416 | - COMPIZ_OPTIONS="$COMPIZ_OPTIONS --indirect-rendering " |
417 | - fi |
418 | - if [ ! -z "$DESKTOP_AUTOSTART_ID" ]; then |
419 | - COMPIZ_OPTIONS="$COMPIZ_OPTIONS --sm-client-id $DESKTOP_AUTOSTART_ID" |
420 | - fi |
421 | - if check_nvidia; then |
422 | - if [ "x$INDIRECT" != "xyes" ]; then |
423 | - COMPIZ_OPTIONS="$COMPIZ_OPTIONS --loose-binding" |
424 | - fi |
425 | - fi |
426 | -} |
427 | - |
428 | -#################### |
429 | -# Execution begins here. |
430 | - |
431 | -# Read configuration from XDG paths |
432 | -if [ -z "$XDG_CONFIG_DIRS" ]; then |
433 | - test -f /etc/xdg/compiz/compiz-manager && . /etc/xdg/compiz/compiz-manager |
434 | - for f in /etc/xdg/compiz/compiz-manager.d/*; do |
435 | - test -e $f && . $f |
436 | - done |
437 | -else |
438 | - OLD_IFS=$IFS |
439 | - IFS=: |
440 | - for CONFIG_DIR in $XDG_CONFIG_DIRS |
441 | - do |
442 | - test -f $CONFIG_DIR/compiz/compiz-manager && . $CONFIG_DIR/compiz/compiz-manager |
443 | - for f in $CONFIG_DIRS/compiz/compiz-manager.d/*; do |
444 | - test -e $f && . $f |
445 | - done |
446 | - done |
447 | - IFS=$OLD_IFS |
448 | - unset OLD_IFS |
449 | -fi |
450 | - |
451 | -if [ -z "$XDG_CONFIG_HOME" ]; then |
452 | - test -f $HOME/.config/compiz/compiz-manager && . $HOME/.config/compiz/compiz-manager |
453 | -else |
454 | - test -f $XDG_CONFIG_HOME/compiz/compiz-manager && . $XDG_CONFIG_HOME/compiz/compiz-manager |
455 | -fi |
456 | - |
457 | -# Don't use compiz when running the failsafe session |
458 | -if [ "x$GNOME_DESKTOP_SESSION_ID" = "xFailsafe" ]; then |
459 | - abort_with_fallback_wm |
460 | -fi |
461 | - |
462 | -if [ "x$LIBGL_ALWAYS_INDIRECT" = "x1" ]; then |
463 | - INDIRECT="yes"; |
464 | -fi |
465 | - |
466 | -# if we run under Xgl, we can skip some tests here |
467 | -if ! check_xgl; then |
468 | - # if vesa or vga are in use, do not even try glxinfo (LP#119341) |
469 | - if ! running_under_whitelisted_driver || have_blacklisted_pciid; then |
470 | - abort_with_fallback_wm |
471 | - fi |
472 | - # check if we have the required bits to run compiz and if not, |
473 | - # fallback |
474 | - if ! check_tfp || ! check_npot_texture || ! check_composite || ! check_texture_size; then |
475 | - abort_with_fallback_wm |
476 | - fi |
477 | - |
478 | - # check if we run with software rasterizer and if so, bail out |
479 | - if check_software_rasterizer; then |
480 | - verbose "Software rasterizer detected, aborting" |
481 | - abort_with_fallback_wm |
482 | - fi |
483 | - |
484 | - if check_nvidia && ! check_nvidia_memory; then |
485 | - abort_with_fallback_wm |
486 | - fi |
487 | - |
488 | - if ! check_fbconfig; then |
489 | - abort_with_fallback_wm |
490 | - fi |
491 | -fi |
492 | - |
493 | -# load the ccp plugin if present and fallback to plain gconf if not |
494 | -if [ -f ${PLUGIN_PATH}libccp.so ]; then |
495 | - COMPIZ_PLUGINS="$COMPIZ_PLUGINS ccp" |
496 | -elif [ -f ${PLUGIN_PATH}libgconf.so ]; then |
497 | - COMPIZ_PLUGINS="$COMPIZ_PLUGINS glib gconf" |
498 | -fi |
499 | - |
500 | -# enable gnomecompat if we run under gnome |
501 | -if [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ] && [ ! -e ~/.compiz-gnomecompat ]; then |
502 | - verbose "running under gnome seesion, checking for gnomecompat\n" |
503 | - if ! gconftool -g /apps/compiz/general/allscreens/options/active_plugins|grep -q gnomecompat; then |
504 | - verbose "adding missing gnomecompat\n" |
505 | - V=$(gconftool -g /apps/compiz/general/allscreens/options/active_plugins|sed s/mousepoll,/mousepoll,gnomecompat,/) |
506 | - if ! echo $V|grep -q gnomecompat; then |
507 | - verbose "can not add gnomecompat, reseting\n" |
508 | - gconftool --unset /apps/compiz/general/allscreens/options/active_plugins |
509 | - else |
510 | - gconftool -s /apps/compiz/general/allscreens/options/active_plugins --type list --list-type=string $V |
511 | - fi |
512 | - touch ~/.compiz-gnomecompat |
513 | - fi |
514 | -fi |
515 | - |
516 | -# get environment |
517 | -build_env |
518 | -build_args |
519 | - |
520 | -if [ "x$CM_DRY" = "xyes" ]; then |
521 | - verbose "Dry run finished: everything should work with regards to Compiz and 3D.\n" |
522 | - verbose "Execute: ${COMPIZ_BIN_PATH}${COMPIZ_NAME} $COMPIZ_OPTIONS "$@" $COMPIZ_PLUGINS \n" |
523 | - exit 0; |
524 | -fi |
525 | - |
526 | -${COMPIZ_BIN_PATH}${COMPIZ_NAME} $COMPIZ_OPTIONS "$@" $COMPIZ_PLUGINS || exec $FALLBACKWM $FALLBACKWM_OPTIONS |
527 | - |
528 | |
529 | === removed file 'debian/compiz-manager.defaults' |
530 | --- debian/compiz-manager.defaults 2007-10-02 10:08:25 +0000 |
531 | +++ debian/compiz-manager.defaults 1970-01-01 00:00:00 +0000 |
532 | @@ -1,7 +0,0 @@ |
533 | -# Ubuntu specifc compiz-manager configuration file |
534 | -# goes into /etc/xdg/compiz/compiz-manager |
535 | -# works with git://anongit.compiz-fusion.org/fusion/misc/compiz-manager |
536 | -COMPIZ_BIN_PATH="/usr/bin/" |
537 | -PLUGIN_PATH="/usr/lib/compiz/" |
538 | -COMPIZ_NAME="compiz.real" |
539 | - |
540 | |
541 | === removed file 'debian/compiz-wrapper.install' |
542 | --- debian/compiz-wrapper.install 2008-08-08 08:10:58 +0000 |
543 | +++ debian/compiz-wrapper.install 1970-01-01 00:00:00 +0000 |
544 | @@ -1,1 +0,0 @@ |
545 | -usr/bin/compiz |
546 | |
547 | === modified file 'debian/compiz.1' |
548 | --- debian/compiz.1 2007-06-12 08:21:49 +0000 |
549 | +++ debian/compiz.1 2009-11-23 15:56:08 +0000 |
550 | @@ -8,25 +8,57 @@ |
551 | .RI [ options ] |
552 | .RI [ plugins ] |
553 | .SH DESCRIPTION |
554 | -\fBcompiz\fR is a wrapper around the real \fBcompiz.real\fR binary that |
555 | -automatically sets up everything needed to properly run compiz on a Debian |
556 | -system. |
557 | - |
558 | -In order to use the X server's accelerated indirect rendering (AIGLX) |
559 | -capabilities, the wrapper will call \fBcompiz.real\fR with the necessary |
560 | -command-line arguments. |
561 | - |
562 | -If the package \fBcompiz-gtk\fR is installed, the wrapper will automatically |
563 | -start the \fBgtk-window-decorator\fR. |
564 | - |
565 | -The wrapper will also check if the \fBcompiz-plugins\fR package has been |
566 | -installed and load the \fBgconf\fR plugin which will in turn load the standard |
567 | -set of plugins. |
568 | +.B compiz |
569 | +is a compositing window-manager using OpenGL for rendering. |
570 | + |
571 | +.SH OPTIONS |
572 | +.TP |
573 | +.B \-\-help |
574 | +Show summary of options. |
575 | +.TP |
576 | +.B \-v, \-\-version |
577 | +Show version of program. |
578 | +.TP |
579 | +.BI "\-\-display " DISPLAY |
580 | +Manage the display called |
581 | +.I DISPLAY |
582 | +instead of the name obtained from the |
583 | +.I $DISPLAY |
584 | +environment variable. |
585 | +.TP |
586 | +.BI "\-\-refresh\-rate " RATE |
587 | +Set the default refresh rate. |
588 | +.TP |
589 | +.BI \-\-fast\-filter |
590 | +Use a fast texture filter. |
591 | +.TP |
592 | +.BI \-\-indirect\-rendering |
593 | +Force an indirect rendering context. Use this when running compiz on AIGLX. |
594 | +.TP |
595 | +.BI \-\-strict\-binding |
596 | +Enable strict binding of textures. Use this when running compiz on AIGLX. |
597 | +.TP |
598 | +.BI \-\-use\-cow |
599 | +Make use of the composite overlay window. |
600 | +.TP |
601 | +.BI \-\-replace |
602 | +Replace any existing window managers on the given X display. |
603 | +.TP |
604 | +.BI \-\-sm\-disable |
605 | +Disable the session management. |
606 | +.TP |
607 | +.BI "\-\-sm\-client\-id " ID |
608 | +Use the given |
609 | +.I ID |
610 | +as the client ID for session management. |
611 | +.TP |
612 | +.BI "\-\-bg\-image " IMAGE |
613 | +Use |
614 | +.I IMAGE |
615 | +as background image. |
616 | |
617 | .SH AUTHOR |
618 | -The compiz wrapper was written by Thierry Reding <thierry@gilfi.de> for the |
619 | -Debian project (but may be used by others). |
620 | - |
621 | -.SH "SEE ALSO" |
622 | -.BR compiz.real(1) |
623 | - |
624 | +compiz was written by David Reveman <davidr@novell.com> and others. |
625 | +.PP |
626 | +This manual page was written by Thierry Reding <thierry@gilfi.de>, |
627 | +for the Debian project (but may be used by others). |
628 | |
629 | === removed file 'debian/compiz.real.1' |
630 | --- debian/compiz.real.1 2007-06-12 08:21:49 +0000 |
631 | +++ debian/compiz.real.1 1970-01-01 00:00:00 +0000 |
632 | @@ -1,64 +0,0 @@ |
633 | -.TH COMPIZ 1 "September 29, 2006" |
634 | - |
635 | -.SH NAME |
636 | -compiz.real \- OpenGL window and compositing manager |
637 | - |
638 | -.SH SYNOPSIS |
639 | -.B compiz.real |
640 | -.RI [ options ] |
641 | -.RI [ plugins ] |
642 | -.SH DESCRIPTION |
643 | -.B compiz |
644 | -is a compositing window-manager using OpenGL for rendering. |
645 | - |
646 | -.SH OPTIONS |
647 | -.TP |
648 | -.B \-\-help |
649 | -Show summary of options. |
650 | -.TP |
651 | -.B \-v, \-\-version |
652 | -Show version of program. |
653 | -.TP |
654 | -.BI "\-\-display " DISPLAY |
655 | -Manage the display called |
656 | -.I DISPLAY |
657 | -instead of the name obtained from the |
658 | -.I $DISPLAY |
659 | -environment variable. |
660 | -.TP |
661 | -.BI "\-\-refresh\-rate " RATE |
662 | -Set the default refresh rate. |
663 | -.TP |
664 | -.BI \-\-fast\-filter |
665 | -Use a fast texture filter. |
666 | -.TP |
667 | -.BI \-\-indirect\-rendering |
668 | -Force an indirect rendering context. Use this when running compiz on AIGLX. |
669 | -.TP |
670 | -.BI \-\-strict\-binding |
671 | -Enable strict binding of textures. Use this when running compiz on AIGLX. |
672 | -.TP |
673 | -.BI \-\-use\-cow |
674 | -Make use of the composite overlay window. |
675 | -.TP |
676 | -.BI \-\-replace |
677 | -Replace any existing window managers on the given X display. |
678 | -.TP |
679 | -.BI \-\-sm\-disable |
680 | -Disable the session management. |
681 | -.TP |
682 | -.BI "\-\-sm\-client\-id " ID |
683 | -Use the given |
684 | -.I ID |
685 | -as the client ID for session management. |
686 | -.TP |
687 | -.BI "\-\-bg\-image " IMAGE |
688 | -Use |
689 | -.I IMAGE |
690 | -as background image. |
691 | - |
692 | -.SH AUTHOR |
693 | -compiz was written by David Reveman <davidr@novell.com> and others. |
694 | -.PP |
695 | -This manual page was written by Thierry Reding <thierry@gilfi.de>, |
696 | -for the Debian project (but may be used by others). |
697 | |
698 | === modified file 'debian/control' |
699 | --- debian/control 2009-09-27 00:58:35 +0000 |
700 | +++ debian/control 2009-11-23 15:56:08 +0000 |
701 | @@ -46,13 +46,15 @@ |
702 | |
703 | Package: compiz-core |
704 | Architecture: any |
705 | -Depends: ${shlibs:Depends}, ${misc:Depends}, compiz-wrapper (= ${binary:Version}) |
706 | +Depends: ${shlibs:Depends}, ${misc:Depends} |
707 | Recommends: compiz-plugins (= ${binary:Version}) |
708 | Suggests: nvidia-glx (>= 1.0.9625-1) |
709 | Breaks: libcompizconfig0 (<< 0.8.3), |
710 | compiz-fusion-plugins-main (<< 0.8.3), |
711 | compiz-fusion-plugins-extra (<< 0.8.3) |
712 | Provides: compiz-core-abiversion-${coreabiversion} |
713 | +Conflicts: compiz-wrapper (<< 0.8.4-0ubuntu4) |
714 | +Replaces: compiz-wrapper (<< 0.8.4-0ubuntu4) |
715 | Description: OpenGL window and compositing manager |
716 | Compiz brings to life a variety of visual effects that make the Linux desktop |
717 | easier to use, more powerful and intuitive, and more accessible for users |
718 | @@ -65,25 +67,6 @@ |
719 | to create composite images. Compiz achieves its stunning effects by doing |
720 | both of these functions. |
721 | |
722 | -Package: compiz-wrapper |
723 | -Architecture: any |
724 | -Replaces: compiz-core (<< 1:0.7.7+git20080630-0ubuntu3) |
725 | -Depends: ${shlibs:Depends}, ${misc:Depends}, mesa-utils |
726 | -Description: OpenGL window and compositing manager, wrapper script |
727 | - Compiz brings to life a variety of visual effects that make the Linux desktop |
728 | - easier to use, more powerful and intuitive, and more accessible for users |
729 | - with special needs. |
730 | - . |
731 | - Compiz combines together a window manager and a composite manager using |
732 | - OpenGL for rendering. A "window manager" allows the manipulation of the |
733 | - multiple applications and dialog windows that are presented on the screen. A |
734 | - "composite manager" allows windows and other graphics to be combined together |
735 | - to create composite images. Compiz achieves its stunning effects by doing |
736 | - both of these functions. |
737 | - . |
738 | - This package contains the wrapper script for testing if Compiz should be |
739 | - started. It is used by Compiz and KWin. |
740 | - |
741 | Package: compiz-dev |
742 | Architecture: any |
743 | Depends: ${shlibs:Depends}, ${misc:Depends}, |
744 | |
745 | === modified file 'debian/patches/010-disable-child-window-clipping.patch' |
746 | --- debian/patches/010-disable-child-window-clipping.patch 2009-07-20 03:56:18 +0000 |
747 | +++ debian/patches/010-disable-child-window-clipping.patch 2009-11-23 15:56:08 +0000 |
748 | @@ -1,8 +1,8 @@ |
749 | -Index: compiz-0.8.2/src/display.c |
750 | +Index: compiz-0.8.4/src/display.c |
751 | =================================================================== |
752 | ---- compiz-0.8.2.orig/src/display.c 2009-02-15 20:10:23.000000000 +1100 |
753 | -+++ compiz-0.8.2/src/display.c 2009-07-20 13:18:17.000000000 +1000 |
754 | -@@ -2138,6 +2138,23 @@ |
755 | +--- compiz-0.8.4.orig/src/display.c 2009-11-01 11:14:10.317274954 -0600 |
756 | ++++ compiz-0.8.4/src/display.c 2009-11-01 11:14:13.267249390 -0600 |
757 | +@@ -2194,6 +2194,23 @@ |
758 | lastScreen = ScreenCount (dpy) - 1; |
759 | } |
760 | |
761 | @@ -26,11 +26,11 @@ |
762 | for (i = firstScreen; i <= lastScreen; i++) |
763 | { |
764 | Window newWmSnOwner = None, newCmSnOwner = None; |
765 | -Index: compiz-0.8.2/include/compiz-core.h |
766 | +Index: compiz-0.8.4/include/compiz-core.h |
767 | =================================================================== |
768 | ---- compiz-0.8.2.orig/include/compiz-core.h 2009-02-15 20:10:23.000000000 +1100 |
769 | -+++ compiz-0.8.2/include/compiz-core.h 2009-07-20 13:18:17.000000000 +1000 |
770 | -@@ -1024,6 +1024,8 @@ |
771 | +--- compiz-0.8.4.orig/include/compiz-core.h 2009-11-01 11:14:10.317274954 -0600 |
772 | ++++ compiz-0.8.4/include/compiz-core.h 2009-11-01 11:14:13.267249390 -0600 |
773 | +@@ -1027,6 +1027,8 @@ |
774 | |
775 | GLenum textureFilter; |
776 | |
777 | |
778 | === modified file 'debian/patches/013-add-cursor-theme-support.patch' |
779 | --- debian/patches/013-add-cursor-theme-support.patch 2009-07-20 03:56:18 +0000 |
780 | +++ debian/patches/013-add-cursor-theme-support.patch 2009-11-23 15:56:08 +0000 |
781 | @@ -1,7 +1,7 @@ |
782 | -Index: compiz-0.8.2/configure.ac |
783 | +Index: compiz-0.8.4/configure.ac |
784 | =================================================================== |
785 | ---- compiz-0.8.2.orig/configure.ac 2009-03-01 23:10:46.000000000 +1100 |
786 | -+++ compiz-0.8.2/configure.ac 2009-07-20 13:18:22.000000000 +1000 |
787 | +--- compiz-0.8.4.orig/configure.ac 2009-11-01 11:14:09.517249667 -0600 |
788 | ++++ compiz-0.8.4/configure.ac 2009-11-01 11:14:28.704773780 -0600 |
789 | @@ -123,6 +123,7 @@ |
790 | xdamage \ |
791 | xrandr \ |
792 | @@ -10,10 +10,10 @@ |
793 | ice \ |
794 | sm \ |
795 | libxml-2.0 \ |
796 | -Index: compiz-0.8.2/gtk/window-decorator/gtk-window-decorator.c |
797 | +Index: compiz-0.8.4/gtk/window-decorator/gtk-window-decorator.c |
798 | =================================================================== |
799 | ---- compiz-0.8.2.orig/gtk/window-decorator/gtk-window-decorator.c 2009-03-01 23:07:14.000000000 +1100 |
800 | -+++ compiz-0.8.2/gtk/window-decorator/gtk-window-decorator.c 2009-07-20 13:18:22.000000000 +1000 |
801 | +--- compiz-0.8.4.orig/gtk/window-decorator/gtk-window-decorator.c 2009-11-01 11:14:09.517249667 -0600 |
802 | ++++ compiz-0.8.4/gtk/window-decorator/gtk-window-decorator.c 2009-11-01 11:14:28.704773780 -0600 |
803 | @@ -30,6 +30,7 @@ |
804 | #include <X11/cursorfont.h> |
805 | #include <X11/extensions/Xrender.h> |
806 | @@ -130,10 +130,10 @@ |
807 | #elif USE_DBUS_GLIB |
808 | DBusConnection *connection; |
809 | DBusMessage *reply; |
810 | -Index: compiz-0.8.2/metadata/core.xml.in |
811 | +Index: compiz-0.8.4/metadata/core.xml.in |
812 | =================================================================== |
813 | ---- compiz-0.8.2.orig/metadata/core.xml.in 2009-03-01 23:17:25.000000000 +1100 |
814 | -+++ compiz-0.8.2/metadata/core.xml.in 2009-07-20 13:18:22.000000000 +1000 |
815 | +--- compiz-0.8.4.orig/metadata/core.xml.in 2009-11-01 11:14:09.487250184 -0600 |
816 | ++++ compiz-0.8.4/metadata/core.xml.in 2009-11-01 11:14:28.704773780 -0600 |
817 | @@ -35,6 +35,18 @@ |
818 | <min>0</min> |
819 | <max>10000</max> |
820 | @@ -153,10 +153,10 @@ |
821 | <option name="ping_delay" type="int"> |
822 | <_short>Ping Delay</_short> |
823 | <_long>Interval between ping messages</_long> |
824 | -Index: compiz-0.8.2/src/display.c |
825 | +Index: compiz-0.8.4/src/display.c |
826 | =================================================================== |
827 | ---- compiz-0.8.2.orig/src/display.c 2009-07-20 13:18:17.000000000 +1000 |
828 | -+++ compiz-0.8.2/src/display.c 2009-07-20 13:18:22.000000000 +1000 |
829 | +--- compiz-0.8.4.orig/src/display.c 2009-11-01 11:14:13.267249390 -0600 |
830 | ++++ compiz-0.8.4/src/display.c 2009-11-01 11:14:28.704773780 -0600 |
831 | @@ -41,6 +41,8 @@ |
832 | #include <X11/extensions/Xcomposite.h> |
833 | #include <X11/extensions/Xrandr.h> |
834 | @@ -231,11 +231,11 @@ |
835 | default: |
836 | if (compSetDisplayOption (display, o, value)) |
837 | return TRUE; |
838 | -Index: compiz-0.8.2/include/compiz-core.h |
839 | +Index: compiz-0.8.4/include/compiz-core.h |
840 | =================================================================== |
841 | ---- compiz-0.8.2.orig/include/compiz-core.h 2009-07-20 13:18:17.000000000 +1000 |
842 | -+++ compiz-0.8.2/include/compiz-core.h 2009-07-20 13:18:22.000000000 +1000 |
843 | -@@ -772,7 +772,10 @@ |
844 | +--- compiz-0.8.4.orig/include/compiz-core.h 2009-11-01 11:14:13.267249390 -0600 |
845 | ++++ compiz-0.8.4/include/compiz-core.h 2009-11-01 11:14:28.704773780 -0600 |
846 | +@@ -775,7 +775,10 @@ |
847 | #define COMP_DISPLAY_OPTION_IGNORE_HINTS_WHEN_MAXIMIZED 31 |
848 | #define COMP_DISPLAY_OPTION_PING_DELAY 32 |
849 | #define COMP_DISPLAY_OPTION_EDGE_DELAY 33 |
850 | |
851 | === modified file 'debian/patches/015_draw_dock_shadows_on_desktop.patch' |
852 | --- debian/patches/015_draw_dock_shadows_on_desktop.patch 2009-09-27 06:06:57 +0000 |
853 | +++ debian/patches/015_draw_dock_shadows_on_desktop.patch 2009-11-23 15:56:08 +0000 |
854 | @@ -1,6 +1,8 @@ |
855 | ---- compiz-0.8.2/plugins/decoration.c 2009-02-15 03:10:23.000000000 -0600 |
856 | -+++ compiz-0.8.2.new/plugins/decoration.c 2009-08-22 08:17:23.939586726 -0500 |
857 | -@@ -188,6 +188,11 @@ |
858 | +Index: compiz-0.8.4/plugins/decoration.c |
859 | +=================================================================== |
860 | +--- compiz-0.8.4.orig/plugins/decoration.c 2009-11-01 11:14:07.334767959 -0600 |
861 | ++++ compiz-0.8.4/plugins/decoration.c 2009-11-01 11:14:43.594773485 -0600 |
862 | +@@ -190,6 +190,11 @@ |
863 | status = (*w->screen->drawWindow) (w, transform, attrib, region, mask); |
864 | WRAP (ds, w->screen, drawWindow, decorDrawWindow); |
865 | |
866 | @@ -12,7 +14,7 @@ |
867 | if (mask & PAINT_WINDOW_TRANSFORMED_MASK) |
868 | region = &infiniteRegion; |
869 | |
870 | -@@ -224,6 +229,65 @@ |
871 | +@@ -226,6 +231,65 @@ |
872 | attrib, mask); |
873 | } |
874 | |
875 | |
876 | === modified file 'debian/patches/016_call_glxwaitx_before_drawing.patch' |
877 | --- debian/patches/016_call_glxwaitx_before_drawing.patch 2009-09-25 10:43:06 +0000 |
878 | +++ debian/patches/016_call_glxwaitx_before_drawing.patch 2009-11-23 15:56:08 +0000 |
879 | @@ -1,6 +1,8 @@ |
880 | ---- compiz-0.8.3/src/display.c 2009-09-25 05:15:32.584699137 -0500 |
881 | -+++ compiz-0.8.3.new/src/display.c 2009-09-25 05:16:15.596738659 -0500 |
882 | -@@ -1493,6 +1493,8 @@ |
883 | +Index: compiz-0.8.4/src/display.c |
884 | +=================================================================== |
885 | +--- compiz-0.8.4.orig/src/display.c 2009-11-01 11:14:28.704773780 -0600 |
886 | ++++ compiz-0.8.4/src/display.c 2009-11-01 11:14:49.864774846 -0600 |
887 | +@@ -1537,6 +1537,8 @@ |
888 | timeDiff = 0; |
889 | |
890 | makeScreenCurrent (s); |
891 | |
892 | === modified file 'debian/patches/017_always_unredirect_screensaver_on_nvidia.patch' |
893 | --- debian/patches/017_always_unredirect_screensaver_on_nvidia.patch 2009-09-25 21:47:27 +0000 |
894 | +++ debian/patches/017_always_unredirect_screensaver_on_nvidia.patch 2009-11-23 15:56:08 +0000 |
895 | @@ -1,6 +1,7 @@ |
896 | -diff -ur compiz-0.8.3+git20090917/src/paint.c compiz-0.8.3+git20090917.new/src/paint.c |
897 | ---- compiz-0.8.3+git20090917/src/paint.c 2009-08-24 04:41:08.000000000 -0500 |
898 | -+++ compiz-0.8.3+git20090917.new/src/paint.c 2009-09-25 15:16:02.071834076 -0500 |
899 | +Index: compiz-0.8.4/src/paint.c |
900 | +=================================================================== |
901 | +--- compiz-0.8.4.orig/src/paint.c 2009-11-01 11:14:06.064770650 -0600 |
902 | ++++ compiz-0.8.4/src/paint.c 2009-11-01 11:14:56.244749394 -0600 |
903 | @@ -262,6 +262,7 @@ |
904 | CompTransform vTransform; |
905 | int offX, offY; |
906 | @@ -9,7 +10,7 @@ |
907 | |
908 | if (!tmpRegion) |
909 | { |
910 | -@@ -341,9 +342,15 @@ |
911 | +@@ -341,8 +342,14 @@ |
912 | XSubtractRegion (tmpRegion, w->region, tmpRegion); |
913 | |
914 | /* unredirect top most fullscreen windows. */ |
915 | @@ -25,4 +26,3 @@ |
916 | { |
917 | if (XEqualRegion (w->region, &screen->region) && |
918 | !REGION_NOT_EMPTY (tmpRegion)) |
919 | - { |
920 | |
921 | === modified file 'debian/patches/020_fix_focus.patch' |
922 | --- debian/patches/020_fix_focus.patch 2009-10-20 10:34:10 +0000 |
923 | +++ debian/patches/020_fix_focus.patch 2009-11-23 15:56:08 +0000 |
924 | @@ -1,81 +1,81 @@ |
925 | -diff --git a/include/compiz-core.h b/include/compiz-core.h |
926 | -index 9f51e40..5f89ddb 100644 |
927 | ---- a/include/compiz-core.h |
928 | -+++ b/include/compiz-core.h |
929 | -@@ -142,6 +142,7 @@ typedef struct _CompWalker CompWalker; |
930 | - #define CompWindowStateBelowMask (1 << 10) |
931 | - #define CompWindowStateDemandsAttentionMask (1 << 11) |
932 | - #define CompWindowStateDisplayModalMask (1 << 12) |
933 | -+#define CompWindowStateUnmanagingMask (1 << 13) |
934 | - |
935 | - #define MAXIMIZE_STATE (CompWindowStateMaximizedHorzMask | \ |
936 | - CompWindowStateMaximizedVertMask) |
937 | -diff --git a/src/event.c b/src/event.c |
938 | -index aa6f5df..0ab554f 100644 |
939 | ---- a/src/event.c |
940 | -+++ b/src/event.c |
941 | -@@ -1366,13 +1366,14 @@ handleEvent (CompDisplay *d, |
942 | - } |
943 | - else /* X -> Withdrawn */ |
944 | - { |
945 | -+ unsigned int newState = w->state; |
946 | -+ |
947 | - /* Iconic -> Withdrawn */ |
948 | - if (w->state & CompWindowStateHiddenMask) |
949 | - { |
950 | - w->minimized = FALSE; |
951 | - |
952 | -- changeWindowState (w, |
953 | -- w->state & ~CompWindowStateHiddenMask); |
954 | -+ newState &= ~CompWindowStateHiddenMask; |
955 | - |
956 | - updateClientListForScreen (w->screen); |
957 | - } |
958 | -@@ -1380,6 +1381,12 @@ handleEvent (CompDisplay *d, |
959 | - if (!w->attrib.override_redirect) |
960 | - setWmState (d, WithdrawnState, w->id); |
961 | - |
962 | -+ if (w->managed) |
963 | -+ newState |= CompWindowStateUnmanagingMask; |
964 | -+ |
965 | -+ changeWindowState (w, newState); |
966 | -+ |
967 | -+ w->managed = FALSE; |
968 | - w->placed = FALSE; |
969 | - } |
970 | - |
971 | -diff --git a/src/window.c b/src/window.c |
972 | -index dc28ae1..a8870db 100644 |
973 | ---- a/src/window.c |
974 | -+++ b/src/window.c |
975 | -@@ -2554,7 +2554,7 @@ unmapWindow (CompWindow *w) |
976 | - if (w->unmapRefCnt > 0) |
977 | - return; |
978 | - |
979 | -- if (w->managed && !w->placed) /* only for managed and closed windows */ |
980 | -+ if (w->state & CompWindowStateUnmanagingMask) |
981 | - { |
982 | - XWindowChanges xwc; |
983 | - unsigned int xwcm; |
984 | -@@ -2573,7 +2573,7 @@ unmapWindow (CompWindow *w) |
985 | - if (xwcm) |
986 | - configureXWindow (w, xwcm, &xwc); |
987 | - |
988 | -- w->managed = FALSE; |
989 | -+ changeWindowState (w, w->state & ~CompWindowStateUnmanagingMask); |
990 | - } |
991 | - |
992 | - if (w->struts) |
993 | -@@ -2948,6 +2948,12 @@ focusWindow (CompWindow *w) |
994 | - if (!w->managed) |
995 | - return FALSE; |
996 | - |
997 | -+ if (w->destroyed) |
998 | -+ return FALSE; |
999 | -+ |
1000 | -+ if (w->state & CompWindowStateUnmanagingMask) |
1001 | -+ return FALSE; |
1002 | -+ |
1003 | - if (!onCurrentDesktop (w)) |
1004 | - return FALSE; |
1005 | - |
1006 | \ No newline at end of file |
1007 | +Index: compiz-0.8.4/include/compiz-core.h |
1008 | +=================================================================== |
1009 | +--- compiz-0.8.4.orig/include/compiz-core.h 2009-11-01 11:14:28.704773780 -0600 |
1010 | ++++ compiz-0.8.4/include/compiz-core.h 2009-11-01 11:15:04.254773783 -0600 |
1011 | +@@ -142,6 +142,7 @@ |
1012 | + #define CompWindowStateBelowMask (1 << 10) |
1013 | + #define CompWindowStateDemandsAttentionMask (1 << 11) |
1014 | + #define CompWindowStateDisplayModalMask (1 << 12) |
1015 | ++#define CompWindowStateUnmanagingMask (1 << 13) |
1016 | + |
1017 | + #define MAXIMIZE_STATE (CompWindowStateMaximizedHorzMask | \ |
1018 | + CompWindowStateMaximizedVertMask) |
1019 | +Index: compiz-0.8.4/src/event.c |
1020 | +=================================================================== |
1021 | +--- compiz-0.8.4.orig/src/event.c 2009-11-01 11:14:04.764750121 -0600 |
1022 | ++++ compiz-0.8.4/src/event.c 2009-11-01 11:15:04.254773783 -0600 |
1023 | +@@ -1366,13 +1366,14 @@ |
1024 | + } |
1025 | + else /* X -> Withdrawn */ |
1026 | + { |
1027 | ++ unsigned int newState = w->state; |
1028 | ++ |
1029 | + /* Iconic -> Withdrawn */ |
1030 | + if (w->state & CompWindowStateHiddenMask) |
1031 | + { |
1032 | + w->minimized = FALSE; |
1033 | + |
1034 | +- changeWindowState (w, |
1035 | +- w->state & ~CompWindowStateHiddenMask); |
1036 | ++ newState &= ~CompWindowStateHiddenMask; |
1037 | + |
1038 | + updateClientListForScreen (w->screen); |
1039 | + } |
1040 | +@@ -1380,6 +1381,12 @@ |
1041 | + if (!w->attrib.override_redirect) |
1042 | + setWmState (d, WithdrawnState, w->id); |
1043 | + |
1044 | ++ if (w->managed) |
1045 | ++ newState |= CompWindowStateUnmanagingMask; |
1046 | ++ |
1047 | ++ changeWindowState (w, newState); |
1048 | ++ |
1049 | ++ w->managed = FALSE; |
1050 | + w->placed = FALSE; |
1051 | + } |
1052 | + |
1053 | +Index: compiz-0.8.4/src/window.c |
1054 | +=================================================================== |
1055 | +--- compiz-0.8.4.orig/src/window.c 2009-11-01 11:14:04.774749786 -0600 |
1056 | ++++ compiz-0.8.4/src/window.c 2009-11-01 11:15:04.264770655 -0600 |
1057 | +@@ -2554,7 +2554,7 @@ |
1058 | + if (w->unmapRefCnt > 0) |
1059 | + return; |
1060 | + |
1061 | +- if (w->managed && !w->placed) /* only for managed and closed windows */ |
1062 | ++ if (w->state & CompWindowStateUnmanagingMask) |
1063 | + { |
1064 | + XWindowChanges xwc; |
1065 | + unsigned int xwcm; |
1066 | +@@ -2573,7 +2573,7 @@ |
1067 | + if (xwcm) |
1068 | + configureXWindow (w, xwcm, &xwc); |
1069 | + |
1070 | +- w->managed = FALSE; |
1071 | ++ changeWindowState (w, w->state & ~CompWindowStateUnmanagingMask); |
1072 | + } |
1073 | + |
1074 | + if (w->struts) |
1075 | +@@ -2948,6 +2948,12 @@ |
1076 | + if (!w->managed) |
1077 | + return FALSE; |
1078 | + |
1079 | ++ if (w->destroyed) |
1080 | ++ return FALSE; |
1081 | ++ |
1082 | ++ if (w->state & CompWindowStateUnmanagingMask) |
1083 | ++ return FALSE; |
1084 | ++ |
1085 | + if (!onCurrentDesktop (w)) |
1086 | + return FALSE; |
1087 | + |
1088 | |
1089 | === modified file 'debian/patches/037_fullscreen_stacking_fixes.patch' |
1090 | --- debian/patches/037_fullscreen_stacking_fixes.patch 2009-02-10 10:10:24 +0000 |
1091 | +++ debian/patches/037_fullscreen_stacking_fixes.patch 2009-11-23 15:56:08 +0000 |
1092 | @@ -1,8 +1,8 @@ |
1093 | -Index: compiz-0.7.9+git20090210/plugins/move.c |
1094 | +Index: compiz-0.8.4/plugins/move.c |
1095 | =================================================================== |
1096 | ---- compiz-0.7.9+git20090210.orig/plugins/move.c 2009-02-09 15:48:57.000000000 +0100 |
1097 | -+++ compiz-0.7.9+git20090210/plugins/move.c 2009-02-10 10:46:04.000000000 +0100 |
1098 | -@@ -123,6 +123,11 @@ |
1099 | +--- compiz-0.8.4.orig/plugins/move.c 2009-11-01 11:14:02.664749070 -0600 |
1100 | ++++ compiz-0.8.4/plugins/move.c 2009-11-01 11:15:16.144776559 -0600 |
1101 | +@@ -124,6 +124,11 @@ |
1102 | xid = getIntOptionNamed (option, nOption, "window", 0); |
1103 | |
1104 | w = findWindowAtDisplay (d, xid); |
1105 | |
1106 | === modified file 'debian/patches/049-damage-report-non-empty.patch' |
1107 | --- debian/patches/049-damage-report-non-empty.patch 2009-07-20 03:56:18 +0000 |
1108 | +++ debian/patches/049-damage-report-non-empty.patch 2009-11-23 15:56:08 +0000 |
1109 | @@ -1,8 +1,8 @@ |
1110 | -Index: compiz-0.8.2/src/event.c |
1111 | +Index: compiz-0.8.4/src/event.c |
1112 | =================================================================== |
1113 | ---- compiz-0.8.2.orig/src/event.c 2009-02-15 20:10:23.000000000 +1100 |
1114 | -+++ compiz-0.8.2/src/event.c 2009-07-20 13:19:52.000000000 +1000 |
1115 | -@@ -2293,32 +2293,50 @@ |
1116 | +--- compiz-0.8.4.orig/src/event.c 2009-11-01 11:15:04.254773783 -0600 |
1117 | ++++ compiz-0.8.4/src/event.c 2009-11-01 11:15:20.277268053 -0600 |
1118 | +@@ -2299,32 +2299,50 @@ |
1119 | |
1120 | if (w) |
1121 | { |
1122 | @@ -66,11 +66,11 @@ |
1123 | } |
1124 | } |
1125 | else if (d->shapeExtension && |
1126 | -Index: compiz-0.8.2/src/window.c |
1127 | +Index: compiz-0.8.4/src/window.c |
1128 | =================================================================== |
1129 | ---- compiz-0.8.2.orig/src/window.c 2009-03-01 23:07:15.000000000 +1100 |
1130 | -+++ compiz-0.8.2/src/window.c 2009-07-20 13:19:52.000000000 +1000 |
1131 | -@@ -2204,7 +2204,7 @@ |
1132 | +--- compiz-0.8.4.orig/src/window.c 2009-11-01 11:15:04.264770655 -0600 |
1133 | ++++ compiz-0.8.4/src/window.c 2009-11-01 11:15:20.277268053 -0600 |
1134 | +@@ -2202,7 +2202,7 @@ |
1135 | XUnionRegion (&rect, w->region, w->region); |
1136 | |
1137 | w->damage = XDamageCreate (d->display, id, |
1138 | |
1139 | === modified file 'debian/patches/050_stacking.patch' |
1140 | --- debian/patches/050_stacking.patch 2009-04-06 12:29:08 +0000 |
1141 | +++ debian/patches/050_stacking.patch 2009-11-23 15:56:08 +0000 |
1142 | @@ -1,8 +1,8 @@ |
1143 | -Index: compiz-0.8.2/src/event.c |
1144 | +Index: compiz-0.8.4/src/event.c |
1145 | =================================================================== |
1146 | ---- compiz-0.8.2.orig/src/event.c 2009-04-06 14:06:44.000000000 +0200 |
1147 | -+++ compiz-0.8.2/src/event.c 2009-04-06 14:10:24.000000000 +0200 |
1148 | -@@ -2072,7 +2072,7 @@ |
1149 | +--- compiz-0.8.4.orig/src/event.c 2009-11-01 11:15:20.277268053 -0600 |
1150 | ++++ compiz-0.8.4/src/event.c 2009-11-01 11:15:28.207250353 -0600 |
1151 | +@@ -2078,7 +2078,7 @@ |
1152 | focus = allowWindowFocus (w, NO_FOCUS_MASK, |
1153 | w->screen->x, w->screen->y, 0); |
1154 | |
1155 | |
1156 | === added file 'debian/patches/060_move_checks_to_compiz.patch' |
1157 | --- debian/patches/060_move_checks_to_compiz.patch 1970-01-01 00:00:00 +0000 |
1158 | +++ debian/patches/060_move_checks_to_compiz.patch 2009-11-23 15:56:08 +0000 |
1159 | @@ -0,0 +1,252 @@ |
1160 | +Index: compiz-0.8.4/src/main.c |
1161 | +=================================================================== |
1162 | +--- compiz-0.8.4.orig/src/main.c 2009-11-03 07:39:05.837283646 -0600 |
1163 | ++++ compiz-0.8.4/src/main.c 2009-11-03 07:39:20.767284176 -0600 |
1164 | +@@ -74,6 +74,13 @@ |
1165 | + |
1166 | + CompMetadata coreMetadata; |
1167 | + |
1168 | ++char *blacklist[] = { |
1169 | ++ "8086:3577", /* Intel 830MG, 845G (LP: #259385) */ |
1170 | ++ "8086:2562", |
1171 | ++ |
1172 | ++ NULL |
1173 | ++}; |
1174 | ++ |
1175 | + static void |
1176 | + usage (void) |
1177 | + { |
1178 | +@@ -157,6 +164,28 @@ |
1179 | + return "Unknown"; |
1180 | + } |
1181 | + |
1182 | ++void |
1183 | ++launchFallbackWM (void) |
1184 | ++{ |
1185 | ++ char *fallback = NULL; |
1186 | ++ |
1187 | ++ if (getenv ("KDE_FULL_SESSION") != NULL) |
1188 | ++ fallback = "kwin"; |
1189 | ++ else if (getenv ("GNOME_DESKTOP_SESSION_ID") != NULL) |
1190 | ++ fallback = "metacity"; |
1191 | ++ else if (access ("/usr/bin/xfwm4", F_OK) == 0) |
1192 | ++ fallback = "xfwm4"; |
1193 | ++ |
1194 | ++ printf ("\nLaunching fallback window manager\n"); |
1195 | ++ if (fallback != NULL) |
1196 | ++ execlp (fallback, fallback, "--replace", (char *)NULL); |
1197 | ++ else |
1198 | ++ execlp ("xterm", "xterm", (char *)NULL); |
1199 | ++ |
1200 | ++ /* we should never get here but if we do just exit */ |
1201 | ++ exit (EXIT_FAILURE); |
1202 | ++} |
1203 | ++ |
1204 | + static void |
1205 | + signalHandler (int sig) |
1206 | + { |
1207 | +@@ -166,6 +195,9 @@ |
1208 | + case SIGCHLD: |
1209 | + waitpid (-1, &status, WNOHANG | WUNTRACED); |
1210 | + break; |
1211 | ++ case SIGSEGV: |
1212 | ++ launchFallbackWM (); |
1213 | ++ break; |
1214 | + case SIGHUP: |
1215 | + restartSignal = TRUE; |
1216 | + break; |
1217 | +@@ -259,15 +291,35 @@ |
1218 | + Bool disableSm = FALSE; |
1219 | + char *clientId = NULL; |
1220 | + char *refreshRateArg = NULL; |
1221 | ++ char *command; |
1222 | + |
1223 | + programName = argv[0]; |
1224 | + programArgc = argc; |
1225 | + programArgv = argv; |
1226 | + |
1227 | ++ if (getenv ("GNOME_DESKTOP_SESSION_ID") != NULL && |
1228 | ++ strcmp (getenv ("GNOME_DESKTOP_SESSION_ID"), "Failsafe") == 0) |
1229 | ++ { |
1230 | ++ printf ("Detected GNOME failsafe session.\n"); |
1231 | ++ launchFallbackWM (); |
1232 | ++ } |
1233 | ++ |
1234 | ++ for (i = 0; blacklist[i] != NULL; i++) |
1235 | ++ { |
1236 | ++ asprintf (&command, "lspci -n | grep -q %s", blacklist[i]); |
1237 | ++ if (system(command) == 0) |
1238 | ++ { |
1239 | ++ printf ("Blacklisted PCI ID %s detected\n", blacklist[i]); |
1240 | ++ launchFallbackWM (); |
1241 | ++ } |
1242 | ++ free (command); |
1243 | ++ } |
1244 | ++ |
1245 | + signal (SIGHUP, signalHandler); |
1246 | + signal (SIGCHLD, signalHandler); |
1247 | + signal (SIGINT, signalHandler); |
1248 | + signal (SIGTERM, signalHandler); |
1249 | ++ signal (SIGSEGV, signalHandler); |
1250 | + |
1251 | + emptyRegion.rects = &emptyRegion.extents; |
1252 | + emptyRegion.numRects = 0; |
1253 | +@@ -286,6 +337,13 @@ |
1254 | + |
1255 | + memset (&ctx, 0, sizeof (ctx)); |
1256 | + |
1257 | ++ /* if no options are passed run with defaults */ |
1258 | ++ if (argc == 1) |
1259 | ++ { |
1260 | ++ useDesktopHints = FALSE; |
1261 | ++ replaceCurrentWm = TRUE; |
1262 | ++ } |
1263 | ++ |
1264 | + for (i = 1; i < argc; i++) |
1265 | + { |
1266 | + if (!strcmp (argv[i], "--help")) |
1267 | +@@ -388,6 +446,16 @@ |
1268 | + } |
1269 | + } |
1270 | + |
1271 | ++ /* add in default plugins if none are given */ |
1272 | ++ if (nPlugin == 0) |
1273 | ++ { |
1274 | ++ plugin[nPlugin++] = "ccp"; |
1275 | ++ plugin[nPlugin++] = "move"; |
1276 | ++ plugin[nPlugin++] = "resize"; |
1277 | ++ plugin[nPlugin++] = "place"; |
1278 | ++ plugin[nPlugin++] = "decoration"; |
1279 | ++ } |
1280 | ++ |
1281 | + if (refreshRateArg) |
1282 | + { |
1283 | + ctx.refreshRateData = malloc (strlen (refreshRateArg) + 256); |
1284 | +@@ -462,7 +530,7 @@ |
1285 | + initSession (clientId); |
1286 | + |
1287 | + if (!addDisplay (displayName)) |
1288 | +- return 1; |
1289 | ++ launchFallbackWM (); |
1290 | + |
1291 | + eventLoop (); |
1292 | + |
1293 | +Index: compiz-0.8.4/src/screen.c |
1294 | +=================================================================== |
1295 | +--- compiz-0.8.4.orig/src/screen.c 2009-11-03 07:39:05.847296790 -0600 |
1296 | ++++ compiz-0.8.4/src/screen.c 2009-11-03 07:39:20.767284176 -0600 |
1297 | +@@ -1722,7 +1722,7 @@ |
1298 | + Window *children; |
1299 | + unsigned int nchildren; |
1300 | + int defaultDepth, nvisinfo, nElements, value, i; |
1301 | +- const char *glxExtensions, *glExtensions; |
1302 | ++ const char *glxExtensions, *glExtensions, *glRenderer; |
1303 | + XSetWindowAttributes attrib; |
1304 | + GLfloat globalAmbient[] = { 0.1f, 0.1f, 0.1f, 0.1f }; |
1305 | + GLfloat ambientLight[] = { 0.0f, 0.0f, 0.0f, 0.0f }; |
1306 | +@@ -1989,6 +1989,34 @@ |
1307 | + glxExtensions = glXQueryExtensionsString (dpy, screenNum); |
1308 | + if (!strstr (glxExtensions, "GLX_EXT_texture_from_pixmap")) |
1309 | + { |
1310 | ++ /* try again with indirect rendering */ |
1311 | ++ if (!indirectRendering) |
1312 | ++ { |
1313 | ++ char **copy; |
1314 | ++ |
1315 | ++ copy = (char **)malloc ((programArgc + 2) * sizeof (char *)); |
1316 | ++ for (i = 0; i < programArgc; i++) |
1317 | ++ { |
1318 | ++ copy[i] = strdup (programArgv[i]); |
1319 | ++ } |
1320 | ++ copy[i++] = "--indirect-rendering"; |
1321 | ++ copy[i] = NULL; |
1322 | ++ execvp (programName, copy); |
1323 | ++ |
1324 | ++ /* if we made it here execvp failed */ |
1325 | ++ for (i = 0; copy[i] != NULL; i++) |
1326 | ++ { |
1327 | ++ free (copy[i]); |
1328 | ++ } |
1329 | ++ free (copy); |
1330 | ++ |
1331 | ++ compLogMessage ("core", CompLogLevelFatal, |
1332 | ++ "Failed to launch with --indirect-rendering"); |
1333 | ++ XFree (visinfo); |
1334 | ++ |
1335 | ++ return FALSE; |
1336 | ++ } |
1337 | ++ |
1338 | + compLogMessage ("core", CompLogLevelFatal, |
1339 | + "GLX_EXT_texture_from_pixmap is missing"); |
1340 | + XFree (visinfo); |
1341 | +@@ -2074,6 +2102,16 @@ |
1342 | + return FALSE; |
1343 | + } |
1344 | + |
1345 | ++ glRenderer = (const char *) glGetString (GL_RENDERER); |
1346 | ++ if (glRenderer != NULL && |
1347 | ++ (strcmp (glRenderer, "Software Rasterizer") == 0 || |
1348 | ++ strcmp (glRenderer, "Mesa X11") == 0)) |
1349 | ++ { |
1350 | ++ compLogMessage ("core", CompLogLevelFatal, |
1351 | ++ "Software rendering detected."); |
1352 | ++ return FALSE; |
1353 | ++ } |
1354 | ++ |
1355 | + s->textureNonPowerOfTwo = 0; |
1356 | + if (strstr (glExtensions, "GL_ARB_texture_non_power_of_two")) |
1357 | + s->textureNonPowerOfTwo = 1; |
1358 | +Index: compiz-0.8.4/src/texture.c |
1359 | +=================================================================== |
1360 | +--- compiz-0.8.4.orig/src/texture.c 2009-11-03 07:39:05.857274944 -0600 |
1361 | ++++ compiz-0.8.4/src/texture.c 2009-11-03 07:39:53.717381188 -0600 |
1362 | +@@ -33,6 +33,8 @@ |
1363 | + |
1364 | + #include <compiz-core.h> |
1365 | + |
1366 | ++void launchFallbackWM (void); |
1367 | ++ |
1368 | + static CompMatrix _identity_matrix = { |
1369 | + 1.0f, 0.0f, |
1370 | + 0.0f, 1.0f, |
1371 | +@@ -244,13 +246,21 @@ |
1372 | + CompFBConfig *config = &screen->glxPixmapFBConfigs[depth]; |
1373 | + int attribs[7], i = 0; |
1374 | + |
1375 | ++ if (width > screen->maxTextureSize || height > screen->maxTextureSize) |
1376 | ++ { |
1377 | ++ compLogMessage ("core", CompLogLevelWarn, |
1378 | ++ "Exceeded max texture size"); |
1379 | ++ |
1380 | ++ launchFallbackWM (); |
1381 | ++ } |
1382 | ++ |
1383 | + if (!config->fbConfig) |
1384 | + { |
1385 | + compLogMessage ("core", CompLogLevelWarn, |
1386 | + "No GLXFBConfig for depth %d", |
1387 | + depth); |
1388 | + |
1389 | +- return FALSE; |
1390 | ++ launchFallbackWM (); |
1391 | + } |
1392 | + |
1393 | + attribs[i++] = GLX_TEXTURE_FORMAT_EXT; |
1394 | +@@ -295,7 +305,7 @@ |
1395 | + compLogMessage ("core", CompLogLevelWarn, |
1396 | + "glXCreatePixmap failed"); |
1397 | + |
1398 | +- return FALSE; |
1399 | ++ launchFallbackWM (); |
1400 | + } |
1401 | + |
1402 | + if (!target) |
1403 | +@@ -345,7 +355,7 @@ |
1404 | + (*screen->destroyPixmap) (screen->display->display, texture->pixmap); |
1405 | + texture->pixmap = None; |
1406 | + |
1407 | +- return FALSE; |
1408 | ++ launchFallbackWM (); |
1409 | + } |
1410 | + |
1411 | + if (!texture->name) |
1412 | |
1413 | === modified file 'debian/patches/099-autogen.patch' |
1414 | --- debian/patches/099-autogen.patch 2009-07-20 03:56:18 +0000 |
1415 | +++ debian/patches/099-autogen.patch 2009-11-23 15:56:08 +0000 |
1416 | @@ -1,8 +1,8 @@ |
1417 | -Index: compiz-0.8.2/configure |
1418 | +Index: compiz-0.8.4/configure |
1419 | =================================================================== |
1420 | ---- compiz-0.8.2.orig/configure 2009-03-01 23:15:41.000000000 +1100 |
1421 | -+++ compiz-0.8.2/configure 2009-07-20 13:19:56.000000000 +1000 |
1422 | -@@ -24121,6 +24121,7 @@ |
1423 | +--- compiz-0.8.4.orig/configure 2009-11-01 11:14:00.257251193 -0600 |
1424 | ++++ compiz-0.8.4/configure 2009-11-01 11:15:36.224776324 -0600 |
1425 | +@@ -17023,6 +17023,7 @@ |
1426 | xdamage \ |
1427 | xrandr \ |
1428 | xinerama \ |
1429 | |
1430 | === modified file 'debian/patches/series' |
1431 | --- debian/patches/series 2009-10-29 09:43:03 +0000 |
1432 | +++ debian/patches/series 2009-11-23 15:56:08 +0000 |
1433 | @@ -15,4 +15,5 @@ |
1434 | 049-damage-report-non-empty.patch |
1435 | #090_profiling |
1436 | 050_stacking.patch |
1437 | +060_move_checks_to_compiz.patch |
1438 | 099-autogen.patch |
1439 | |
1440 | === modified file 'debian/rules' |
1441 | --- debian/rules 2009-09-30 14:31:06 +0000 |
1442 | +++ debian/rules 2009-11-23 15:56:08 +0000 |
1443 | @@ -48,7 +48,6 @@ |
1444 | --disable-kde \ |
1445 | --disable-kconfig \ |
1446 | --enable-librsvg \ |
1447 | - --enable-gconf-dump \ |
1448 | --with-default-plugins="$(PLUGINS)" |
1449 | |
1450 | build: patch build-stamp |
1451 | @@ -88,11 +87,7 @@ |
1452 | |
1453 | cd obj-$(DEB_BUILD_GNU_TYPE) && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install |
1454 | |
1455 | - mv $(CURDIR)/debian/tmp/usr/bin/compiz $(CURDIR)/debian/tmp/usr/bin/compiz.real |
1456 | - $(INSTALL) --mode 0755 debian/compiz-manager $(CURDIR)/debian/tmp/usr/bin/compiz |
1457 | $(INSTALL) --mode 0755 debian/compiz-decorator $(CURDIR)/debian/tmp/usr/bin/ |
1458 | - mkdir -p $(CURDIR)/debian/tmp/etc/xdg/compiz |
1459 | - $(INSTALL) --mode 0644 debian/compiz-manager.defaults $(CURDIR)/debian/tmp/etc/xdg/compiz/compiz-manager |
1460 | |
1461 | # apport hook |
1462 | mkdir -p $(CURDIR)/debian/tmp/usr/share/apport/package-hooks |
Replaces the compiz shell script with code in the actual compiz binary to handle feature checking. This reduces duplication of features compiz already checks for and should provide a faster login since it does not load a shell script and a bunch of command line utilities.