[Dev][Port] Sense Style + Windows Style Recent Apps

grgsiocl

Senior Member
Nov 9, 2009
2,891
4,546
0
Kurnool, Andhra Pradesh
Due to the request from few dev/cookers, i would like to show, how this mod can be achieved!

Screenshot_2012-06-28-18-39-42.jpg

Screenshot_2012-06-28-19-22-56.jpg

Moderators: Before people scream on me, you can move this thread, if doesn't belongs here!

Decompile both SystemUI and framework-res,apk using apktool

framework-res.apk

- /res/values/dimens.xml : change thumbnail size to..


Code:
<dimen name="thumbnail_height">305.0dip</dimen>
<dimen name="thumbnail_width">192.0dip</dimen>
Change the dip values the way you want, but for galaxy note the above dip's fits correctly.

After this compile back and this is the only chnage needs to be done in framework-res.apk

* SystemUI.apk

- /res/values/bools.xml


PHP:
<bool name="config_recents_thumbnail_image_fits_to_xy">true</bool>
- /res/values/drawables.xml

PHP:
<item type="drawable" name="status_bar_recents_background_solid">#ff33b1e1</item>
Now you can change any background you want, by modifying the values of #ff33b1e1...but i prefer this value #b3000000

- /res/layout/status_bar_no_recent_apps.xml

Replace the entire code with this one!

PHP:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <Button android:textSize="@dimen/status_bar_recents_app_label_text_size" android:layout_gravity="center" android:id="@id/no_recent_apps_launch_button" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="55.0dip" android:text="@string/status_bar_recent_launch_task_manager_title" />
    <TextView android:textSize="20.0dip" android:textColor="@android:color/holo_blue_light" android:gravity="center_horizontal" android:layout_gravity="center" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_no_recent_apps" />
</FrameLayout>
- /res/layout-port/status_bar_recent_item.xml

Replace the entire code with this one!

PHP:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:paddingLeft="@dimen/status_bar_recents_item_padding" android:paddingRight="@dimen/status_bar_recents_item_padding" android:layout_width="wrap_content" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <RelativeLayout android:layout_gravity="center_vertical" android:id="@id/recent_item" android:paddingTop="@android:dimen/status_bar_height" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true">
        <FrameLayout android:id="@id/app_thumbnail" android:background="#00000000" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:foreground="#00000000" android:layout_centerInParent="true">
            <ImageView android:id="@id/app_thumbnail_image" android:paddingTop="60.0dip" android:layout_width="212.0dip" android:layout_height="455.0dip" android:layout_marginTop="30.0dip" android:scaleType="centerInside" />
        </FrameLayout>
        <ImageView android:gravity="center_horizontal" android:id="@id/app_icon" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="405.0dip" android:scaleType="centerInside" android:adjustViewBounds="true" android:maxWidth="@dimen/status_bar_recents_app_icon_max_width" android:maxHeight="@dimen/status_bar_recents_app_icon_max_height" />
        <TextView android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/app_label" android:paddingTop="0.0dip" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="3.0dip" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_icon" android:layout_alignParentBottom="true" />
        <TextView android:textSize="@dimen/status_bar_recents_app_description_text_size" android:ellipsize="marquee" android:id="@id/app_description" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="40.0dip" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_label" android:layout_alignParentBottom="true" />
    </RelativeLayout>
</FrameLayout>
- /res/layout-port/status_bar_recent_panel.xml

Replace the entire code with this one

PHP:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.recent.RecentsPanelView android:id="@id/recents_root" android:layout_width="fill_parent" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_centerVertical="true">
        <ImageView android:gravity="center" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="0.0dip" android:src="@drawable/status_bar_recents_background" />
        <com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="bottom|left|center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginRight="0.0dip" android:stackFromBottom="true" android:divider="@null">
            <LinearLayout android:orientation="horizontal" android:id="@id/recents_linear_layout" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" />
        </com.android.systemui.recent.RecentsHorizontalScrollView>
        <TextView android:textSize="20.0dip" android:textColor="#ffe5e5e5" android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="45.0dip" android:text="@string/recent_apps_title" />
        <Button android:textSize="@dimen/status_bar_recents_app_label_text_size" android:layout_gravity="bottom|center" android:id="@id/recents_launch_button" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_recent_launch_task_manager_title" />
    </FrameLayout>
    <include android:id="@id/recents_no_apps" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/status_bar_no_recent_apps" />
