[Sony Cross-Device Development Themes and Apps] Ticklefish:
​

I'm not a big fan of cluttered status bars. I like a very minimalist look. So, with that in mind, I present a short guide to show you how to change your signal and WiFi icons so they look like they're merged together. Hope you like it!

This will work on any rom using "vector drawables" for signal and WiFi icons. That's any stock LP or MM rom, although it may work in 3rd party rom as well.

First, you'll need to decompile your "SystemUI.apk". I'm not going to explain how to do that here, there are plenty of in-depth guides to decompiling on xda. Personally I always use "Tickle My Android", which you can find here: http://xdaforums.com/showthread.php?t=1633333, but you can use any method you want to.

In your decompiled "SystemUI.apk\res\drawable" folder, you should find a collection of XML files with names like "stat_sys_wifi_signal_1.xml" and "stat_sys_signal_4_fully.xml". If you've got those, you can do this mod. If you can't, you might want to take a look at a much older version of this mod here: http://xdaforums.com/xperia-z/themes-apps/mod-merge-wifi-signal-icons-updated-t2276066[/url]

BEFORE TRYING THIS MOD, ALWAYS MAKE SURE YOU MAKE A BACKUP FIRST!

​

Download the ZIP file from the attachments, extract it and overwrite the XML files in your drawable folder with the ones in the ZIP. This will change the appearance of the icons.

Next, you'll need to edit "SystemUI.apk\res\layout\signal_cluster_view.xml". This will normally look something like this:

<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.SignalClusterView android:gravity="center_vertical" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="fill_parent" android:paddingEnd="@dimen/signal_cluster_battery_padding"
xmlns:android="[URL]http://schemas.android.com/apk/res/android[/URL]" xmlns:systemui="[URL]http://schemas.android.com/apk/res-auto[/URL]">
<com.android.systemui.statusbar.policy.NetworkTraffic android:id="@id/networkTraffic" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="false" />
<ImageView android:id="@id/vpn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_vpn_ic" android:paddingEnd="6.0dip" />
<FrameLayout android:id="@id/ethernet_combo" android:layout_width="wrap_content" android:layout_height="wrap_content">
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneLightTheme" android:id="@id/ethernet" android:layout_width="wrap_content" android:layout_height="wrap_content" systemui:hasOverlappingRendering="false" />
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneDarkTheme" android:id="@id/ethernet_dark" android:layout_width="wrap_content" android:layout_height="wrap_content" android:alpha="0.0" systemui:hasOverlappingRendering="false" />
</FrameLayout>
[COLOR=blue]<FrameLayout android:id="@id/wifi_combo" android:layout_width="wrap_content" android:layout_height="wrap_content">[/COLOR]
[COLOR=blue] <com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneLightTheme" android:id="@id/wifi_signal" android:layout_width="wrap_content" android:layout_height="wrap_content" systemui:hasOverlappingRendering="false" />[/COLOR]
[COLOR=blue] <com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneDarkTheme" android:id="@id/wifi_signal_dark" android:layout_width="wrap_content" android:layout_height="wrap_content" android:alpha="0.0" systemui:hasOverlappingRendering="false" />[/COLOR]
[COLOR=blue] <com.android.systemui.statusbar.AlphaOptimizedImageView android:id="@id/wifi_inout" android:layout_width="wrap_content" android:layout_height="wrap_content" systemui:hasOverlappingRendering="false" />
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneLightTheme" android:id="@id/wifi_inout" android:layout_width="wrap_content" android:layout_height="wrap_content" systemui:hasOverlappingRendering="false" />
[/COLOR][COLOR=blue][/COLOR][COLOR=blue] </FrameLayout>[/COLOR]
<View android:id="@id/wifi_signal_spacer" android:visibility="gone" android:layout_width="0.0dip" android:layout_height="0.0dip" />
[COLOR=red]<LinearLayout android:id="@id/mobile_signal_group" android:layout_width="wrap_content" android:layout_height="wrap_content" />[/COLOR]
<FrameLayout android:id="@id/no_sims_combo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:contentDescription="@string/accessibility_no_sims">
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneLightTheme" android:id="@id/no_sims" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_no_sims" systemui:hasOverlappingRendering="false" />
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneDarkTheme" android:id="@id/no_sims_dark" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_no_sims" android:alpha="0.0" systemui:hasOverlappingRendering="false" />
</FrameLayout>
<View android:id="@id/wifi_airplane_spacer" android:visibility="gone" android:layout_width="4.0dip" android:layout_height="4.0dip" />
<ImageView android:id="@id/airplane" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</com.android.systemui.statusbar.SignalClusterView>

