From 1546eb4f6ed50dd20f0cc0ed3b0240507747b2ea Mon Sep 17 00:00:00 2001 From: Olivier Fourdan <fourdan.olivier@wanadoo.fr> Date: Fri, 8 Oct 2004 22:42:59 +0000 Subject: [PATCH] Various optilizations in compositor (Old svn revision: 12047) --- po/es.gmo | Bin 5703 -> 11260 bytes po/es_MX.gmo | Bin 5413 -> 11260 bytes src/client.c | 4 +-- src/compositor.c | 72 +++++++++++++++++++++++++---------------------- 4 files changed, 41 insertions(+), 35 deletions(-) diff --git a/po/es.gmo b/po/es.gmo index 348b2f68346b328c64677adf946752af474646c1..ce37ed2da10a3651e59193179757353d24b4847b 100644 GIT binary patch literal 11260 zcmbW6e~>1{S;rgseF*|dJQ9N39A@F*ZkOHr&2j<uZf_6dcJFe#+$BO>XWw_;cZYl5 znU|UO-Mu}6Ne&Vt1~JA6#3XV`P%A&G2qdLYL2;`ju~L{nv?`=fOiC#<L95U*8e{bH z?e2NsdGBt)%G5sZXQsQS`{}2je!6@1@7{FACk)pk$R)^*GmUu>-nNP#u5X=Z%piOo zz5|~9)5cs5H^8-U8vY#YK;=K=pPz<T@cdo>yy|>o-p2C~RQVg>Wv~HP!~1>yqwq?e z{|s(|{|vXlOD{0yEI0#E#oP+dfw6zi;0VtjfO_vsKK~`3|F7_^r2h|m3tWAn(|<iw z`Xp5SHTVYDgs5(o;ClEGsQx|S)1QZ!%DfEU2>%714gVXS3r~NOG2EK-AWfPzQ2iW+ zm%=?z{iu1i;Q-IapvwOtRDFK}W$$O;I`}fw&|LUtWB4<d@S}Ey;TdozlwNxve`b;& z^(TZs1DjC&yc??gy-@Al4^{4AD7${%=YJWh{F6}qd<Lq2&q3+;EqF8hd#Lv|U|fdG zY=QEp-SA>K2i4wPQ0*P_{5X{UkHDXWUxD(gzlM76KRho)c|C9N+~Yatd6(ydo{xJz z2Q`lW1Z9{1glhlCKK*<KMg6!Gl4LH28mArnU}`fB^?uE>17(MM;AZ$SsB(Yd`8>oF z=KE0Xn2TKf7eclFHvhcFKVJc5-$AH$Hbaf?E}uUI)!q!0eM5LHydBD(k3!Y^IVk%* z=J{7X{S~P9|II(k+2wa<LD~5&@EW)k%FkL*^*sPJj-Q6o=L=Bd^v6E`FQNS9n^1ba z02wOtkN)|GQ2L$Dq*uSrff~Pypz7HOWuI{<{ciD`^Z6-M{U7wa&+{SA&w4)Q`Bl%a zd;X2*cc9vP1*$*)3)P?VQHCKh7el3wz%6hLZiS0b<MKr)dwkjRDWCof96HUIufdJv z|KRQTCcFx#7Z1U!;XQB!J^>ZiUV;Pg0tQR|vlWiQ!!Ur4!mHr3P;v5ANE2o?LE{~8 z1gidn@J4tyoPghe()Z14+`PLOYFxHK+5ZM8J@>)w@EDZeKLt_UEJIW?FG98VBPf5k zC~$st9aR0dLDg4*vRek#zhhASeFAD8{R33_A3~Ks4QEq(7eMLtRw#d23+0bn{qs1a zE9N~=<8}n9oqORB{3O);`Z`oSe+$*_OK=BV&7vZ|nTG1mEL8vA2i5+AP=5I^WJ;LN zLh1Ka7{G5p>HP{+`G1GFjQJ6i9;+D?rC$ye2Zx~A+YZ%_aVY;f;Pc-L5At01&rd`3 z>uXT<{WjFNp2m;->~g5~HoyQ*K-r@X`7<Bp2UX1HAg*Da^ZdT&Dx6E{>pUkstDeU^ zANG72YP?^7vgZ$=#!t%0&a2@W@G2;KT@5j{*#p&&7^>WzP~&+&lpP*{o8XtA%D)8H z!E>%~{T_kp$Gf5Icqcp?e#k%H2c^#g@GST+R6BnFW$&ka{<BbV<eO0Cz5~_n%kWHi z35}|r%OD}itcR###-Z{LL%MA4fO`J{DE&VJHD5jtH6AZQ&Ab1CXT!^x%<AtDRQ%rs zWsigK95@eE&mHiM@cmHs`zSmYJ_6PL7opyN0^$nhStvcf2Q@Bd5DZk$8qYzf^4CJu zJLP$+=e%df^O)!To}cpkBhRluwYLm4?k_;u_f;r;e+=b+tJkvz!7Xqfycfz2--hb% zccJX}J$NpB6`lrV>)%H{jr=n5i^%&C*<AfQfJ`H*`xZoVWi#?_<UPo5AiC~E0wh9~ zkmB0SjmF^(K0&?~BYTmiPrC;mLw*gp6~Q&kJaRws0febzuTSuM2l4=d`E8s8);{8c zNT?gGk2u)av5xx>Bc~&Wk(&`+vO~q*xu5&|z5KZ5?;r8}Jt#jrf?#s%3&6$_QMNtt z(l`{??f&My@TdH}#;v$CRv$vn@Ci4<_aTarb>xGHu8j`n7vLmv)ITS%?eB--dZdc% zLNqT%k>5hDMt&Q)7HJ_5A+yMJ$nPS9NCVNe2KglNOUO7ffyf8%Mc#>g4AHfSe9GRr zpWDDr|ExK1;`OT}C<c5S`5ojl$QV*wH*qt9>_E;(6hD3wxdth&>$zF*4{4DIk0V=3 z&$``%oQa%=ydAk4$&szdHbj?V!wtwe$gd;1ejZV*-meEP&FhB|&AU0|SCB)<U5KvB z9PDq#?-VkGybI|dx>h3})y+UY8jK}rdp^p7Lvd0~7lX+#3F|z@c@Q?TD6B38Stm*2 zq;5;^3KPnc)krI0I|{-|J6?!_O4>-XU?5+0%0hASTE$vnmcMpIuEYwpOoVYGss`;e zsGu$?CDCHg%F;@d)4PG(YSb$fC2e|F4Wnk71kJP>b<6B&AD)boPEhMsSkJ<_0OJI$ zG}ddbcaw3RV-D(Qhe0h%n?W_Ig`Gw_sG*5#uUp3D<TlG{QsgXzjZTyYaZ<cpDzmQ@ zWnnu;LD@R*v|4G_rjP5EqV|<eiRq}`q${qJZQa&>OL90#7n2~$GR7mVR61Ey^*K#D zvQ_NUo?UFt=DZvQ>lWRx4<8w59J$h#%v(_<uEn%>I9gKon^ADtKz>=!bRFLibX@;k z-^>^;fT|1tYS+@N87$66bSv%5HSml^TsbUrsYu)=WiHHuQTx_HWX7u1U@^@O=dG}! zr-d-7pz&B^F<i>+J88>|b=ql@u2yinrJyc{tEH7rt~MEM(%jHfmF-P_!W&r_<6%C} zX-Btk?5GlTD>FOOHqD^g&JH(8&<K~(PTP2o@A?8pnM=d0T4baxIy;aDqrobi&6l=` z@*HQrYD`n@G+PSR79|$581pmyy;rSknqBi@QpbzKX2gA(qIo54GI+EoTL#<()hw(B zb5>7lg^GJgEf#9qvUDTt+1FMoqea!Y9mMp_79zo#lSf)}zusDASJAX1*6}GpK95sY zI&J!#Hd|7&NI5Bi>NVsimb1x~QpL=%Bkf>zK5DeguB8gTQjF(#M7M&uh>D^>!zqul zO5>*9g+~pgB8=Mer|~FnXX%m|kMou)sH8NJw1c!()a<;WnJy^6y<V{_%HyNHU|Wt# zr^ZWeZlhtEnB7$d@BoFGW3JRhn77S@eAfM<I}vm-Cjxaaxy`ZBsKGr7PSX=Nt;XZ9 zk=D(PakUyHLS%n}S>{4uBX{l+oE6N?g?sLeYHgz*l-!#x67+nD$#C{a+>DP#W-`p` zagrAdLX3-qZsOrf5gp;7W`khPB*WF2+!RaF!t9GNip&us8_eJ;b#*IuH@#;2o&($` zK1yFTr@L<zl`ce?pYBF6*-WO)c|XpqQb}JzLp?2*$m05Ze~Jwh_*Ty~%H_#zWzj;+ zSgc&4`)V-K*BCGNvNo=qwQ1$7%`0bZSvhO#%30f1&f30m)-`=uotBv*29262)>ChK z7bd1OOS^qGQ+S~!#Z;#`hnHz?6#+dTHTzoO9i0f@W&jnr>>P^B{*&!}z(#2zmR&MT z_t7=#9=!{fAKVP?E;INub0i2`En=Hn9*dVWd;7gebF`Oa{ir|5c~XBGh9RLHW^Hr8 zI-31umQByjr;GgJxrdFL!QIe39ntr8Iy5w7rsqQ@vHdOP#<Y*6q`IKm-FvY>5FmoJ ztHzjgtViqy{LNxWoWS{%O*FsWOcPMdbd&jHrjxMc>$b~-+u=Do<R|6&i9MHQ)hIL5 zPJR7$)oU*`(0DO!SLW5EdNCs>2pe%d(LRKQ%$mKt!p{&uis)WVqdd8y9YjZni2<vD zRw`|mw9nKgCpr?bmW0|dtTlSmdz`IsgF0AoJ5M4_#@=m#P&1?Lg!>J~3QhcTjmTnV z(t4c=Yn?{J^^ueo19eL>+bqHq_qiRAV(V1$oVAq9-EbaK;62p0MLyv%z@=-1Mgo5B zv-0keSW01NTAD70ib)a-RLc)>-$Sr&AiuJdGE%zVSi0X-y5C&7-%`5YTDsp>y5C;9 zzov9wEDt?RwJD)1h34g3JGr}WWb(gKvHoW_WwnQ4`KfD%;tZSC$}5dIbgH-HIDR{h zBZQTC7N{`rF0A#+%(`vNtX(T--_>ECGwbHu{w%$nWp(hT>fpgB%h|P#21ja(&CS8c z(D2akssoWW+JlpMJ+2P!?9}tYnUrna{(UopyL7hTg~4%l&7;A_;o;4L!`BRM90^7? zjc(euewY*r4jy0`QN?}bMg~VV1;fLm!^7)`M<}<K-N4{X7AAQkWLG%KI-6J6eFi)H z%?(Ftm1ro<>eo>=sdqS$4bDVibCkJ~M8S@|dv9pOE`Rc-$=$u)(2rHS+$LvmW~qgy z+EQK3+8ig>2J8|!YPH{a%gn^!_Fg$Dg69tIPAX}Y0T~Up&&6$b&e+HPDcD1}W6ly* z59-X3ut8V~0}_{y2N4$SaKqt|jf@VIQ)xg*YIP#YXHgzy3vBqK2C+bAM0*lU+4Z{m zf8xUSK*p*~9R7b*e#-LxNO`h4Rd<@qf(~b}PPCv6f=-mU!+<;C6^c_5n`F|$o+nex z#L+TNtu1<I%0^@PapEO`QaezJvlq>ydMCE(w>mmsrp_i4VFM%Ue3|B|wHD*$8TS~J zw`y^{lZBOd`SFCApkb-$aADiCuNE(8Q=^57pjwHmr2;3{eX64N6zZB`x0k1y8(}pJ z)`iPYCjJ<DFizR_SyfPu{%A39E!`M${_JEKEz64TL|Tn-^d#-7({~nSQ}3JMT)N;q zEhrsKUFYzmX4nd4jCNFMgc<;UWUc5yM^znB*=&&0P`R>|#wt$TP|>3iAJs^7Y+0Ok zKCDx5+C8_*`i)R0*331y{DpR>k+Ov7(7TXwV2vxxc8xwEC}x(#X|NDy?M~P*V;p9W zqLP`8qb6fPZI!qgy2I)6acyvAu85JgPQXSdC6+aqUcUFNjW}QE&$H!M8YEjc>X!7q zz`N==4;@!^W^69JUHa;1ljbNZufZgo^n$sRV=nQ$aAi$c9ki`7-nM<2;arBh4isnI z@_R0;IOk#nJ3P%WAL^^YT4}Ca$u2CArJRbJb1^L^X>%@%%x>I7U!mAPXl%^>IAIP1 zOB_!!f+x20$_IQK3fUXDx9N41v)#nV{tX6@L|3bHDh-o;QzzjtYxovWz@}<Itoe4~ zwqa%*ic!%))@tR6H?*;G?sajQx!DsXe8wT-DYO5{l^i`)BHH>+Q|(fR`G(fa8O3qT z6yxz(p-7IM^r?uox6Lw0!LD22wZ#nLW!o9NV0VLqU%$6<XvUs|AvXWqP`Pa^(X>^C zrFy#4q$#KDmbV(CK<|~3|Mun<AEIL1U5g_JS^QCF<2bZ)$xq1!6R^Ulmu8^0+7#8y zVZ~uKTEAtZiW8ax%g0*^Y!mYI-Ol5Kobbs0zrkmMHqMTk)rcueU+jpE$IHh#P}>B% zNAFIFiH;_t*;nCHUh2Tm+efT2+fG^GZ2JWG<>Prb$J?15v5iLNrlWUs;wY<zy*qT> z8Q$I-IL^E73{C@+%g3`iu99;~*POI{%NaA$brdHcs9oZS8{rV=v8QH5s)TMSILk%! zMK)ta*0<VD(jB+rY^|o;rngTIdnoUv$WA!7oT_&~Kl#N{vErz%gZlE5_6XT^P>m<! z7AgpxG6(mHyXMl7{KQu&z@a2!=W@dP3~(!3ejN1`|BKjrszN&0zh;r%>;7opQ-W4X zx$bnoQm#ATuaxV~_$%eQWBy9H?xep`t~=5HWV!Ch-+R}O7pwMMNZ?j1#&@Ue4oK5S z<6ijt{!^HLiVcF9T7I(0enn+_#^Y1KfnEgALcOGq0>mR`T^gi(|0M|9uL7mF_<-ft zIgPg#0o=HorpQM0vGaPmqh+Pgty|=j@yk}kvTK(ft7fAS_Nmvcsn3JU9XPQ>pC`Xg z!NQ|os~8KN#^68{C#>4^dfZO~Pljc3)<tZye>SR9!iO`v9Vr&h-N}NM)lf(F-ATq* zM+z1<U30nhOCi)QR;As&K0l;GtN#2?$2IV*y@3sGkv3Q?o7XcK+VJg<Sap{lW52-? z(woHEzG|_~V@jZ6(V+gf<U$?RFHbR7tiLc3uortv4#ncvj#;^jtwU(POYk8e;lEb$ zzJ@*g=uTS<jWdIEioG1&_U2M7Wo21liC|s9VpQR`d_BkCpi=I5!{Nq#jnFDI<4W?s zi;@OKqFY?7Qbp4KB8<~`ix1aq4DFaRvaHF)7YaM_`D|2--I)EZrA;T56`SdB$iC9D zZZO6y(SGB^Gn;0Y`#=#hj55zD%9M99<&CHvSig0)hU~5J+N>2@Up{4&pW^-}_c5bX zV5FSCvHY;9{II$Fu%-O4wfwNH{II?JK$t65S=;fR3O>l$r8VmIqx7!!SVi|Z_6FUG z%(RYaOs%s2+TDjD8lTI$+1ioVv{GQxYkn_F9c4@Nxk{^V|Gdz#Sx1W3snqYb7+Qaz k3>pp2n07m4cNQm9%eNA@!JYNn9KMurD9X%i5hBe00Y3!S1ONa4 delta 2352 zcmYk+TWl3Y9LMni3KT4swo-bbu)WgK7Rtp6ZLv2fluKJ%1Tkt^dbT}B+ud?{PD|0` z1QRrhKInufA%GFl@IYchLjoGX5F!tvF-m+e^1>_dCQq37{k4l>a{l|7nZ3+^XJ*gi zeLvNt?q;W*FqA%G88J26m_xX0E(glu`Nq^@7M5W%R$v5+@i>;^#qj)ZVfzuTq`x42 z=6oBL&>qBG`~dTfNtrLGtf%8DK93KPpD9~l%p$BswHw3s7Mw@B7oWlXsKh*c7C%Jg zeiC*6SuDqkNKWQ=)C>HDm5gs@FEoaqspgP_^_Yb_Fb!V|`(4z4NnC<QQHgwpy6y}v z#&f9aro#T~$XMnkDuG{dC;o})jBiT0IumP94{AcaK`ZKk+fX;Yf||Mms5hMmeJ?zJ z0(IZ%&~vB+FNE!HF@yGH)HpXVr5kQhDZ*bu@1yz`a<!&#F>0-sqxxG=33nhbVfKdo zE^@0GLM_=?=sTzZkKyzZVFB%v8O*=laEcB+@Fv#d9aQESjIIH5Li17mD{#{+))Cjy zKEP9J(1u>eHMAe#S}fw>RoIQ?IEfqZY$o&HK;;iQw2L#zMwzY0GVH?bIEEegJ?hQo zut9jX$v`blAr@jOD#7OPd<U+f{W5CL91G8%LVo7U6vx$6rce*Qhq~cDHsP}DaF?S# zPY*TFyQqQB;8Oe=mCz69;B8bQ4^h|sgM4o0U*uiQQg*sFWojiAt>N0RqY3xY?g-nb zkzC9-sHM1qO7t4)jc%dV_AY9V+(Uk5?sLZQGx;1e&}vj78&UVSAPJ^SXV}q$%&ysw z8tBcie-!g*Phtgr8lJy`EWf#i>+m*e0A)qhq$4kDickaAp|0PAY%jA77wG%nLq!9= zfx01r+6xn?y>JSb<7Mo|JE(!m`4;uyTGUk6quz8gvNxyy%;unGPcQJK)KXEx{L#*= z)h^VobcmM-l{%u5SZROE$Vq93=mS+zYFf!Hgg!PErKweIBVHsrhz-P6LZyC&|Bo+F z)2k?bEt=+iJ)v);ozPBdCBl+2JE&C?YY45bir#rAq1D%XXpU60n=}tyg#PiL6n$qc zgyy=J&|Ir9ozq)e+j<4jNT_IAYr)oPk+kwpm)$h<#cv`y39YzRmARiT&7s>uH)9{6 zZ%So5p$~kO8kCJhk1FM34Nj{cB%)s2*%$L8!GyE>(t|}?XW7xrJ@#SdP;+G5^#{C& zX&s($C&!$?cM`#<X$umGV8m%KZAmJ=Gwe<V$%JY5{Dc=b?NQes@*LkC@$99nri_5z z!wIK9>J5+DquEvVyX;SFZ_cY}yS%}Ky`3|;(esn0i_05Kmp9=|%w#ec3?#=)7um)9 zA=5qT9!h%7NHFd>t{-vY-dOC2jpP>Bcw-4So-n<!p=iSN^+$sVj)~a7Tc$7SM!cD0 z_)vR(X}6u9S7$%ZE3rT4723yn&GUVCbd(`%T|tHYsNjyX!;Ou2PFr$t(2GwxO+Eu8 zTZWUq8?POX`N_kV#tS#hwvUP;_Wk7_=Q2S@+(=;hV&2GT+;cpCAU5LKt1HTvXg=bB zX?I5s#@x8$2O|gLOo`K#)jFAsxK6}#24*HFuqTV_?BB(&&su03OFVnN<Y;>5kweLt z7mwJU(&K5Kf8(lsRPLm8xe?cPRFvAcE2<iMy_g>x;Mr!27xxCDuG!rmj3wf9^z?f} wu+@(T!^2NioN<zJeb*LN?zLwsTWv*EosCwN*{`ZP?Yvd_Hn;jkd!f4TKk;BdWB>pF diff --git a/po/es_MX.gmo b/po/es_MX.gmo index 373aa55a68e4b684611e57ba6c0929dfe0aef64d..ce37ed2da10a3651e59193179757353d24b4847b 100644 GIT binary patch literal 11260 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 literal 5413 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 RTK*tnzZR<!kXq}0^FJzHj|u<) diff --git a/src/client.c b/src/client.c index 9277c589e..e28ee4fa1 100644 --- a/src/client.c +++ b/src/client.c @@ -792,8 +792,8 @@ clientConfigure (Client * c, XWindowChanges * wc, int mask, unsigned short flags ce.border_width = 0; ce.above = c->frame; ce.override_redirect = FALSE; - XSendEvent (clientGetXDisplay (c), c->window, FALSE, StructureNotifyMask, - (XEvent *) & ce); + XSendEvent (clientGetXDisplay (c), c->window, FALSE, + StructureNotifyMask, (XEvent *) & ce); } } diff --git a/src/compositor.c b/src/compositor.c index 8213f4e1c..ec8bdc90c 100644 --- a/src/compositor.c +++ b/src/compositor.c @@ -870,6 +870,7 @@ get_window_picture (CWindow *cw) static void paint_all (ScreenInfo *screen_info, XserverRegion region) { + XserverRegion dest_region; DisplayInfo *display_info; Display *dpy; GList *index; @@ -880,6 +881,7 @@ paint_all (ScreenInfo *screen_info, XserverRegion region) TRACE ("entering paint_all"); g_return_if_fail (screen_info); + display_info = screen_info->display_info; dpy = display_info->dpy; @@ -887,6 +889,7 @@ paint_all (ScreenInfo *screen_info, XserverRegion region) screen_height = gdk_screen_get_height (screen_info->gscr); screen_number = screen_info->screen; xroot = screen_info->xroot; + dest_region = None; if (region == None) { @@ -898,8 +901,15 @@ paint_all (ScreenInfo *screen_info, XserverRegion region) r.width = screen_width; r.height = screen_height; region = XFixesCreateRegion (dpy, &r, 1); + dest_region = None; + g_return_if_fail (region != None); } + else + { + dest_region = XFixesCreateRegion (dpy, NULL, 0); + XFixesCopyRegion (dpy, dest_region, region); + } /* Create root buffer if not done yet */ if (screen_info->rootBuffer == None) @@ -907,9 +917,8 @@ paint_all (ScreenInfo *screen_info, XserverRegion region) screen_info->rootBuffer = create_root_buffer (screen_info); g_return_if_fail (screen_info->rootBuffer != None); } - + XFixesSetPictureClipRegion (dpy, screen_info->rootPicture, 0, 0, region); - for (index = screen_info->cwindows; index; index = g_list_next (index)) { CWindow *cw = (CWindow *) index->data; @@ -1029,12 +1038,16 @@ paint_all (ScreenInfo *screen_info, XserverRegion region) cw->borderClip = None; } } + XFixesDestroyRegion (dpy, region); TRACE ("Copying data back to screen"); - XFixesSetPictureClipRegion (dpy, screen_info->rootBuffer, 0, 0, None); + XFixesSetPictureClipRegion (dpy, screen_info->rootBuffer, 0, 0, dest_region); XRenderComposite (dpy, PictOpSrc, screen_info->rootBuffer, None, screen_info->rootPicture, 0, 0, 0, 0, 0, 0, screen_width, screen_height); - XFixesDestroyRegion (dpy, region); + if (dest_region != None) + { + XFixesDestroyRegion (dpy, dest_region); + } } static void @@ -1191,7 +1204,7 @@ determine_mode(CWindow *cw) if (cw->extents) { XserverRegion damage; - damage = XFixesCreateRegion (myScreenGetXDisplay (screen_info), 0, 0); + damage = XFixesCreateRegion (myScreenGetXDisplay (screen_info), NULL, 0); if (damage != None) { XFixesCopyRegion (myScreenGetXDisplay (screen_info), damage, cw->extents); @@ -1345,23 +1358,6 @@ add_win (DisplayInfo *display_info, Window id, Client *c, Window above, guint op XShapeSelectInput (display_info->dpy, id, ShapeNotifyMask); } - new->c = c; - new->screen_info = screen_info; - new->id = id; - new->damaged = FALSE; - new->viewable = (new->attr.map_state == IsViewable); -#if HAVE_NAME_WINDOW_PIXMAP - if (display_info->have_name_window_pixmap) - { - new->name_window_pixmap = XCompositeNameWindowPixmap (display_info->dpy, id); - } - else - { - new->name_window_pixmap = None; - } -#endif - new->picture = get_window_picture (new); - if (new->attr.class == InputOnly) { new->damage = None; @@ -1370,6 +1366,16 @@ add_win (DisplayInfo *display_info, Window id, Client *c, Window above, guint op { new->damage = XDamageCreate (myScreenGetXDisplay (screen_info), id, XDamageReportNonEmpty); } + + new->c = c; + new->screen_info = screen_info; + new->id = id; + new->damaged = FALSE; + new->viewable = (new->attr.map_state == IsViewable); +#if HAVE_NAME_WINDOW_PIXMAP + new->name_window_pixmap = None; +#endif + new->picture = None; new->alphaPict = None; new->shadowPict = None; new->borderSize = None; @@ -1510,11 +1516,11 @@ resize_win (CWindow *cw, gint width, gint height) { XFixesUnionRegion (myScreenGetXDisplay (cw->screen_info), damage, damage, extents); XFixesDestroyRegion (myScreenGetXDisplay (cw->screen_info), extents); - add_damage (cw->screen_info, damage); } + add_damage (cw->screen_info, damage); + cw->screen_info->clipChanged = TRUE; + repair_screen (cw->screen_info); } - cw->screen_info->clipChanged = TRUE; - repair_screen (cw->screen_info); } static void @@ -1676,7 +1682,8 @@ compositorHandleConfigureNotify (DisplayInfo *display_info, XConfigureEvent *ev) { XserverRegion damage = None; CWindow *cw; - + gboolean clip_changed; + g_return_if_fail (display_info != NULL); g_return_if_fail (ev != NULL); TRACE ("entering compositorHandleConfigureNotify for 0x%lx", ev->window); @@ -1705,11 +1712,9 @@ compositorHandleConfigureNotify (DisplayInfo *display_info, XConfigureEvent *ev) return; } - cw->screen_info->clipChanged = ((cw->attr.x != ev->x) || - (cw->attr.y != ev->y) || - (cw->attr.width != ev->width) || - (cw->attr.height != ev->height) || - (cw->attr.border_width != ev->border_width)); + clip_changed = ((cw->attr.x != ev->x) || (cw->attr.y != ev->y) || + (cw->attr.width != ev->width) || (cw->attr.height != ev->height) || + (cw->attr.border_width != ev->border_width)); damage = XFixesCreateRegion (display_info->dpy, NULL, 0); if ((damage != None) && (cw->extents != None)) @@ -1754,10 +1759,11 @@ compositorHandleConfigureNotify (DisplayInfo *display_info, XConfigureEvent *ev) { XFixesUnionRegion (display_info->dpy, damage, damage, extents); XFixesDestroyRegion (display_info->dpy, extents); - add_damage (cw->screen_info, damage); } + add_damage (cw->screen_info, damage); + cw->screen_info->clipChanged = clip_changed; + repair_screen (cw->screen_info); } - repair_screen (cw->screen_info); } static void -- GitLab