</com.android.systemui.recent.RecentsPanelView>
- /res/layout-port/tw_status_bar_recent_panel.xml

Replace the entire code with this one

PHP:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.recent.RecentsPanelView android:id="@id/recents_root" android:layout_width="fill_parent" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_centerVertical="true">
        <ImageView android:gravity="center" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="0.0dip" android:src="@drawable/status_bar_recents_background" />
        <com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="bottom|left|center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginRight="0.0dip" android:stackFromBottom="true" android:divider="@null">
            <LinearLayout android:orientation="horizontal" android:id="@id/recents_linear_layout" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" />
        </com.android.systemui.recent.RecentsHorizontalScrollView>
        <TextView android:textSize="20.0dip" android:textColor="#ffe5e5e5" android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="45.0dip" android:text="@string/recent_apps_title" />
        <Button android:textSize="@dimen/status_bar_recents_app_label_text_size" android:layout_gravity="bottom|center" android:id="@id/recents_launch_button" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_recent_launch_task_manager_title" />
    </FrameLayout>
    <include android:id="@id/recents_no_apps" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/status_bar_no_recent_apps" />
</com.android.systemui.recent.RecentsPanelView>
UP TO HERE WE HAVE DONE THE CODING FOR PORTRAIT MODE, FOR LANDSCAPE FOLLOW THE BELLOW STEPS

- /res/layout-land/status_bar_recent_item.xml

Replace the entire code with this one!

PHP:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:paddingLeft="@dimen/status_bar_recents_item_padding" android:paddingRight="@dimen/status_bar_recents_item_padding" android:layout_width="wrap_content" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <RelativeLayout android:layout_gravity="center_vertical" android:id="@id/recent_item" android:paddingTop="@android:dimen/status_bar_height" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true">
        <FrameLayout android:id="@id/app_thumbnail" android:background="#00000000" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:foreground="#00000000" android:layout_centerInParent="true">
            <ImageView android:id="@id/app_thumbnail_image" android:layout_width="120.0dip" android:layout_height="320.0dip" android:scaleType="centerInside" />
        </FrameLayout>
        <ImageView android:gravity="center_horizontal" android:id="@id/app_icon" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="225.0dip" android:scaleType="centerInside" android:adjustViewBounds="true" android:maxWidth="20.0dip" android:maxHeight="20.0dip" />
        <TextView android:textSize="20.0dip" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:gravity="center_horizontal" android:id="@id/app_label" android:paddingTop="0.0dip" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="0.0dip" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_icon" android:layout_alignParentBottom="true" />
        <TextView android:textSize="@dimen/status_bar_recents_app_description_text_size" android:ellipsize="marquee" android:id="@id/app_description" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="3.0dip" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_label" android:layout_alignParentBottom="true" />
    </RelativeLayout>
</FrameLayout>
- /res/layout-land/status_bar_recent_panel.xml

Replace the entire code with this one!

PHP:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.recent.RecentsPanelView android:id="@id/recents_root" android:layout_width="fill_parent" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_centerVertical="true">
        <ImageView android:gravity="center" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="0.0dip" android:src="@drawable/status_bar_recents_background" />
        <com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="bottom|left|center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginRight="0.0dip" android:stackFromBottom="true" android:divider="@null">
            <LinearLayout android:orientation="horizontal" android:id="@id/recents_linear_layout" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" />
        </com.android.systemui.recent.RecentsHorizontalScrollView>
        <TextView android:textSize="20.0dip" android:textColor="#ffe5e5e5" android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="15.0dip" android:text="@string/recent_apps_title" />
        <Button android:textSize="@dimen/status_bar_recents_app_label_text_size" android:layout_gravity="bottom" android:id="@id/recents_launch_button" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_recent_launch_task_manager_title" />
    </FrameLayout>
    <include android:id="@id/recents_no_apps" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/status_bar_no_recent_apps" />
