[Sony Cross-Device General] GenomeX:
Hi

Sony released Oreo firmware for same xperia devices. But the Quick Settings panel not changed (old N and M style)

with this easy tutrial you can make your systemui like official oreo (AOSP, Nexus, Pixel)

lets start... :D

All you need:

- knowlage about decompile and compile APK (apktool)

- Stock framework-res.apk

- Stock SystemUI.apk

- xml editor (notepad++ or Atom or emmac. etc)

Step 1: play with SystemUI.apk

decompile your apk file.

inside /res/layout find

"qs_footer.xml"

and open that. change:

<com.android.systemui.qs.QSFooter android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/header" android:paddingTop="0.0dip" android:clickable="false" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="48.0dip" android:baselineAligned="false"

TO:

<com.android.systemui.qs.QSFooter android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/header" [COLOR="Blue"]android:background="#00000000"[/COLOR] android:paddingTop="0.0dip" android:clickable="false" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="48.0dip" android:baselineAligned="false"

inside /res/layout find

"qs_panel.xml"

and open that. change:

<com.android.systemui.qs.QSContainerImpl android:id="@id/quick_settings_container" android:background=[COLOR="Red"]"@drawable/qs_background_primary"[/COLOR] android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:elevation="4.0dip"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.systemui.qs.QSPanel android:id="@id/quick_settings_panel" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="28.0dip" android:layout_marginBottom="48.0dip" />

TO:

<com.android.systemui.qs.QSContainerImpl android:id="@id/quick_settings_container" android:background=[COLOR="Blue"]"?android:colorPrimaryDark"[/COLOR] android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:elevation="4.0dip"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.systemui.qs.QSPanel android:id="@id/quick_settings_panel" [COLOR="Blue"]android:background="#00000000"[/COLOR] android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="28.0dip" android:layout_marginBottom="48.0dip" />

inside /res/layout find

"quick_status_bar_expanded_header.xml"

and open that. change:

<com.android.systemui.qs.QuickStatusBarHeader android:layout_gravity="@integer/notification_panel_layout_gravity" android:id="@id/header" android:paddingTop="0.0dip" android:clickable="false" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_header_height" android:baselineAligned="false" android:paddingStart="0.0dip" android:paddingEnd="0.0dip"

TO:

<com.android.systemui.qs.QuickStatusBarHeader android:layout_gravity="@integer/notification_panel_layout_gravity" android:id="@id/header" [COLOR="Blue"]android:background="#00000000"[/COLOR] android:paddingTop="0.0dip" android:clickable="false" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_header_height" android:baselineAligned="false" android:paddingStart="0.0dip" android:paddingEnd="0.0dip"

Okey... re-compile your SystemUI.apk

Step 2: play with framework-res.apk

decompile your apk file.

All you need are inside this path /res/values/styles.xml. Open that xml file.

Search for:

"Theme.DeviceDefault.QuickSettings"

[COLOR="Red"]<style name="Theme.DeviceDefault.QuickSettings" parent="@style/Theme.DeviceDefault">[/COLOR]
[COLOR="red"]<item name="dialogTheme">@style/Theme.DeviceDefault.QuickSettings.Dialog</item>[/COLOR]
<item name="colorControlNormal">?textColorPrimary</item>
<item name="colorPrimary">@color/primary_device_default_settings_light</item>
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings_light</item>
<item name="colorAccent">@color/accent_device_default_settings_light</item>
<item name="colorSecondary">@color/secondary_device_default_settings_light</item>
</style>

TO:

[COLOR="Blue"]<style name="Theme.DeviceDefault.QuickSettings" parent="@style/Theme.DeviceDefault.Light">[/COLOR]
<item name="colorControlNormal">?textColorPrimary</item>
<item name="colorPrimary">@color/primary_device_default_settings_light</item>
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings_light</item>
<item name="colorAccent">@color/accent_device_default_settings_light</item>
<item name="colorSecondary">@color/secondary_device_default_settings_light</item>
</style>

Search for:

"Theme.DeviceDefault.QuickSettings.Dialog"

<style name="Theme.DeviceDefault.QuickSettings.Dialog" parent="@style/Theme.DeviceDefault.Dialog">
<item name="colorPrimary">@color/primary_device_default_settings</item>
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings</item>
<item name="colorAccent">@color/accent_device_default_settings[COLOR="Red"]_dark[/COLOR]</item>
<item name="colorSecondary">@color/secondary_device_default_settings</item>
</style>

TO:

<style name="Theme.DeviceDefault.QuickSettings.Dialog" parent="@style/Theme.DeviceDefault[COLOR="blue"].Light[/COLOR].Dialog">
<item name="colorPrimary">@color/primary_device_default_settings[COLOR="blue"]_light[/COLOR]</item>
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings[COLOR="blue"]_light[/COLOR]</item>
<item name="colorAccent">@color/accent_device_default_settings[COLOR="blue"]_light[/COLOR]</item>
<item name="colorSecondary">@color/secondary_device_default_settings[COLOR="Blue"]_light[/COLOR]</item>
</style>

Search for:

"Theme.DeviceDefault.Settings.Dialog"

<style name="Theme.DeviceDefault.Settings.Dialog" parent="@style/Theme.Material.Settings.Dialog">
<item name="colorPrimary">@color/primary_device_default_settings</item>
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings</item>
[COLOR="Red"]<item name="colorAccent">@color/accent_device_default_settings_light</item>[/COLOR]
<item name="colorSecondary">@color/secondary_device_default_settings</item>
</style>

TO:

<style name="Theme.DeviceDefault.Settings.Dialog" parent="@style/Theme.Material.Settings.Dialog">
<item name="colorPrimary">@color/primary_device_default_settings</item>
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings</item>
[COLOR="Blue"] <item name="colorAccent">@color/accent_device_default_light</item>[/COLOR]
<item name="colorSecondary">@color/secondary_device_default_settings</item>
</style>

find:

"Theme.DeviceDefault.Settings.Dialog.Alert"

<style name="Theme.DeviceDefault.Settings.Dialog.Alert" parent="@style/Theme.Material.Settings.Dialog.Alert">
<item name="colorPrimary">@color/primary_device_default_settings</item>
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings</item>
[COLOR="Red"]<item name="colorAccent">@color/accent_device_default_settings_light</item>[/COLOR]
<item name="colorSecondary">@color/secondary_device_default_settings</item>
</style>

TO:

<style name="Theme.DeviceDefault.Settings.Dialog.Alert" parent="@style/Theme.Material.Settings.Dialog.Alert">
<item name="colorPrimary">@color/primary_device_default_settings</item>
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings</item>
[COLOR="Blue"]<item name="colorAccent">@color/accent_device_default_light</item>[/COLOR]
<item name="colorSecondary">@color/secondary_device_default_settings</item>
</style>

find:

"Theme.DeviceDefault.Settings.Dialog.NoActionBar"

<style name="Theme.DeviceDefault.Settings.Dialog.NoActionBar" parent="@style/Theme.DeviceDefault.Light.Dialog.NoActionBar"[COLOR="Red"]>[/COLOR]
[COLOR="Red"]<item name="colorPrimary">@color/primary_device_default_settings</item>[/COLOR]
[COLOR="Red"]<item name="colorPrimaryDark">@color/primary_dark_device_default_settings</item>[/COLOR]
[COLOR="Red"]<item name="colorAccent">@color/accent_device_default_settings_light</item>[/COLOR]
[COLOR="Red"]<item name="colorSecondary">@color/secondary_device_default_settings</item>[/COLOR]
</style>

TO:

<style name="Theme.DeviceDefault.Settings.Dialog.NoActionBar" parent="@style/Theme.DeviceDefault.Light.Dialog.NoActionBar"[COLOR="blue"] />[/COLOR]

NOTE: every thing change in lates code is meaning close the style method in first line and remove there items. change > to /> and remember input space befor the slash!

Okey... re-compile your framework-res.apk

NOW, PUSH YOUR FILES TO SYSTEM, SET PERMISSIONS AND REBOOT​

:D

...end of the post!