[Galaxy S6 General] asc1977:
How to add Carrier label to statusbar with allignment and color options in romcontrol

Decompile SystemUI.apk

goto this post and klick on thx button for his useful post. thx [MENTION=6594721]SidRobo[/MENTION]

i take smalis from there and edited it a little. download from attachment in my post here and paste to SystemUI/smali/com/android/systemui/statusbar/phone/

open res/values/ids.xml and add

<item type="id" name="CustomCarrierCenter" />
<item type="id" name="CustomCarrierLeft" />
<item type="id" name="CustomCarrierRight" />

open smali/com/android/Systemui/statusbar/phone/PhoneStatusbar.smali and add blue

const-string v5, "display_battery_percentage"

invoke-static {v5}, Landroid/provider/Settings$System;->getUriFor(Ljava/lang/String;)Landroid/net/Uri;

move-result-object v5

const/4 v6, 0x0

move-object/from16 v0, p0

iget-object v8, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mBatteryTextObserver:Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BatteryTextObserver;

invoke-virtual {v4, v5, v6, v8}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V

.line 1506
move-object/from16 v0, p0

iget-object v4, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mBatteryTextObserver:Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BatteryTextObserver;

const/4 v5, 0x0

invoke-virtual {v4, v5}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BatteryTextObserver;->onChange(Z)V

move-object/from16 v0, p0
[COLOR="Blue"]	invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->StatusbarCarrierVisibilityRight()V

invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->KeyguardCarrierVisibilityRight()V

invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->StatusbarCarrierVisibilityCenter()V

invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->KeyguardCarrierVisibilityCenter()V

invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->StatusbarCarrierVisibilityLeft()V

invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->KeyguardCarrierVisibilityLeft()V[/COLOR]

at bottom of smali add 6 methods

.method StatusbarCarrierVisibilityRight()V
.registers 7

const/4 v1, 0x0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "CustomCarrierRight"

const-string v4, "id"

iget-object v5, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

move-result-object v2

const-string v3, "CustomCarrierRight"

invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

move-result v2

const/4 v3, 0x1

if-ne v2, v3, :cond_2e

:goto_24
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;

