From 2854d256192a8260ddeb2f2e94bc1a2fc5f6ef71 Mon Sep 17 00:00:00 2001 From: Adam Cohen Date: Wed, 27 Aug 2014 16:04:07 -0700 Subject: [PATCH] All apps transition work -> Fix icons popping in -> Fix issue 17259204 -> posting animation start and buildLayer to allow first frame to be ready. This becomes necessary with RevealAnimator on the render thread, since it can't use FirstFrameAnimatorHelper any longer. -> adding a bit better transition for K, issue 17252683 -> updating a few assets Change-Id: I0b193b4b3b511492a2fad6230cd91e3f0de634f0 --- res/drawable-hdpi/ic_allapps.png | Bin 4821 -> 5861 bytes res/drawable-hdpi/ic_allapps_pressed.png | Bin 8184 -> 5972 bytes res/drawable-hdpi/quantum_panel.9.png | Bin 705 -> 744 bytes res/drawable-mdpi/ic_allapps.png | Bin 3179 -> 3846 bytes res/drawable-mdpi/ic_allapps_pressed.png | Bin 5186 -> 3979 bytes res/drawable-mdpi/quantum_panel.9.png | Bin 462 -> 476 bytes res/drawable-xhdpi/ic_allapps.png | Bin 6499 -> 6809 bytes res/drawable-xhdpi/ic_allapps_pressed.png | Bin 10926 -> 7239 bytes res/drawable-xhdpi/quantum_panel.9.png | Bin 900 -> 928 bytes res/drawable-xxhdpi/ic_allapps.png | Bin 9770 -> 11608 bytes res/drawable-xxhdpi/ic_allapps_pressed.png | Bin 17006 -> 12588 bytes res/drawable-xxhdpi/quantum_panel.9.png | Bin 1354 -> 1439 bytes src/com/android/launcher3/Launcher.java | 362 +++++++++++---------- src/com/android/launcher3/Workspace.java | 47 ++- 14 files changed, 215 insertions(+), 194 deletions(-) diff --git a/res/drawable-hdpi/ic_allapps.png b/res/drawable-hdpi/ic_allapps.png index 072cf5b302e7a3ae56fdb7a118f55c9e921c3aa1..b98e65f9905ee544e001d57e94d32a481df207db 100644 GIT binary patch literal 5861 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 diff --git a/res/drawable-hdpi/ic_allapps_pressed.png b/res/drawable-hdpi/ic_allapps_pressed.png index af49dbb4169b6bb9d6caab0588d6ecae23243c53..b7eaa675f3b0f644f1ee70778eab7ac899be4b18 100644 GIT binary patch delta 5867 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 literal 8184 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 I0zKk?0HNPFC;$Ke delta 3052 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 diff --git a/res/drawable-mdpi/ic_allapps_pressed.png b/res/drawable-mdpi/ic_allapps_pressed.png index d7ea96f61d3f10134c8e74f81fdaccf9124ad610..aa4f913b9d68b85bbba6f3c57021f6719353bb1c 100644 GIT binary patch delta 3816 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 bWshY1bo&4KR3Nv~|M?>M^|zl22rK;$o*Y&r delta 5075 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 O!k}f(AmtXz)&BrW;dx2` diff --git a/res/drawable-mdpi/quantum_panel.9.png b/res/drawable-mdpi/quantum_panel.9.png index b9b95064420e3dd542bddbf88268d509e72a5084..c5a6eb735b019376d22ba7674257e2108fed8cc7 100644 GIT binary patch delta 413 zcmV;O0b>5n1Kb0UNq>GxL_t(oh3%NlO2a@9fWJvAhC2Eb!sO62G&5kpQzS%kGRZg|$}Ognu!n$g=DnnEBjCse5|? zroeo++vU!=dE4_vL`afko2Kavum$!UnYCJL|9J|umV&Q?bMAB2jvW#cVA|zL>~l>C ztkoDX=|L>GyF+3MxE{nD^*d5SVpWo^3FeFu>!Z{Mb0$3v+?tpf`xC1AH#i18V}oQA zJC&h|$xy|jYJX*4)aH(=mCm{Mj%0Ao6|}6CRpVgS>-9rdVtJlFQr`D#Zy2Fde?ocV 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 mZJSD~!-+d6t?SCAL8O8bXD24%$pc06W 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 KYV|6%G5;URuGD@2 diff --git a/res/drawable-xxhdpi/ic_allapps_pressed.png b/res/drawable-xxhdpi/ic_allapps_pressed.png index 77b45aefb8fa4bbcd08920fbb7cafbed124dc6a3..e761723815ee28b3267b12a50b466e5217858ad6 100644 GIT binary patch literal 12588 zcmaKTbyyT%*!F;+i-9YlE4@gm)Y2U*Al;3GG)Q-st0*oY-6N*5Lw-n@MG{N@c=U?aK1D-ieKf0JhrvQ#Qw4(jSRg0_13|~&P{?lx^5lk~ zH8ThjNrs?%F6j*#V&IFb=1Naxpo_~_c5`7II6~qgZ{QBL^8fRe>wF;rL0qQ_GSb>U z6B~j4@!BH^2NEk&PsJN?jlZ3Kv+~`c`Yer|AQ7N$_O-=YRuEMArUwUl|AT_{&}@=<0g zE?efuwiLNoCg)G0=&S^xG!k5G#(jwgLeg-D!|63qkxu@|73qizl-BrgE@_X)xj}ek zO!jZ4*;0uQTBnjDDCmV|J|m}+E2(JvMZayj3X!-mqv82$I3X5gh9y8^?x1fX`HrbA zZraU;qOQV_c*IZ(j~Nzh^WzEgDgM#(>j!4Cx%SJacM^^0F!Kc9xpha@HaZF}LMJ!m zOv>*iB_!ljRPe|%k=feXzBxJzded$Wu_i?&YL3piNLg7iYinyWr1j#_IdBXbDIg}M z+&1@#5?QpGJVR%1OaAh6TNv+kn@7@G3QywKc+oI>d;9O$`@DbSA8NU%sokEebFI?xn{XZNW?isfkqSe}-9aC|rgr++@~5Kv5fv3x09~|A>g0wK1yN2W zoQKllSrlsjIkp*wEc6O&)Rm)w*euu;AJP`YlWHnn!Qu85V~5E}!yCiC{@UK$-26Ib z8XWlhEo85*Qudzlx7)XG7e9@r%m1v8eH1~6!=>i0uEM5f!+j^w~jwXVLpjKY%p4O$MrK;j$ zC0ZI9B1G}Ar>8SNP4d6wKSbgQ*Pq&cGn5`GP-)}f;5hyI^4jXaho=^hRDo)Sz5lP! zYxYT;#(pW28!gEzN7mSFKFs?L+rO>fdv%{TX{%bzW%cZg=F<+W2^x}Gu**Lb=j?WS zAw)A%ZPTAQc6kSCe*XUCQ19SuT3Xpmh7!h?k$qhEJz)5^-1K60(a* z{-U_hu!?bqy88N*Ka;i5JosD~vV;EOuwxmI$1j)Sk!kDbST|&*l;C+- zDOsqcd-wRG9zQh|NW0aaE*$r7fB(N5Wfi4hckqZEzvjA{n!EHuE+GU`4q(o` z_e^}|#xhh_^hl5+EWzf;5$_uA0uC5bU8kChDpKNX)W})Y#axK~X@mzTQf2Z*Kq-*>m6+DgoQ?OiO;&xh~w|Oj?(VTA;dV zpH9($6n=d@^;nN0UzF^vSWq`dt=MM}cXJvVMAEvK(50oN71A5jop$^AcWEOMvaJ&& z6xEI0YO1RKo*Znc5kjIqe}5%-dU{H-V5)4_)CSI9vKsznA|{3+;PX|ewet^8qi5VV z>sQW6A$29CcXh!RLE{Vxy+j;_c7|A@YDQKx>^UA`Z)?jC%M>#+GxN8&yk(-vW$wR= zbr+$sp}zdr7wM6Rp>uuq{dKVX)4}bOdR3|!A|o8Iu!-sEQhS*ZW;>0zs$^KIV*a`& z`CSe}ra#k-dIV5)W8;Z^`IvunLEqkZyt%y^@+%aA#C*zSn+DO%TY!&G>^5Y%J>Nbx z>HLMmE>$k6K(=`2o$O#L& zG3H=4IJgtUpy1BkQ}oNMa(%iAb7JCNHTLeEmcG6|qvigri?I}5n+C?1HxpxHHu*d6 zSmYb@VItN|Z&7mbnqr=7+7dLRm9~73JiWY37Iu$E^52rU$zQma7O7gt+*(DCjbS3z@gv!byvt=hv8RxS^YtLj8+E$V_I z`T3+!U4Fi-?TZ&$K|66-KZEuwv&84!>YZMH){tV(yLL0xgF<%uqQs!GU|?mpxy5l( zV6|ztZ{g(RybkNC0rjb+q(id9Nj-+2Q zJr;INDZ+AkG1tRf&Vef~Gh%AK9L~S{Tu{J*gu}Qo?_F0TV)A^SB4PFcjFESloE#h$ zMMXuIOwV_cD5(V;4kM?XzMv}ySr?{!QBSt~U#%Q1Gb<&go9gM+o~77izU31T*a3FY zG5E85EmRhOhIWSkm(i`FcVO0>)nHB)6vlhu(2t00|t^*YWgMU9a}`!D{|>3 z=Eb`Rhz*(dIVWc>0P}<1#BViUMn{K|K2mNkf5aNStnz6oEnAKxf&dca<8$FmQaZy6 zwjj@cU6cHud!bRqd`oyw&w$W4;JwFX5%E&-dqewtM;eYE^{|P1 z&d;r_*_YMV-|wtYHU(FCI_-4enQzw}_T0mdkB0PO4Od*&pa3VDnwaQ1K0c-p%9)A$ z$|9_{cf=4nQWy7EEE*VP|JHP);K0z(Zn;F(R`^7+JC96#R*@Mu8Kvy&*RMB=i;GXj zWZ&H#p9#JQG)T0vPHpV(_Td|o`9$SShDVf@m*4aA^J5IZO@D457Ek zFA1RG(b04Bjwo6s@Go*N&#H#V7aX+uG7jtcWO`yy2Elc{QUektb0@U!fR)PL?6Kj=|BwaM-@i*7|6Q$8b2QCJNWlcJ}@va zx^8;2+%C$8GbxfC>G%SMDlv`+!N`vd?a zh`yi9zJ`gykdZEou4t0>TQ{Lc$UN7tVZ`3UBO{j>6F4$T=|{T!po8hK*#05}rKYAH z?(gp}UMArY;g$4CVpXEx_$kG>D-AVTlIMpD<>|raN0Z>RZ~OaR1}Da$G?B9I`SW{w z>%Y7jQBZ5rm(!)4f`S72E0D8LIi{1~%w$_dMMbjZc&)gb0Ge{D&HTe|voPRb@WYCE%z|@PonE|93ajCycjIo0 zcO((9R_3wkqmiJBR5Yq_u;b+7y08{_Y=V|L8Ka{S*? zH)J4?S|NS6n17@0^XC{3PtW#Rr|F4#ug3D%gj}?2$QM#j>y*<$L#a`1&E>b$)YPS; zV^=Kaf^4+HqMY{7FzG8-u5fd6ha__&i2NFDUsR)%p*Z8ghx?U5}^0JD0Z$4}J@Zmv)-`?6|7;7Fb z9dP;9ej60oeuTVFeC0*uc$>UFR}EZ$gSrZ!p>DZJpsc^Yzvbpsy;$<$dpl%`{0~=u ziiD)3I2p!JiL+I;cL2(t9S}>~hMrmpTSE{{$8!u^lY%)HXHNmK;q{p?W^Gr?41CQH z78Dj(5@fO_?okApB~}53%v=y6m2=8P8Fl2nSWpNtW1@+!9CsLO2|TIs_V56v#k(O8 zt6|J@%aeM+99LZY;1aV;dCvy!ItonY8`>?d)s}cW)unJE2T78RR z$x(;-Hk$-|CB7GM)#6!Z;kO$%k(jv7yx^6-j002ujcRA6xK3{9jo~yKB%jOHa@fP$ zU(&P~tK@V~_A^i0L%j(2e*oZ3?*p(IFk}%eK3Zn{E<7eJ2Wq_t+D)6CItGX}_z4In zI`_#6;ErOn43IhszjTRzZJJEB&ds>raO1!IRZkuIty~x4@wniN1;jwpaYt4|2>J!W zyUC|yli zqot&BgU{ye##qz>#q=t`h3Y~y=Pu``M`H*3`(2z#@7~FMsCWobBQfuXRu><{ywNl^ z?hXF?_1eXTS7X1@6Wmf`q+KW~(Pyow@b2XmX|1fR;MZSSej;T|fe)6}8MH4HX%)`n zaF3P-mAH&!xZKRKuH1-Im$uipF0@QcHt*BW#9JDSmfDOQa&}kn2nn$Pr|=hW`1$w5 zjQbFY_u-?RvkOCF%zzbKj89Hddx>N)k-e2qjUVj(0A=&wZJEeo(p6bk*Vk`sP1Wy8 zYURZ|tPv<6#=LhN!RaKarU|Hke8R697?l~@=gAvbA!idKqp^5=a*_}c5%I2?I%Zu} z8jJe9w&qt^T>Q8U_ehgMmi0TE26mQGHV22xEh{VY(bF4CBlif^z`�%{RE3{{DxI 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 diff --git a/res/drawable-xxhdpi/quantum_panel.9.png b/res/drawable-xxhdpi/quantum_panel.9.png index 4392aa02a205d531a5a5c53fabb4da0aa6120fc3..d7ba87416edac0ee70f1755216def1d24f224ccf 100644 GIT binary patch delta 1384 zcma*n`!~}K00!`_%W^ptGuv`Km{}K;MvW{S+4dHNIMj_rKl2{#u#5EjC|77CObe1aJp%ZfGyGV9qb`O&n1+olB>|x4JnM6ld)ZB+z zDV$i4fMxJo!O(77%l@0SSt(=V`}!2;!0=2T*Q)V^nkH1oco!}KlQiHkc6{dZgxpPz zlWx2h@*e;)e$5?AW3cMxggdxhbjyV#@}_7B9hif$r`i6N%pQ@j;A2Xc>-l%uNO$qs z@A?7jg%@o7igBiK2U%(%6w)=5wX`bX_Qh3M`#sV(22sW8f58n zzC3l!XrA+4f^VLlhd%PkUg&_kzD5Ubr7P$o-*pegKUQX6j>8ofcJ^mxp<^rd+@5 z+asrfk8*$DoK2OWwNR888v}?8z7U*O@#ewIHA6LUq8XA3M5+&5Zxb8Si7vodspkDg z8T~$Ky7skQZvE9p_1obpf$dlJQCpspQ{sNF3 zyG+M|hH*!@Fz^5Cn_>?3?!&(jCl`mEh9?TH%6M^M+QzzPvU6=1#5<#WL!-o}aaxgj z6}N5}f5_?}Hm!*H!uBVW+m0)u~3B z8XDW3LG~=c5C|=pnwrYq+S)pOcb%$SGB~fS@^IYJ`&-ww<%1v?0)fzr7E;wSx_yEp zA|$FBoOVqzxog2+$B>;1-{kZ81^M~;Yn`2)OKqOdKQ3*U6iGVw&yllyKk~(5aoW(( z5FlVM7_VDiy~-)h`(RGM_1%VmX+_Shg&!|c-M76q!d!ISdg7ifGnJFjZY$o9Dcc8E zL1h)rZG~+l1uHvsVif`$qGWkkZIA-Z^%gxI`7nREE)J#N($PC_=v2KZJ&mN(%V}Ol znc5S@?qx}G%#cAd&lh>OG8K)VK_8d_2^U(>x~a)K7Z>_zyTn3?e@rok;M$3Um(pc- z`dqyUK@g2wP#g$I Yfws5c`OospwV+=iow2iiYULU8Ck4&5NB{r; delta 1299 zcmbQweTr*>M?K3MPZ!6KiaBrR8fL!^6FL5W(wbxWA0{nzUQpSn6KhpcKgHq2obwab z-d`lYpyWkB#o^gr(|KC+S{;^`Wwtr^w$He<@&kuT^JJ^qZK`+qKK1&)n|y!qN!x9G zfB!d5(2?=}{;yOtg$|3{79Z`}H= zF3x3IQF6d;<=J-icb}Mc22H(w@y~|_l^N})r$wk7UGIPI<2?1ns=6XmIy~3$Pha~$ z>e+i?N#0&QZr77f1Lj?`%Xrk3s=0>in)%lv0mD`}W29F@0`6 znTcOK0y!Iax)+~STDZaBRQ;3JE1p~QdPGa4HXnTO`R?7j>p$7l_nA%z3%z>x?Af!Y z-@bjTfAp7DMf{iUNi$^CQ}wN7uE+i^RaH#KtKzP)>ED=R8~eEs?J zr^wbNLT3*@pWLbI>lXHG`NxVs)zeaU3vR#arKhjI|HjRmKlw_xOx;{rQW$mk@!tA9 zb^HHE&RQn_GhQ$>v~`h&h}rI%OD3+%jo%-NTmPNu!1vA5MW^grf3#=IhegWF6Z+j2 z&;M-mUt~q=)KtmB$*a|UgHs~e7*?!$Rl5E5Uy0Hwq7@b{zgAQmZB)|TQ?y53&U)@S zb-Pp7d?f{BzalZ1FEz5J^3XO@=_tpQ`?RRp!W0XI2tyKMnRds7S?=CEI zH)go0_D9JqBe~7$5Z9UC%3111`b;Df|E;)fVr00|WzMgwkJ;R2?NJDpl-qhP^WSDu z`~7QIY>$3D=UI78@cGPtUls@z&T>Cubw{L*$M-zX;!T~0uNwu}MwrfDuF5cpS4K|U zc40r8@>#jQ`b#`cnQRM9ngeDzYMfP=k|y9~%&}Cm!I?fk#fJujFQP$*KP?)OVP01^azoXKQ2i{7y)v z^xDL0VPBigrfn&3e}8#DU;E*B<=n+zebgrJH_WdN{&ic!DcLP5*|g(e!UtiqloNY) z@BS@(c2QKlA9Kr|=H_O3_r(|Gy>4fUrl+UdJ7|jUcX|9OQ0(+dhLFE?|5ZMfMIA4& zu(7tY`^U=P?j~Ajc)9*+TWQL>%ZKL8ne%7s{{8kZ%69+H$<6)x$>#mRANF+?&$||B zw1tO<@1HwwUR`lX$(OfZzkZcwNWQZ2uKJ4460=t{Ol11Oa6qgfee=`w%`2G|j#s6` ze!Up7K+J^k!~2|B3>C(+f8Y6&$UDnj*tm4T`Z$&|?Hxj&Kgp^-OR~s++auTR_6RXEipnPqVE|R|s|4R@`N^XxZkI+pTp3M0j;GgJcZO zztmQ~P$X+A@4C-SjhshYo?C@ZyP0^+ zRoCfjqdKrq0hcTY;*y=vbD2p?w)+1M|N3L!UfD-7|CrBwK56`>_iHx~0}yz+`njxg HN@xNAC%$>- diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 109a771a45..efb1ee17d0 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -22,6 +22,7 @@ import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.animation.PropertyValuesHolder; +import android.animation.TimeInterpolator; import android.animation.ValueAnimator; import android.annotation.TargetApi; import android.app.Activity; @@ -82,6 +83,7 @@ import android.view.Surface; import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnLongClickListener; +import android.view.ViewAnimationUtils; import android.view.ViewGroup; import android.view.ViewTreeObserver; import android.view.ViewTreeObserver.OnGlobalLayoutListener; @@ -90,6 +92,7 @@ import android.view.WindowManager; import android.view.accessibility.AccessibilityEvent; import android.view.animation.AccelerateInterpolator; import android.view.animation.DecelerateInterpolator; +import android.view.animation.Interpolator; import android.view.inputmethod.InputMethodManager; import android.widget.Advanceable; import android.widget.FrameLayout; @@ -3202,10 +3205,12 @@ public class Launcher extends Activity final View fromView = mWorkspace; final AppsCustomizeTabHost toView = mAppsCustomizeTabHost; + final ArrayList layerViews = new ArrayList(); + Workspace.State workspaceState = contentType == AppsCustomizePagedView.ContentType.Widgets ? Workspace.State.OVERVIEW_HIDDEN : Workspace.State.NORMAL_HIDDEN; Animator workspaceAnim = - mWorkspace.getChangeStateAnimation(workspaceState, animated); + mWorkspace.getChangeStateAnimation(workspaceState, animated, layerViews); if (!LauncherAppState.isDisableAllApps() || contentType == AppsCustomizePagedView.ContentType.Widgets) { // Set the content type for the all apps/widgets space @@ -3214,7 +3219,6 @@ public class Launcher extends Activity if (animated) { mStateAnimation = LauncherAnimUtils.createAnimatorSet(); - final AppsCustomizePagedView content = (AppsCustomizePagedView) toView.findViewById(R.id.apps_customize_pane_content); @@ -3231,32 +3235,46 @@ public class Launcher extends Activity } // Hide the real page background, and swap in the fake one - revealView.setVisibility(View.VISIBLE); content.setPageBackgroundsVisible(false); + revealView.setVisibility(View.VISIBLE); + // We need to hide this view as the animation start will be posted. + revealView.setAlpha(0); int width = revealView.getMeasuredWidth(); int height = revealView.getMeasuredHeight(); - float revealRadius = (float) Math.sqrt((width * width) / 4 + (height * height) / 4); + revealView.setTranslationY(0); revealView.setTranslationX(0); // Get the y delta between the center of the page and the center of the all apps button int[] allAppsToPanelDelta = Utilities.getCenterDeltaInScreenSpace(revealView, getAllAppsButton(), null); - float yDrift = isWidgetTray ? height / 2 : allAppsToPanelDelta[1]; - float xDrift = isWidgetTray ? 0 : allAppsToPanelDelta[0]; - float initAlpha = isWidgetTray ? 0.3f : 1f; + float alpha = 0; + float xDrift = 0; + float yDrift = 0; + if (material) { + alpha = isWidgetTray ? 0.3f : 1f; + yDrift = isWidgetTray ? height / 2 : allAppsToPanelDelta[1]; + xDrift = isWidgetTray ? 0 : allAppsToPanelDelta[0]; + } else { + yDrift = 2 * height / 3; + xDrift = 0; + } + final float initAlpha = alpha; + revealView.setLayerType(View.LAYER_TYPE_HARDWARE, null); + layerViews.add(revealView); PropertyValuesHolder panelAlpha = PropertyValuesHolder.ofFloat("alpha", initAlpha, 1f); PropertyValuesHolder panelDriftY = PropertyValuesHolder.ofFloat("translationY", yDrift, 0); PropertyValuesHolder panelDriftX = PropertyValuesHolder.ofFloat("translationX", xDrift, 0); - ObjectAnimator panelAlphaAndDrift = - LauncherAnimUtils.ofPropertyValuesHolder(revealView, panelAlpha, panelDriftY, panelDriftX); + ObjectAnimator panelAlphaAndDrift = ObjectAnimator.ofPropertyValuesHolder(revealView, + panelAlpha, panelDriftY, panelDriftX); + panelAlphaAndDrift.setDuration(revealDuration); panelAlphaAndDrift.setInterpolator(new LogDecelerateInterpolator(100, 0)); @@ -3265,15 +3283,17 @@ public class Launcher extends Activity if (page != null) { page.setVisibility(View.VISIBLE); page.setLayerType(View.LAYER_TYPE_HARDWARE, null); + layerViews.add(page); - ObjectAnimator pageDrift = LauncherAnimUtils.ofFloat(page, "translationY", yDrift, 0); + ObjectAnimator pageDrift = ObjectAnimator.ofFloat(page, "translationY", yDrift, 0); + page.setTranslationY(yDrift); pageDrift.setDuration(revealDuration); pageDrift.setInterpolator(new LogDecelerateInterpolator(100, 0)); pageDrift.setStartDelay(itemsAlphaStagger); mStateAnimation.play(pageDrift); page.setAlpha(0f); - ObjectAnimator itemsAlpha = LauncherAnimUtils.ofFloat(page, "alpha", 0f, 1f); + ObjectAnimator itemsAlpha = ObjectAnimator.ofFloat(page, "alpha", 0f, 1f); itemsAlpha.setDuration(revealDuration); itemsAlpha.setInterpolator(new AccelerateInterpolator(1.5f)); itemsAlpha.setStartDelay(itemsAlphaStagger); @@ -3283,7 +3303,7 @@ public class Launcher extends Activity View pageIndicators = toView.findViewById(R.id.apps_customize_page_indicator); pageIndicators.setAlpha(0.01f); ObjectAnimator indicatorsAlpha = - LauncherAnimUtils.ofFloat(pageIndicators, "alpha", 1f); + ObjectAnimator.ofFloat(pageIndicators, "alpha", 1f); indicatorsAlpha.setDuration(revealDuration); mStateAnimation.play(indicatorsAlpha); @@ -3292,7 +3312,7 @@ public class Launcher extends Activity int allAppsButtonSize = LauncherAppState.getInstance(). getDynamicGrid().getDeviceProfile().allAppsButtonVisualSize; float startRadius = isWidgetTray ? 0 : allAppsButtonSize / 2; - Animator reveal = LauncherAnimUtils.createCircularReveal(revealView, width / 2, + Animator reveal = ViewAnimationUtils.createCircularReveal(revealView, width / 2, height / 2, startRadius, revealRadius); reveal.setDuration(revealDuration); reveal.setInterpolator(new LogDecelerateInterpolator(100, 0)); @@ -3309,7 +3329,6 @@ public class Launcher extends Activity } } }); - mStateAnimation.play(reveal); } @@ -3332,29 +3351,14 @@ public class Launcher extends Activity } } - @Override - public void onAnimationStart(Animator animation) { - // Prepare the position - toView.bringToFront(); - toView.setVisibility(View.VISIBLE); - } }); - boolean delayAnim = false; if (workspaceAnim != null) { mStateAnimation.play(workspaceAnim); } + dispatchOnLauncherTransitionPrepare(fromView, animated, false); dispatchOnLauncherTransitionPrepare(toView, animated, false); - - // If any of the objects being animated haven't been measured/laid out - // yet, delay the animation until we get a layout pass - if ((((LauncherTransitionable) toView).getContent().getMeasuredWidth() == 0) || - (mWorkspace.getMeasuredWidth() == 0) || - (toView.getMeasuredWidth() == 0)) { - delayAnim = true; - } - final AnimatorSet stateAnimation = mStateAnimation; final Runnable startAnimRunnable = new Runnable() { public void run() { @@ -3364,22 +3368,20 @@ public class Launcher extends Activity return; dispatchOnLauncherTransitionStart(fromView, animated, false); dispatchOnLauncherTransitionStart(toView, animated, false); - LauncherAnimUtils.startAnimationAfterNextDraw(mStateAnimation, toView); + + revealView.setAlpha(initAlpha); + if (Utilities.isLmp()) { + for (int i = 0; i < layerViews.size(); i++) { + View v = layerViews.get(i); + if (v != null) v.buildLayer(); + } + } + mStateAnimation.start(); } }; - if (delayAnim) { - toView.bringToFront(); - toView.setVisibility(View.VISIBLE); - final ViewTreeObserver observer = toView.getViewTreeObserver(); - observer.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { - public void onGlobalLayout() { - startAnimRunnable.run(); - toView.getViewTreeObserver().removeOnGlobalLayoutListener(this); - } - }); - } else { - startAnimRunnable.run(); - } + toView.bringToFront(); + toView.setVisibility(View.VISIBLE); + toView.post(startAnimRunnable); } else { toView.setTranslationX(0.0f); toView.setTranslationY(0.0f); @@ -3431,18 +3433,22 @@ public class Launcher extends Activity final View fromView = mAppsCustomizeTabHost; final View toView = mWorkspace; Animator workspaceAnim = null; + final ArrayList layerViews = new ArrayList(); + if (toState == Workspace.State.NORMAL) { workspaceAnim = mWorkspace.getChangeStateAnimation( - toState, animated); + toState, animated, layerViews); } else if (toState == Workspace.State.SPRING_LOADED || toState == Workspace.State.OVERVIEW) { workspaceAnim = mWorkspace.getChangeStateAnimation( - toState, animated); + toState, animated, layerViews); } - showHotseat(animated); if (animated) { mStateAnimation = LauncherAnimUtils.createAnimatorSet(); + if (workspaceAnim != null) { + mStateAnimation.play(workspaceAnim); + } final AppsCustomizePagedView content = (AppsCustomizePagedView) fromView.findViewById(R.id.apps_customize_pane_content); @@ -3450,113 +3456,133 @@ public class Launcher extends Activity final View page = content.getPageAt(content.getNextPage()); final View revealView = fromView.findViewById(R.id.fake_page); - AppsCustomizePagedView.ContentType contentType = content.getContentType(); - final boolean isWidgetTray = contentType == AppsCustomizePagedView.ContentType.Widgets; + // hideAppsCustomizeHelper is called in some cases when it is already hidden + // don't perform all these no-op animations. In particularly, this was causing + // the all-apps button to pop in and out. + if (fromView.getVisibility() == View.VISIBLE) { + AppsCustomizePagedView.ContentType contentType = content.getContentType(); + final boolean isWidgetTray = + contentType == AppsCustomizePagedView.ContentType.Widgets; - if (isWidgetTray) { - revealView.setBackground(res.getDrawable(R.drawable.quantum_panel_dark)); - } else { - revealView.setBackground(res.getDrawable(R.drawable.quantum_panel)); - } - - int width = revealView.getMeasuredWidth(); - int height = revealView.getMeasuredHeight(); - float revealRadius = (float) Math.sqrt((width * width) / 4 + (height * height) / 4); - - // Hide the real page background, and swap in the fake one - revealView.setVisibility(View.VISIBLE); - content.setPageBackgroundsVisible(false); - - final View allAppsButton = getAllAppsButton(); - revealView.setTranslationY(0); - int[] allAppsToPanelDelta = Utilities.getCenterDeltaInScreenSpace(revealView, - allAppsButton, null); - float yDrift = isWidgetTray ? height / 2 : allAppsToPanelDelta[1]; - float xDrift = isWidgetTray ? 0 : allAppsToPanelDelta[0]; - - revealView.setLayerType(View.LAYER_TYPE_HARDWARE, null); - - // The vertical motion of the apps panel should be delayed by one frame - // from the conceal animation in order to give the right feel. We correpsondingly - // shorten the duration so that the slide and conceal end at the same time. - ObjectAnimator panelDriftY = LauncherAnimUtils.ofFloat(revealView, "translationY", 0, yDrift); - panelDriftY.setDuration(revealDuration - SINGLE_FRAME_DELAY); - panelDriftY.setStartDelay(itemsAlphaStagger + SINGLE_FRAME_DELAY); - panelDriftY.setInterpolator(new LogDecelerateInterpolator(100, 0)); - mStateAnimation.play(panelDriftY); - - ObjectAnimator panelDriftX = LauncherAnimUtils.ofFloat(revealView, "translationX", 0, xDrift); - panelDriftX.setDuration(revealDuration - SINGLE_FRAME_DELAY); - panelDriftX.setStartDelay(itemsAlphaStagger + SINGLE_FRAME_DELAY); - panelDriftX.setInterpolator(new LogDecelerateInterpolator(100, 0)); - mStateAnimation.play(panelDriftX); - - if (isWidgetTray) { - ObjectAnimator panelAlpha = LauncherAnimUtils.ofFloat(revealView, "alpha", 1f, 0.4f); - panelAlpha.setDuration(revealDuration); - panelAlpha.setInterpolator(new LogDecelerateInterpolator(100, 0)); - mStateAnimation.play(panelAlpha); - } - - if (page != null) { - page.setLayerType(View.LAYER_TYPE_HARDWARE, null); - - ObjectAnimator pageDrift = LauncherAnimUtils.ofFloat(page, "translationY", - 0, yDrift); - pageDrift.setDuration(revealDuration - SINGLE_FRAME_DELAY); - pageDrift.setInterpolator(new LogDecelerateInterpolator(100, 0)); - pageDrift.setStartDelay(itemsAlphaStagger + SINGLE_FRAME_DELAY); - mStateAnimation.play(pageDrift); - - page.setAlpha(1f); - ObjectAnimator itemsAlpha = LauncherAnimUtils.ofFloat(page, "alpha", 1f, 0f); - itemsAlpha.setDuration(100); - itemsAlpha.setInterpolator(new LogDecelerateInterpolator(100, 0)); - mStateAnimation.play(itemsAlpha); - } - - View pageIndicators = fromView.findViewById(R.id.apps_customize_page_indicator); - pageIndicators.setAlpha(1f); - ObjectAnimator indicatorsAlpha = - LauncherAnimUtils.ofFloat(pageIndicators, "alpha", 0f); - indicatorsAlpha.setDuration(revealDuration); - indicatorsAlpha.setInterpolator(new DecelerateInterpolator(1.5f)); - mStateAnimation.play(indicatorsAlpha); - - width = revealView.getMeasuredWidth(); - - if (material) { - if (!isWidgetTray) { - allAppsButton.setVisibility(View.INVISIBLE); + if (isWidgetTray) { + revealView.setBackground(res.getDrawable(R.drawable.quantum_panel_dark)); + } else { + revealView.setBackground(res.getDrawable(R.drawable.quantum_panel)); } - int allAppsButtonSize = LauncherAppState.getInstance(). - getDynamicGrid().getDeviceProfile().allAppsButtonVisualSize; - float finalRadius = isWidgetTray ? 0 : allAppsButtonSize / 2; - Animator reveal = - LauncherAnimUtils.createCircularReveal(revealView, width / 2, - height / 2, revealRadius, finalRadius); - reveal.setInterpolator(new LogDecelerateInterpolator(100, 0)); - reveal.setDuration(revealDuration); - reveal.setStartDelay(itemsAlphaStagger); - reveal.addListener(new AnimatorListenerAdapter() { - public void onAnimationEnd(Animator animation) { - revealView.setVisibility(View.INVISIBLE); - if (!isWidgetTray) { - allAppsButton.setVisibility(View.VISIBLE); - } + int width = revealView.getMeasuredWidth(); + int height = revealView.getMeasuredHeight(); + float revealRadius = (float) Math.sqrt((width * width) / 4 + (height * height) / 4); + + // Hide the real page background, and swap in the fake one + revealView.setVisibility(View.VISIBLE); + content.setPageBackgroundsVisible(false); + + final View allAppsButton = getAllAppsButton(); + revealView.setTranslationY(0); + int[] allAppsToPanelDelta = Utilities.getCenterDeltaInScreenSpace(revealView, + allAppsButton, null); + + float xDrift = 0; + float yDrift = 0; + if (material) { + yDrift = isWidgetTray ? height / 2 : allAppsToPanelDelta[1]; + xDrift = isWidgetTray ? 0 : allAppsToPanelDelta[0]; + } else { + yDrift = 5 * height / 4; + xDrift = 0; + } + + revealView.setLayerType(View.LAYER_TYPE_HARDWARE, null); + TimeInterpolator decelerateInterpolator = material ? + new LogDecelerateInterpolator(100, 0) : + new LogDecelerateInterpolator(30, 0); + + // The vertical motion of the apps panel should be delayed by one frame + // from the conceal animation in order to give the right feel. We correpsondingly + // shorten the duration so that the slide and conceal end at the same time. + ObjectAnimator panelDriftY = LauncherAnimUtils.ofFloat(revealView, "translationY", + 0, yDrift); + panelDriftY.setDuration(revealDuration - SINGLE_FRAME_DELAY); + panelDriftY.setStartDelay(itemsAlphaStagger + SINGLE_FRAME_DELAY); + panelDriftY.setInterpolator(decelerateInterpolator); + mStateAnimation.play(panelDriftY); + + ObjectAnimator panelDriftX = LauncherAnimUtils.ofFloat(revealView, "translationX", + 0, xDrift); + panelDriftX.setDuration(revealDuration - SINGLE_FRAME_DELAY); + panelDriftX.setStartDelay(itemsAlphaStagger + SINGLE_FRAME_DELAY); + panelDriftX.setInterpolator(decelerateInterpolator); + mStateAnimation.play(panelDriftX); + + if (isWidgetTray || !material) { + float finalAlpha = material ? 0.4f : 0f; + revealView.setAlpha(1f); + ObjectAnimator panelAlpha = LauncherAnimUtils.ofFloat(revealView, "alpha", + 1f, finalAlpha); + panelAlpha.setDuration(revealDuration); + panelAlpha.setInterpolator(material ? decelerateInterpolator : + new AccelerateInterpolator(1.5f)); + mStateAnimation.play(panelAlpha); + } + + if (page != null) { + page.setLayerType(View.LAYER_TYPE_HARDWARE, null); + + ObjectAnimator pageDrift = LauncherAnimUtils.ofFloat(page, "translationY", + 0, yDrift); + page.setTranslationY(0); + pageDrift.setDuration(revealDuration - SINGLE_FRAME_DELAY); + pageDrift.setInterpolator(decelerateInterpolator); + pageDrift.setStartDelay(itemsAlphaStagger + SINGLE_FRAME_DELAY); + mStateAnimation.play(pageDrift); + + page.setAlpha(1f); + ObjectAnimator itemsAlpha = LauncherAnimUtils.ofFloat(page, "alpha", 1f, 0f); + itemsAlpha.setDuration(100); + itemsAlpha.setInterpolator(decelerateInterpolator); + mStateAnimation.play(itemsAlpha); + } + + View pageIndicators = fromView.findViewById(R.id.apps_customize_page_indicator); + pageIndicators.setAlpha(1f); + ObjectAnimator indicatorsAlpha = + LauncherAnimUtils.ofFloat(pageIndicators, "alpha", 0f); + indicatorsAlpha.setDuration(revealDuration); + indicatorsAlpha.setInterpolator(new DecelerateInterpolator(1.5f)); + mStateAnimation.play(indicatorsAlpha); + + width = revealView.getMeasuredWidth(); + + if (material) { + if (!isWidgetTray) { + allAppsButton.setVisibility(View.INVISIBLE); } - }); + int allAppsButtonSize = LauncherAppState.getInstance(). + getDynamicGrid().getDeviceProfile().allAppsButtonVisualSize; + float finalRadius = isWidgetTray ? 0 : allAppsButtonSize / 2; + Animator reveal = + LauncherAnimUtils.createCircularReveal(revealView, width / 2, + height / 2, revealRadius, finalRadius); + reveal.setInterpolator(new LogDecelerateInterpolator(100, 0)); + reveal.setDuration(revealDuration); + reveal.setStartDelay(itemsAlphaStagger); - mStateAnimation.play(reveal); - } + reveal.addListener(new AnimatorListenerAdapter() { + public void onAnimationEnd(Animator animation) { + revealView.setVisibility(View.INVISIBLE); + if (!isWidgetTray) { + allAppsButton.setVisibility(View.VISIBLE); + } + } + }); - dispatchOnLauncherTransitionPrepare(fromView, animated, true); - dispatchOnLauncherTransitionPrepare(toView, animated, true); - mAppsCustomizeContent.stopScrolling(); + mStateAnimation.play(reveal); + } - if (workspaceAnim != null) { - mStateAnimation.play(workspaceAnim); + dispatchOnLauncherTransitionPrepare(fromView, animated, true); + dispatchOnLauncherTransitionPrepare(toView, animated, true); + mAppsCustomizeContent.stopScrolling(); } mStateAnimation.addListener(new AnimatorListenerAdapter() { @@ -3578,9 +3604,26 @@ public class Launcher extends Activity } }); - dispatchOnLauncherTransitionStart(fromView, animated, true); - dispatchOnLauncherTransitionStart(toView, animated, true); - LauncherAnimUtils.startAnimationAfterNextDraw(mStateAnimation, toView); + final AnimatorSet stateAnimation = mStateAnimation; + final Runnable startAnimRunnable = new Runnable() { + public void run() { + // Check that mStateAnimation hasn't changed while + // we waited for a layout/draw pass + if (mStateAnimation != stateAnimation) + return; + dispatchOnLauncherTransitionStart(fromView, animated, false); + dispatchOnLauncherTransitionStart(toView, animated, false); + + if (Utilities.isLmp()) { + for (int i = 0; i < layerViews.size(); i++) { + View v = layerViews.get(i); + if (v != null) v.buildLayer(); + } + } + mStateAnimation.start(); + } + }; + fromView.post(startAnimRunnable); } else { fromView.setVisibility(View.GONE); dispatchOnLauncherTransitionPrepare(fromView, animated, true); @@ -3724,25 +3767,6 @@ public class Launcher extends Activity // TODO } - /** - * Shows the hotseat area. - */ - void showHotseat(boolean animated) { - if (!LauncherAppState.getInstance().isScreenLarge()) { - if (animated) { - if (mHotseat.getAlpha() != 1f) { - int duration = 0; - if (mSearchDropTargetBar != null) { - duration = mSearchDropTargetBar.getTransitionInDuration(); - } - mHotseat.animate().alpha(1f).setDuration(duration); - } - } else { - mHotseat.setAlpha(1f); - } - } - } - /** * Hides the hotseat area. */ diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 9d97306179..732b9ba4a6 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -1212,14 +1212,6 @@ public class Workspace extends SmoothPagedView enableChildrenCache(mCurrentPage - 1, mCurrentPage + 1); } } - - // If we are not fading in adjacent screens, we still need to restore the alpha in case the - // user scrolls while we are transitioning (should not affect dispatchDraw optimizations) - if (!mWorkspaceFadeInAdjacentScreens) { - for (int i = 0; i < getChildCount(); ++i) { - ((CellLayout) getPageAt(i)).setShortcutAndWidgetAlpha(1f); - } - } } protected void onPageEndMoving() { @@ -2054,8 +2046,9 @@ public class Workspace extends SmoothPagedView mNewAlphas = new float[childCount]; } - Animator getChangeStateAnimation(final State state, boolean animated) { - return getChangeStateAnimation(state, animated, 0, -1); + Animator getChangeStateAnimation(final State state, boolean animated, + ArrayList layerViews) { + return getChangeStateAnimation(state, animated, 0, -1, layerViews); } @Override @@ -2191,6 +2184,11 @@ public class Workspace extends SmoothPagedView private static final int HIDE_WORKSPACE_DURATION = 100; Animator getChangeStateAnimation(final State state, boolean animated, int delay, int snapPage) { + return getChangeStateAnimation(state, animated, delay, snapPage, null); + } + + Animator getChangeStateAnimation(final State state, boolean animated, int delay, int snapPage, + ArrayList layerViews) { if (mState == state) { return null; } @@ -2312,6 +2310,9 @@ public class Workspace extends SmoothPagedView cl.setBackgroundAlpha(mNewBackgroundAlphas[i]); cl.setShortcutAndWidgetAlpha(mNewAlphas[i]); } else { + if (layerViews != null) { + layerViews.add(cl); + } if (mOldAlphas[i] != mNewAlphas[i] || currentAlpha != mNewAlphas[i]) { LauncherViewPropertyAnimator alphaAnim = new LauncherViewPropertyAnimator(cl.getShortcutsAndWidgets()); @@ -2359,6 +2360,17 @@ public class Workspace extends SmoothPagedView .alpha(finalOverviewPanelAlpha).withLayer(); overviewPanelAlpha.addListener(new AlphaUpdateListener(overviewPanel)); + // For animation optimations, we may need to provide the Launcher transition + // with a set of views on which to force build layers in certain scenarios. + hotseat.setLayerType(View.LAYER_TYPE_HARDWARE, null); + searchBar.setLayerType(View.LAYER_TYPE_HARDWARE, null); + overviewPanel.setLayerType(View.LAYER_TYPE_HARDWARE, null); + if (layerViews != null) { + layerViews.add(hotseat); + layerViews.add(searchBar); + layerViews.add(overviewPanel); + } + if (workspaceToOverview) { pageIndicatorAlpha.setInterpolator(new DecelerateInterpolator(2)); hotseatAlpha.setInterpolator(new DecelerateInterpolator(2)); @@ -2504,21 +2516,6 @@ public class Workspace extends SmoothPagedView private void onTransitionEnd() { mIsSwitchingState = false; updateChildrenLayersEnabled(false); - // The code in getChangeStateAnimation to determine initialAlpha and finalAlpha will ensure - // ensure that only the current page is visible during (and subsequently, after) the - // transition animation. If fade adjacent pages is disabled, then re-enable the page - // visibility after the transition animation. - if (!mWorkspaceFadeInAdjacentScreens) { - for (int i = 0; i < getChildCount(); i++) { - final CellLayout cl = (CellLayout) getChildAt(i); - cl.setShortcutAndWidgetAlpha(1f); - } - } else { - for (int i = 0; i < numCustomPages(); i++) { - final CellLayout cl = (CellLayout) getChildAt(i); - cl.setShortcutAndWidgetAlpha(1f); - } - } showCustomContentIfNecessary(); }