Your exact code may differ but you'll normally have some lines representing the WiFi icon and some lines representing the signal icon. All you need to do next is move the WiFi lines to under the signal lines. Like this:

<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.SignalClusterView android:gravity="center_vertical" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="fill_parent" android:paddingEnd="@dimen/signal_cluster_battery_padding"
xmlns:android="[URL]http://schemas.android.com/apk/res/android[/URL]" xmlns:systemui="[URL]http://schemas.android.com/apk/res-auto[/URL]">
<com.android.systemui.statusbar.policy.NetworkTraffic android:id="@id/networkTraffic" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="false" />
<ImageView android:id="@id/vpn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_vpn_ic" android:paddingEnd="6.0dip" />
<FrameLayout android:id="@id/ethernet_combo" android:layout_width="wrap_content" android:layout_height="wrap_content">
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneLightTheme" android:id="@id/ethernet" android:layout_width="wrap_content" android:layout_height="wrap_content" systemui:hasOverlappingRendering="false" />
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneDarkTheme" android:id="@id/ethernet_dark" android:layout_width="wrap_content" android:layout_height="wrap_content" android:alpha="0.0" systemui:hasOverlappingRendering="false" />
</FrameLayout>
<View android:id="@id/wifi_signal_spacer" android:visibility="gone" android:layout_width="0.0dip" android:layout_height="0.0dip" />
[COLOR=red] <LinearLayout android:id="@id/mobile_signal_group" android:layout_width="wrap_content" android:layout_height="wrap_content" />[/COLOR]
[COLOR=blue] <FrameLayout android:id="@id/wifi_combo" android:layout_width="wrap_content" android:layout_height="wrap_content">[/COLOR]
[COLOR=blue] <com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneLightTheme" android:id="@id/wifi_signal" android:layout_width="wrap_content" android:layout_height="wrap_content" systemui:hasOverlappingRendering="false" />[/COLOR]
[COLOR=blue] <com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneDarkTheme" android:id="@id/wifi_signal_dark" android:layout_width="wrap_content" android:layout_height="wrap_content" android:alpha="0.0" systemui:hasOverlappingRendering="false" />[/COLOR]
[COLOR=blue] <com.android.systemui.statusbar.AlphaOptimizedImageView android:id="@id/wifi_inout" android:layout_width="wrap_content" android:layout_height="wrap_content" systemui:hasOverlappingRendering="false" />
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneLightTheme" android:id="@id/wifi_inout" android:layout_width="wrap_content" android:layout_height="wrap_content" systemui:hasOverlappingRendering="false" />
[/COLOR][COLOR=blue][/COLOR][COLOR=blue] </FrameLayout>[/COLOR]
<FrameLayout android:id="@id/no_sims_combo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:contentDescription="@string/accessibility_no_sims">
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneLightTheme" android:id="@id/no_sims" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_no_sims" systemui:hasOverlappingRendering="false" />
<com.android.systemui.statusbar.AlphaOptimizedImageView android:theme="@style/DualToneDarkTheme" android:id="@id/no_sims_dark" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_no_sims" android:alpha="0.0" systemui:hasOverlappingRendering="false" />
</FrameLayout>
<View android:id="@id/wifi_airplane_spacer" android:visibility="gone" android:layout_width="4.0dip" android:layout_height="4.0dip" />
<ImageView android:id="@id/airplane" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</com.android.systemui.statusbar.SignalClusterView>

Save, recompile and push back to your phone and you should now have rather lovely new, merged icons! Enjoy!