invoke-virtual {v2, v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;

move-result-object v2

invoke-virtual {v2, v1}, Landroid/view/View;->setVisibility(I)V

return-void

:cond_2e
const/16 v1, 0x8

goto :goto_24
.end method

.method KeyguardCarrierVisibilityRight()V
.registers 7

const/4 v1, 0x0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "CustomCarrierRight"

const-string v4, "id"

iget-object v5, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

move-result-object v2

const-string v3, "CustomCarrierRight"

invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

move-result v2

const/4 v3, 0x1

if-ne v2, v3, :cond_2e

:goto_24
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mKeyguardStatusBar:Lcom/android/systemui/statusbar/phone/KeyguardStatusBarView;

invoke-virtual {v2, v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;

move-result-object v2

invoke-virtual {v2, v1}, Landroid/view/View;->setVisibility(I)V

return-void

:cond_2e
const/16 v1, 0x8

goto :goto_24
.end method

.method StatusbarCarrierVisibilityCenter()V
.registers 7

const/4 v1, 0x0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "CustomCarrierCenter"

const-string v4, "id"

iget-object v5, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

move-result-object v2

const-string v3, "CustomCarrierCenter"

invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

move-result v2

const/4 v3, 0x1

if-ne v2, v3, :cond_2e

:goto_24
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;

invoke-virtual {v2, v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;

move-result-object v2

invoke-virtual {v2, v1}, Landroid/view/View;->setVisibility(I)V

return-void

:cond_2e
const/16 v1, 0x8

goto :goto_24
.end method

.method KeyguardCarrierVisibilityCenter()V
.registers 7

const/4 v1, 0x0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "CustomCarrierCenter"

const-string v4, "id"

iget-object v5, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

move-result-object v2

const-string v3, "CustomCarrierCenter"

invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

move-result v2

const/4 v3, 0x1

if-ne v2, v3, :cond_2e

:goto_24
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mKeyguardStatusBar:Lcom/android/systemui/statusbar/phone/KeyguardStatusBarView;

invoke-virtual {v2, v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;

move-result-object v2

invoke-virtual {v2, v1}, Landroid/view/View;->setVisibility(I)V

return-void

:cond_2e
const/16 v1, 0x8

goto :goto_24
.end method

.method StatusbarCarrierVisibilityLeft()V
.registers 7

const/4 v1, 0x0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "CustomCarrierLeft"

const-string v4, "id"

iget-object v5, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

move-result-object v2

const-string v3, "CustomCarrierLeft"

invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

move-result v2

const/4 v3, 0x1

if-ne v2, v3, :cond_2e

:goto_24
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;

invoke-virtual {v2, v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;

move-result-object v2

invoke-virtual {v2, v1}, Landroid/view/View;->setVisibility(I)V

return-void

:cond_2e
const/16 v1, 0x8

goto :goto_24
.end method

.method KeyguardCarrierVisibilityLeft()V
.registers 7

const/4 v1, 0x0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "CustomCarrierLeft"

const-string v4, "id"

iget-object v5, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;

invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

move-result-object v2

const-string v3, "CustomCarrierLeft"

invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I

move-result v2

const/4 v3, 0x1

if-ne v2, v3, :cond_2e

:goto_24
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mKeyguardStatusBar:Lcom/android/systemui/statusbar/phone/KeyguardStatusBarView;

invoke-virtual {v2, v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;

move-result-object v2

invoke-virtual {v2, v1}, Landroid/view/View;->setVisibility(I)V

return-void

:cond_2e
const/16 v1, 0x8

goto :goto_24
.end method

open res/layout/signal_cluster_view.xml and add in blue

(your xml can look a little different. place the three parts on right position before, between and after the wifi part and signal part.)

<?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:alpha="1.0" android:paddingEnd="@dimen/signal_cluster_battery_padding"
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:systemui="http://schemas.android.com/apk/res-auto">
[COLOR="blue"]<com.android.systemui.statusbar.phone.CarrierLabel android:id="@id/CustomCarrierLeft" android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />[/COLOR]
<FrameLayout android:id="@id/wifi_combo" android:layout_width="wrap_content" android:layout_height="wrap_content">
<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" />
<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" systemui:hasOverlappingRendering="false" />
<ImageView android:id="@id/wifi_activity" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</FrameLayout>
[COLOR="blue"]<com.android.systemui.statusbar.phone.CarrierLabel android:id="@id/CustomCarrierCenter" android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />[/COLOR]
<View android:id="@id/spacer" android:visibility="gone" android:layout_width="8.0dip" android:layout_height="8.0dip" />
<ImageView android:id="@id/vpn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_vpn_ic" android:paddingEnd="1.0dip" />
<ImageView android:id="@id/bt_tether" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_tether_bluetooth" />
<ImageView android:id="@id/sim_icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="1.0dip" />
<ImageView android:id="@id/sec_no_sim_slot1" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_no_sim_ctc" />
<LinearLayout android:id="@id/mobile_signal_group" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<ImageView android:id="@id/sec_no_sim_slot2" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/stat_sys_no_sim_ctc" />
<FrameLayout android:id="@id/no_sims_combo" android:layout_width="0.0dip" android:layout_height="0.0dip" 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" systemui:hasOverlappingRendering="false" />
</FrameLayout>
[COLOR="blue"]<com.android.systemui.statusbar.phone.CarrierLabel android:id="@id/CustomCarrierRight" android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />[/COLOR]
<View android:visibility="gone" android:layout_width="6.0dip" android:layout_height="6.0dip" />
<FrameLayout android:gravity="center" android:id="@id/mptcp_combo" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingEnd="1.0dip">
<ImageView android:layout_gravity="center" android:id="@id/mptcp_type" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<ImageView android:layout_gravity="center" android:id="@id/mptcp_giga" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<ImageView android:layout_gravity="center" android:id="@id/mptcp_inout" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</FrameLayout>
<FrameLayout android:gravity="center" android:id="@id/nwbooster_combo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingEnd="1.0dip">
<ImageView android:layout_gravity="center" android:id="@id/nwbooster_wifi_strength" android:layout_width="wrap_content" android:layout_height="wrap_content" android:scaleType="center" />
<ImageView android:layout_gravity="center" android:id="@id/nwbooster_mobile_type" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<ImageView android:layout_gravity="center" android:id="@id/nwbooster_activity" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</FrameLayout>
<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" systemui:hasOverlappingRendering="false" />
<ImageView android:id="@id/ethernet_activity" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</FrameLayout>
<View android:id="@id/wifi_signal_spacer" android:visibility="gone" android:layout_width="4.0dip" android:layout_height="4.0dip" />
<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>

in RomControl add

<PreferenceCategory android:title="Custom Carrier">
<com.wubydax.romcontrol.prefs.ColorPickerPreference android:title="Custom Carrier Color" android:key="CustomCarrierColor" android:defaultValue="\#ffffffff"/>
<SwitchPreference android:title="Custom Carrier Right of Wifi/Signal Combo" android:key="CustomCarrierRight" android:defaultValue="false" android:summaryOn="Show" android:summaryOff="Hide" />
<SwitchPreference android:title="Custom Carrier Center of Wifi/Signal Combo" android:key="CustomCarrierCenter" android:defaultValue="false" android:summaryOn="Show" android:summaryOff="Hide" />
<SwitchPreference android:title="Custom Carrier Left of Wifi/Signal Combo" android:key="CustomCarrierLeft" android:defaultValue="false" android:summaryOn="Show" android:summaryOff="Hide" />
</PreferenceCategory>

Credits:

[MENTION=3061261]sidri[/MENTION]bo for helping smalis

[MENTION=4714483]daxgirl[/MENTION] to show a easy way to switch ids

I Hope i didnt forget someone

Feel free to help to add custom text because i didnt get it to work