</com.android.systemui.recent.RecentsPanelView>
- /res/layout-land/tw_status_bar_recent_panel.xml

Replace the entire code with this one!

PHP:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.recent.RecentsPanelView android:id="@id/recents_root" android:layout_width="fill_parent" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_centerVertical="true">
        <ImageView android:gravity="center" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="0.0dip" android:src="@drawable/status_bar_recents_background" />
        <com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="bottom|left|center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginRight="0.0dip" android:stackFromBottom="true" android:divider="@null">
            <LinearLayout android:orientation="horizontal" android:id="@id/recents_linear_layout" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" />
        </com.android.systemui.recent.RecentsHorizontalScrollView>
        <TextView android:textSize="20.0dip" android:textColor="#ffe5e5e5" android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="15.0dip" android:text="@string/recent_apps_title" />
        <Button android:textSize="@dimen/status_bar_recents_app_label_text_size" android:layout_gravity="bottom" android:id="@id/recents_launch_button" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_recent_launch_task_manager_title" />
    </FrameLayout>
    <include android:id="@id/recents_no_apps" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/status_bar_no_recent_apps" />
</com.android.systemui.recent.RecentsPanelView>
Now open res/values/id.xml and add this one at the end of the file!

PHP:
<item type="id" name="no_recent_apps_launch_button">false</item>
Now open res/values/strings.xml and add this one at the end of the file!

