[Captivate Themes and Apps] 10tonhammr:
Animated Notification Pulldown

I got something new for you guys. :D I take NO credit for this mod, but I did have to tweak it and use some trial and error to port it to Mosaic. Thanks to Nottach and es0tericcha0s from the Atrix forums for posting.

Basically, this turns the background of the notification pulldown window into an animation- its like a boot animation playing in the background. The video below is a little laggy- shootme's live screen capture framerate maxes out at 10- when its actually playing it's perfectly smooth. :)

[YOUTUBE]88wqFZQ1Jb4[/YOUTUBE]

1. The mod is contained in the SystemUi.apk. Start by decompiling it using your preferred method. Make sure it recompiles correctly BEFORE you start changing anything!! If you get an error later on while recompiling, you will know it wasn't caused by a bad .9.png or something else not related to this mod.

2. Go to: res/drawable-hdpi folder, and use Photoshop, Gimp, or another image editing program and make both shade_bg.png and status_bar_background.png completely transparent.

3. Also in res/drawable-hdpi folder, add the .png files for your animation. Name all of the animation images: pulldown_anim# (#=image number, 0,1,2,3 ect. just like boot/battery animation). Mine has 18 images.

4. Go to: res/layout/status_bar_tracking.xml. In the 1st line of code, Add: android:background="@drawable/status_bar_background_animation" . First line should now look like this:

<com.android.systemui.statusbar.TrackingView android:orientation="vertical" [COLOR="red"]android:background="@drawable/status_bar_background_animation"[/COLOR] android:paddingLeft="0.0px" android:paddingRight="0.0px" android:paddingBottom="0.0px" android:focusable="true" android:visibility="gone" android:descendantFocusability="afterDescendants"

Close this xml and save the changes.

5. Go to: res/drawable. This folder should have 3 xml files. Leave them alone. You need to create a new one. Open notepad ++ or your text editor of choice and enter the following:

<?xml version="1.0" encoding="utf-8"?>
<animation-list android:oneshot="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:duration="90" android:drawable="@drawable/pulldown_anim0" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim1" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim2" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim3" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim4" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim5" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim6" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim7" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim8" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim9" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim10" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim11" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim12" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim13" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim14" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim15" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim16" />
<item android:duration="90" android:drawable="@drawable/pulldown_anim17" />
</animation-list>

This is your animation list. It controls what images are displayed, in what order, and how long each image is displayed (android:duration="x". Higher value= longer display time, slower animation). There should only be as many item lines as you have animation images. The list above (mine) has 18 images (0-17), so there are 18 image lines. If you only have 10 animation images, you should only have 10 lines. Close this file, save it in the drawable folder as: status_bar_background_animation.xml

6. Compile the SystemUi.apk. Is this a system apk? choose Yes. Keep unmodified files? choose Yes. When prompted, navigate to the keep folder and delete: the "res" folder and the "resources.arsc" file. Finish compiling the apk. If you get an error, double check all of your file names for the images and xmls and make sure they are consistent. Rename unsignedSystemUi.apk to SystemUi.apk, drop it in and flash. :D:D:D

Here is my SystemUI.apk from Dark Fire 6.0 Beta, which has the animation seen in the video above.

Hit the Thanks button if this helps you out. :D