Bissmillahirahmanirahim
Assalamualaikum....
Ssnya seperti di bawah ini... Dan utk video cek di chanel youtube ane di playlist ane ada videonya....
Ini ss nya..

Oke Langsung aja...
bahan yg di perlukan...
#Fw-res.apk
#SystemUI.apk
#Dan INI
->Decompile Fw-res.apk dulu
lalu masuk ke res/values/dimens.xml
cari dan ubah
<dimen name="thumbnail_height">267dip</dimen>
<dimen name="thumbnail_width">168dip</dimen>
jika sudah... recompile sign tp jgn di push dulu... tahan bentar soalnya tutornya bukan di situ saja....
->selanjutnya....
Decompile SystemUI.apk
masukan semua bahannya...
dan masuk ke res/values/dimens.xml
dan tambahkan ini di bawahnya <resources>
<dimen name="horizontal_card_stack_min_scroll">800dip</dimen>
<dimen name="horizontal_card_stack_width">250dp</dimen>
<dimen name="horizontal_card_stack_height">400dp</dimen>
dan ubah value dr dimen ini juga
<dimen name="status_bar_recents_app_icon_max_width">
<dimen name="status_bar_recents_app_icon_max_height">
<dimen name="status_bar_recents_thumbnail_width">
<dimen name="status_bar_recents_thumbnail_height">
menjadi seperti ini...
<dimen name="status_bar_recents_app_icon_max_width">30.0dip</dimen>
<dimen name="status_bar_recents_app_icon_max_height">30.0dip</dimen>
<dimen name="status_bar_recents_thumbnail_width">300.0dip</dimen>
<dimen name="status_bar_recents_thumbnail_height">400.0dip</dimen>
jika sudah buka lagi res/values-land/dimens.xml
dan masukan juga ini di bawahnya...
<resources>
<dimen name="horizontal_card_stack_width">175.0dp</dimen>
<dimen name="horizontal_card_stack_height">275.0dp</dimen>
jika sudah....
cek lagi di res/values-land/dimens.xml
cek apakah ada dimen yg bernama seperti di bawah ini???
<dimen name="status_bar_recents_thumbnail_width">
<dimen name="status_bar_recents_thumbnail_height">
jika ada ubah jadi seperti di bawah ini...
<dimen name="status_bar_recents_thumbnail_width">@dimen/horizontal_card_stack_width</dimen>
<dimen name="status_bar_recents_thumbnail_height">@dimen/horizontal_card_stack_height</dimen>
jika blom ada... masukan dimen yg saya maksut tadi juga....
jika sudah...
Masukan ini di res/values/colors.xml
<color name="toolbar_color">#ffbcbcbc</color>
Jika sudah di masukan... kita tinggal edit layoutnya langsung masuk ke res/layout-port/statusbar_recent_panel.xml
cari
<com.android.systemui.recent.RecentsVerticalScrollView android:layout_gravity="center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="@dimen/status_bar_recents_scroll_fading_edge_length" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingRight="10.0dip" android:paddingLeft="10.0dip" android:stackFromBottom="false" android:divider="@null">
<LinearLayout android:orientation="vertical" 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.RecentsVerticalScrollView>
ubah hingga menjadi seperti di bawah ini....
<com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="@dimen/status_bar_recents_scroll_fading_edge_length" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingRight="10.0dip" android:paddingLeft="10.0dip" android:stackFromBottom="false" 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>
jika sudah...
masih di res/layout-port
sekarang masuk ke statusbar_recent_item.xml
sekarang cari
<FrameLayout android:paddingTop="@dimen/status_bar_recents_item_padding" android:paddingBottom="@dimen/status_bar_recents_item_padding" android:layout_width="fill_parent" android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
dan ubah android:layout_width="fill_parent" menjadi android:layout_width="@dimen/horizontal_card_stack_min_scroll"
sehingga mirip seperti di bawah ini...
<FrameLayout android:paddingTop="@dimen/status_bar_recents_item_padding" android:paddingBottom="@dimen/status_bar_recents_item_padding" android:layout_width="@dimen/horizontal_card_stack_min_scroll" android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
dan sekarang cari
<FrameLayout android:id="@id/app_thumbnail" android:background="@null" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="0dip" android:foreground="@null" android:layout_alignParentTop="true">
tambahkan ini di bawahnya
<com.ali.recent.BarCalculation android:background="#00000000" android:layout_width="wrap_content" android:layout_height="wrap_content">
dan tambahkan android:tag="app_thumbnail" di layout di bawah ini...
<ImageView android:id="@id/app_thumbnail_image" android:layout_width="@dimen/status_bar_recents_thumbnail_width" android:layout_height="@dimen/status_bar_recents_thumbnail_height" android:scaleType="fitXY"/>
sehingga menjadi seperti ini...
<ImageView android:tag="app_thumbnail" android:id="@id/app_thumbnail_image" android:layout_width="@dimen/status_bar_recents_thumbnail_width" android:layout_height="@dimen/status_bar_recents_thumbnail_height" android:scaleType="fitXY"/>
dan tambahkan ini di bawahnya <ImageView di atas....
<FrameLayout android:tag="toolbar" android:layout_width="wrap_content" android:layout_height="50.0dip">
<LinearLayout android:gravity="center|left" android:layout_gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="0.0dip" android:paddingRight="0.0dip" android:layout_width="@dimen/status_bar_recents_thumbnail_width" android:layout_height="match_parent">
sekarang cari layout2 di bawah ini...
<ImageView android:id="@id/app_icon" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_icon_left_margin" android:layout_marginTop="@dimen/status_bar_recents_app_icon_top_margin" 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:id="@id/app_label" android:paddingTop="2.0dip" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_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:scrollHorizontally="true" android:singleLine="true" android:layout_alignParentLeft="true" />
jika ketemu....
cut dan paste kan di bawahnya
<LinearLayout di atas...
dan tambahkan android:tag="app_text" di layout
<TextView android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:id="@id/app_label" android:paddingTop="2.0dip" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_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:scrollHorizontally="true" android:singleLine="true" android:layout_alignParentLeft="true" />
sehingga menjadi begini...
<TextView android:tag="app_text" android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:id="@id/app_label" android:paddingTop="2.0dip" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_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:scrollHorizontally="true" android:singleLine="true" android:layout_alignParentLeft="true" />
dan tambahkan
</LinearLayout>
</FrameLayout>
</com.ali.recent.BarCalculation>
di bawahnya TextView di atas tadi....
buka juga res/layout-land/statusbar_recent_item.xml
dan lakukan sama dengan yg di atas....
#NOTE
Untuk di res/layout-land/status_bar_recent_item.xml
yg di pakai BUKAN LAGI <com.ali.recent.BarCalculation> tp <com.ali.recent.BarCalculationLand>
Atau bisa liat komperan ane....
jika sudah di kedua layout-land ataupun port kita beralih ke smali/com/android/systemui/recent/RecentHorizontalScrollView.smali...
dan cari dengan pencarian TextEditor nama Landroid/widget/HorizontalScrollView
dan ganti semua value di atas dari Landroid/widget/HorizontalScrollView menjadi Lcom/ali/recent/HorizontalCardStackScroll
jika semua sudah terreplace...
cari .method public getChildAtPosition(Landroid/view/MotionEvent;)Landroid/view/View;
dan hapus semua yg ada di bawah .line 213
sampai .end method
dan ganti dengan
ini....
taruh di bawahnya
.line 213
move-object v0, p0
move-object v1, p1
move-object v3, v0
move-object v4, v1
invoke-virtual {v3, v4}, Lcom/android/systemui/recent/RecentsHorizontalScrollView;->getItemSwipe(Landroid/view/MotionEvent;)Landroid/view/View;
move-result-object v3
move-object v0, v3
return-object v0
.end method
jika sudah.... recompile sign push kedua2 nya... dan anda bisa merasakan sensasi HorizontalCardStack....
Jika masih binggung bisa lihat kompare ane... ane sertakan di folder kompare...
Credit..
#Allah Subhanahuata'ala
#Muhamad Shalallahualaiwasalam
#Keluarga
#Pacar
#Github
#Maaadr
#dan semua yg udah support saya...
Wassalamualaikum....
Assalamualaikum....
Ssnya seperti di bawah ini... Dan utk video cek di chanel youtube ane di playlist ane ada videonya....
Ini ss nya..
Oke Langsung aja...
bahan yg di perlukan...
#Fw-res.apk
#SystemUI.apk
#Dan INI
->Decompile Fw-res.apk dulu
lalu masuk ke res/values/dimens.xml
cari dan ubah
<dimen name="thumbnail_height">267dip</dimen>
<dimen name="thumbnail_width">168dip</dimen>
jika sudah... recompile sign tp jgn di push dulu... tahan bentar soalnya tutornya bukan di situ saja....
->selanjutnya....
Decompile SystemUI.apk
masukan semua bahannya...
dan masuk ke res/values/dimens.xml
dan tambahkan ini di bawahnya <resources>
<dimen name="horizontal_card_stack_min_scroll">800dip</dimen>
<dimen name="horizontal_card_stack_width">250dp</dimen>
<dimen name="horizontal_card_stack_height">400dp</dimen>
dan ubah value dr dimen ini juga
<dimen name="status_bar_recents_app_icon_max_width">
<dimen name="status_bar_recents_app_icon_max_height">
<dimen name="status_bar_recents_thumbnail_width">
<dimen name="status_bar_recents_thumbnail_height">
menjadi seperti ini...
<dimen name="status_bar_recents_app_icon_max_width">30.0dip</dimen>
<dimen name="status_bar_recents_app_icon_max_height">30.0dip</dimen>
<dimen name="status_bar_recents_thumbnail_width">300.0dip</dimen>
<dimen name="status_bar_recents_thumbnail_height">400.0dip</dimen>
jika sudah buka lagi res/values-land/dimens.xml
dan masukan juga ini di bawahnya...
<resources>
<dimen name="horizontal_card_stack_width">175.0dp</dimen>
<dimen name="horizontal_card_stack_height">275.0dp</dimen>
jika sudah....
cek lagi di res/values-land/dimens.xml
cek apakah ada dimen yg bernama seperti di bawah ini???
<dimen name="status_bar_recents_thumbnail_width">
<dimen name="status_bar_recents_thumbnail_height">
jika ada ubah jadi seperti di bawah ini...
<dimen name="status_bar_recents_thumbnail_width">@dimen/horizontal_card_stack_width</dimen>
<dimen name="status_bar_recents_thumbnail_height">@dimen/horizontal_card_stack_height</dimen>
jika blom ada... masukan dimen yg saya maksut tadi juga....
jika sudah...
Masukan ini di res/values/colors.xml
<color name="toolbar_color">#ffbcbcbc</color>
Jika sudah di masukan... kita tinggal edit layoutnya langsung masuk ke res/layout-port/statusbar_recent_panel.xml
cari
<com.android.systemui.recent.RecentsVerticalScrollView android:layout_gravity="center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="@dimen/status_bar_recents_scroll_fading_edge_length" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingRight="10.0dip" android:paddingLeft="10.0dip" android:stackFromBottom="false" android:divider="@null">
<LinearLayout android:orientation="vertical" 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.RecentsVerticalScrollView>
ubah hingga menjadi seperti di bawah ini....
<com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="@dimen/status_bar_recents_scroll_fading_edge_length" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingRight="10.0dip" android:paddingLeft="10.0dip" android:stackFromBottom="false" 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>
jika sudah...
masih di res/layout-port
sekarang masuk ke statusbar_recent_item.xml
sekarang cari
<FrameLayout android:paddingTop="@dimen/status_bar_recents_item_padding" android:paddingBottom="@dimen/status_bar_recents_item_padding" android:layout_width="fill_parent" android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
dan ubah android:layout_width="fill_parent" menjadi android:layout_width="@dimen/horizontal_card_stack_min_scroll"
sehingga mirip seperti di bawah ini...
<FrameLayout android:paddingTop="@dimen/status_bar_recents_item_padding" android:paddingBottom="@dimen/status_bar_recents_item_padding" android:layout_width="@dimen/horizontal_card_stack_min_scroll" android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
dan sekarang cari
<FrameLayout android:id="@id/app_thumbnail" android:background="@null" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="0dip" android:foreground="@null" android:layout_alignParentTop="true">
tambahkan ini di bawahnya
<com.ali.recent.BarCalculation android:background="#00000000" android:layout_width="wrap_content" android:layout_height="wrap_content">
dan tambahkan android:tag="app_thumbnail" di layout di bawah ini...
<ImageView android:id="@id/app_thumbnail_image" android:layout_width="@dimen/status_bar_recents_thumbnail_width" android:layout_height="@dimen/status_bar_recents_thumbnail_height" android:scaleType="fitXY"/>
sehingga menjadi seperti ini...
<ImageView android:tag="app_thumbnail" android:id="@id/app_thumbnail_image" android:layout_width="@dimen/status_bar_recents_thumbnail_width" android:layout_height="@dimen/status_bar_recents_thumbnail_height" android:scaleType="fitXY"/>
dan tambahkan ini di bawahnya <ImageView di atas....
<FrameLayout android:tag="toolbar" android:layout_width="wrap_content" android:layout_height="50.0dip">
<LinearLayout android:gravity="center|left" android:layout_gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="0.0dip" android:paddingRight="0.0dip" android:layout_width="@dimen/status_bar_recents_thumbnail_width" android:layout_height="match_parent">
sekarang cari layout2 di bawah ini...
<ImageView android:id="@id/app_icon" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_icon_left_margin" android:layout_marginTop="@dimen/status_bar_recents_app_icon_top_margin" 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:id="@id/app_label" android:paddingTop="2.0dip" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_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:scrollHorizontally="true" android:singleLine="true" android:layout_alignParentLeft="true" />
jika ketemu....
cut dan paste kan di bawahnya
<LinearLayout di atas...
dan tambahkan android:tag="app_text" di layout
<TextView android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:id="@id/app_label" android:paddingTop="2.0dip" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_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:scrollHorizontally="true" android:singleLine="true" android:layout_alignParentLeft="true" />
sehingga menjadi begini...
<TextView android:tag="app_text" android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:id="@id/app_label" android:paddingTop="2.0dip" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_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:scrollHorizontally="true" android:singleLine="true" android:layout_alignParentLeft="true" />
dan tambahkan
</LinearLayout>
</FrameLayout>
</com.ali.recent.BarCalculation>
di bawahnya TextView di atas tadi....
buka juga res/layout-land/statusbar_recent_item.xml
dan lakukan sama dengan yg di atas....
#NOTE
Untuk di res/layout-land/status_bar_recent_item.xml
yg di pakai BUKAN LAGI <com.ali.recent.BarCalculation> tp <com.ali.recent.BarCalculationLand>
Atau bisa liat komperan ane....
jika sudah di kedua layout-land ataupun port kita beralih ke smali/com/android/systemui/recent/RecentHorizontalScrollView.smali...
dan cari dengan pencarian TextEditor nama Landroid/widget/HorizontalScrollView
dan ganti semua value di atas dari Landroid/widget/HorizontalScrollView menjadi Lcom/ali/recent/HorizontalCardStackScroll
jika semua sudah terreplace...
cari .method public getChildAtPosition(Landroid/view/MotionEvent;)Landroid/view/View;
dan hapus semua yg ada di bawah .line 213
sampai .end method
dan ganti dengan
ini....
taruh di bawahnya
.line 213
move-object v0, p0
move-object v1, p1
move-object v3, v0
move-object v4, v1
invoke-virtual {v3, v4}, Lcom/android/systemui/recent/RecentsHorizontalScrollView;->getItemSwipe(Landroid/view/MotionEvent;)Landroid/view/View;
move-result-object v3
move-object v0, v3
return-object v0
.end method
jika sudah.... recompile sign push kedua2 nya... dan anda bisa merasakan sensasi HorizontalCardStack....
Jika masih binggung bisa lihat kompare ane... ane sertakan di folder kompare...
Credit..
#Allah Subhanahuata'ala
#Muhamad Shalallahualaiwasalam
#Keluarga
#Pacar
#Github
#Maaadr
#dan semua yg udah support saya...
Wassalamualaikum....