PHP:
<string name="recent_apps_title">Recent apps</string>
Now compile the systemui.apk and you will have windows style task manager / recent apps...if you would like to have the sense style with reflection background, then please download the file from here which i made it for criskelo (http://forum.xda-developers.com/showthread.php?p=27593864#post27593864) and compare the code, you will know how to get it. The code is located in

systemui\smali\com\android\systemui\recent\RecentsPanelView.smali


of @redroid done lot of hard work to find the code , LOL...you can find the code from here

http://forum.xda-developers.com/showpost.php?p=28701323&postcount=28

:cowboy:Credits!

To all the developers around here and my special thanks to @evilisto


Feel Helped, Press Thanks!
 
Last edited:

zard

Senior Member
Jul 19, 2005
3,463
307
213
@grgsiocl This is fantastic. I realised that you only have the cwm for Criskelo's rom. I was hoping that you could be kind enough to create the cwm for other roms, maybe Cassie's XtraliteRom ICS 4.5 and SVA ICS 5.2? Thanking you in advance.
 

grgsiocl

Senior Member
Nov 9, 2009
2,891
4,546
0
Kurnool, Andhra Pradesh
@grgsiocl This is fantastic. I realised that you only have the cwm for Criskelo's rom. I was hoping that you could be kind enough to create the cwm for other roms, maybe Cassie's XtraliteRom ICS 4.5 and SVA ICS 5.2? Thanking you in advance.
just now created a mod for cassies and sent a PM to the developer..let me wait for his nod though!
 

grgsiocl

Senior Member
Nov 9, 2009
2,891
4,546
0
Kurnool, Andhra Pradesh
I remember seeing in nexus thread that someone had ported windows mango to it.

Is it possible to do it here too? ??
may be possible, but i am not in to that at the moment...it would be feasible for us to port jellybean as early as possible...frayyab has already made working (almost) jelly bean for s3, so we need to wait till he completes...not many of here are int in porting windows OS
 

Rulinglionadi

Senior Member
Mar 30, 2012
752
221
0
27
INDIA
www.facebook.com
may be possible, but i am not in to that at the moment...it would be feasible for us to port jellybean as early as possible...frayyab has already made working (almost) jelly bean for s3, so we need to wait till he completes...not many of here are int in porting windows OS
true...but i see MIUI threads coming up...would be nice to mix MIUI,JB and Windows 8 together... :laugh:
 

zard

Senior Member
Jul 19, 2005
3,463
307
213
just now created a mod for cassies and sent a PM to the developer..let me wait for his nod though!
Still no response from cassies developer? Spent my time to setup my Note with his latest rom the way I liked it and now, it's just missing this mod. ;-)

Sent from my GT-N7000 using Tapatalk 2
 

grgsiocl

Senior Member
Nov 9, 2009
2,891
4,546
0
Kurnool, Andhra Pradesh
Still no response from cassies developer? Spent my time to setup my Note with his latest rom the way I liked it and now, it's just missing this mod. ;-)

Sent from my GT-N7000 using Tapatalk 2
i have sent a PM, but he is pretty busy in making a ROM for s3, so he might include it in next version...personally i have note tested, but you want to test , then flash the zip from recovery!

http://www.mediafire.com/?11f39377ozwrcvz

Please do make a backup of ROM incase if something goes wrong which is very rare...or else make a copy of my zip and rename something like original_cassie and copy the systemui.apk and framework-res.apk in the corresponding folders. if the my mod doesnt work, then you can flash back the original zip!
 

zard

Senior Member
Jul 19, 2005
3,463
307
213
i have sent a PM, but he is pretty busy in making a ROM for s3, so he might include it in next version...personally i have note tested, but you want to test , then flash the zip from recovery!

http://www.mediafire.com/?11f39377ozwrcvz

Please do make a backup of ROM incase if something goes wrong which is very rare...or else make a copy of my zip and rename something like original_cassie and copy the systemui.apk and framework-res.apk in the corresponding folders. if the my mod doesnt work, then you can flash back the original zip!
Cool, works fine, just that the 15 toggles mod from http://forum.xda-developers.com/showthread.php?t=1620625 will not work anymore. Guess both mods are using the same apks. Any possibility of helping to add to the all blue 15 toggles mod? Thanks.


Sent from my GT-N7000 using Tapatalk 2
 

grgsiocl

Senior Member
Nov 9, 2009
2,891
4,546
0
Kurnool, Andhra Pradesh
Cool, works fine, just that the 15 toggles mod from http://forum.xda-developers.com/showthread.php?t=1620625 will not work anymore. Guess both mods are using the same apks. Any possibility of helping to add to the all blue 15 toggles mod? Thanks.


Sent from my GT-N7000 using Tapatalk 2
Ok thanks for the feedback...I will include it by today evening...till that time, you can flash your original file
 

zard

Senior Member
Jul 19, 2005
3,463
307
213
Ok thanks for the feedback...I will include it by today evening...till that time, you can flash your original file
No worries. I am keeping your sense mod and waiting for your update. The sense mod is used more frequently than the 15 toggles mod. ;-)
Thanks.

Sent from my GT-N7000 using Tapatalk 2
 
Last edited:

zard

Senior Member
Jul 19, 2005
3,463
307
213
Ok thanks for the feedback...I will include it by today evening...till that time, you can flash your original file






No worries. I am keeping your sense mod and waiting for your update. The sense mod is used more frequently than the 15 toggles mod. ;-)
Thanks.

Sent from my GT-N7000 using Tapatalk 2
Looks like something might have crop up, hope it's not too serious. Hope you can resolve it soon. Thanks.

Sent from my GT-N7000 using Tapatalk 2
 

grgsiocl

Senior Member
Nov 9, 2009
2,891
4,546
0
Kurnool, Andhra Pradesh
nice copy paste:p

Gues instead of only my ROM every rom will be the same again..
its even the same in goa rom also my friend(check the ver 2.0)...just sharing the mod and also the mod was ported from nexus...you can search the xda, you will get the results...well yes i did mentioned in the other thread, that only code i obtained from the alliance rom is to change the background image, by changing the nandroid11.png which is located in systemui....that also i changed it and assigned the code to take the background of status bar solid background......no offence:eek:
 
Last edited: