[Galaxy S6 General] stangdriver44:
try looking at these. (I am by no means taking credit for this mod only helping people get on-the-fly set up)

Sorry if this is hard to read, but guides are hard for me to write, this is not a guide!!

Just for reference

go to

com/android/systemui/qs/QSPanel

add QSPanel$SettingsObserver to this section just like below

.class public Lcom/android/systemui/qs/QSPanel;
.super Landroid/widget/FrameLayout;
.source "QSPanel.java"

# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/systemui/qs/QSPanel$Callback;,
Lcom/android/systemui/qs/QSPanel$TileRecord;,
Lcom/android/systemui/qs/QSPanel$Record;,
[B][COLOR="RoyalBlue"]Lcom/android/systemui/qs/QSPanel$SettingsObserver;,[/COLOR][/B]
Lcom/android/systemui/qs/QSPanel$H;
}
.end annotation

make sure this method looks like thi below code

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 4
...
...
...
...

invoke-interface {v0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;

move-result-object v0

iput-object v0, p0, Lcom/android/systemui/qs/QSPanel;->mDefaultDisplay:Landroid/view/Display;

invoke-virtual {p0}, Lcom/android/systemui/qs/QSPanel;->updateResources()V

[B][COLOR="RoyalBlue"]iget-object v0, p0, Lcom/android/systemui/qs/QSPanel;->mContext:Landroid/content/Context;

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

move-result-object v0

invoke-direct {p0, v0}, Lcom/android/systemui/qs/QSPanel;->regObserver(Landroid/content/ContentResolver;)V[/COLOR][/B]

return-void
.end method

add this method

.method private regObserver(Landroid/content/ContentResolver;)V
.locals 3

const/4 v2, 0x0

new-instance v0, Lcom/android/systemui/qs/QSPanel$SettingsObserver;

new-instance v1, Landroid/os/Handler;

invoke-direct {v1}, Landroid/os/Handler;-><init>()V

invoke-direct {v0, p0, p0, v1}, Lcom/android/systemui/qs/QSPanel$SettingsObserver;-><init>(Lcom/android/systemui/qs/QSPanel;Lcom/android/systemui/qs/QSPanel;Landroid/os/Handler;)V

const-string v1, "toggle_buttons_background"

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

move-result-object v1

invoke-virtual {p1, v1, v2, v0}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V

const-string v1, "toggle_buttons_background_color"

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

move-result-object v1

invoke-virtual {p1, v1, v2, v0}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V

return-void
.end method

Create a new smali named QSPanel$SettingsObserver and use the code below

com/android/systemui/qs/QSPanel$SettingsObserver

.class Lcom/android/systemui/qs/QSPanel$SettingsObserver;
.super Landroid/database/ContentObserver;
.source "QSPanel.java"

# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/android/systemui/qs/QSPanel;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = "SettingsObserver"
.end annotation

# instance fields
.field qs:Lcom/android/systemui/qs/QSPanel;

.field final synthetic this$0:Lcom/android/systemui/qs/QSPanel;

# direct methods
.method public constructor <init>(Lcom/android/systemui/qs/QSPanel;Lcom/android/systemui/qs/QSPanel;Landroid/os/Handler;)V
.locals 0

iput-object p1, p0, Lcom/android/systemui/qs/QSPanel$SettingsObserver;->this$0:Lcom/android/systemui/qs/QSPanel;

invoke-direct {p0, p3}, Landroid/database/ContentObserver;-><init>(Landroid/os/Handler;)V

iput-object p2, p0, Lcom/android/systemui/qs/QSPanel$SettingsObserver;->qs:Lcom/android/systemui/qs/QSPanel;

return-void
.end method

# virtual methods
.method public onChange(Z)V
.locals 1

const/4 v0, 0x0

invoke-virtual {p0, p1, v0}, Lcom/android/systemui/qs/QSPanel$SettingsObserver;->onChange(ZLandroid/net/Uri;)V

return-void
.end method

.method public onChange(ZLandroid/net/Uri;)V
.locals 1

iget-object v0, p0, Lcom/android/systemui/qs/QSPanel$SettingsObserver;->qs:Lcom/android/systemui/qs/QSPanel;

invoke-static {v0}, Lcom/android/systemui/qs/QSPanel;->access$000(Lcom/android/systemui/qs/QSPanel;)V

return-void
.end method

now open

com/android/systemui/qs/QSTileView

make sure this method looks like this

.method public constructor <init>(Landroid/content/Context;)V
.locals 6

...
...
...
...

invoke-virtual {p0, v5}, Lcom/android/systemui/qs/QSTileView;->setLongClickable(Z)V

invoke-direct {p0}, Lcom/android/systemui/qs/QSTileView;->updateTopPadding()V

[B][COLOR="RoyalBlue"] invoke-virtual {p0}, Lcom/android/systemui/qs/QSTileView;->set_toggles()V[/COLOR][/B]

return-void

:cond_0
iget-object v2, p0, Lcom/android/systemui/qs/QSTileView;->mIcon:Landroid/view/View;

const v3, 0x7f02062e

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

goto :goto_0
.end method

add this method

.method set_toggles()V
.locals 6

iget-object v4, p0, Lcom/android/systemui/qs/QSTileView;->mIcon:Landroid/view/View;

iget-object v1, p0, Lcom/android/systemui/qs/QSTileView;->mContext:Landroid/content/Context;

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

move-result-object v1

const-string v2, "toggle_buttons_background"

const/4 v3, 0x0

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

move-result v1

const v2, 0x1

if-eq v1, v2, :cond_0

const v2, 0x2

if-eq v1, v2, :cond_1

const v2, 0x3

if-eq v1, v2, :cond_2

const v2, 0x4

if-eq v1, v2, :cond_3

const v2, 0x5

if-eq v1, v2, :cond_4

const v2, 0x6

if-eq v1, v2, :cond_5

const v2, 0x7

if-eq v1, v2, :cond_6

const v2, 0x8

if-eq v1, v2, :cond_7

const v2, 0x9

if-eq v1, v2, :cond_8

const v2, 0xa

if-eq v1, v2, :cond_9

const v2, 0xb

if-eq v1, v2, :cond_a

const v2, 0xc

if-eq v1, v2, :cond_b

const v2, 0xd

if-eq v1, v2, :cond_c

const v2, 0xe

if-eq v1, v2, :cond_d

const v2, 0xf

const v0, 0x7f02062e	###public type="drawable" name="tw_quick_panel_quick_setting_button_round_bg" id="0x7f02062e"

goto :goto_0

:cond_0
const v0, 0x0

goto :goto_0

:cond_1
const v0, 0x7f0209dc	###public type="drawable" name="tw_quick_panel_quick_setting_button_round_bg_01" id="0x7f0209dc"

goto :goto_0

:cond_2
const v0, 0x7f0209dd

goto :goto_0

:cond_3
const v0, 0x7f0209de

goto :goto_0

:cond_4
const v0, 0x7f0209df

goto :goto_0

:cond_5
const v0, 0x7f0209e0

goto :goto_0

:cond_6
const v0, 0x7f0209e1

goto :goto_0

:cond_7
const v0, 0x7f0209e2

goto :goto_0

:cond_8
const v0, 0x7f0209e3

goto :goto_0

:cond_9
const v0, 0x7f0209e4

goto :goto_0

:cond_a
const v0, 0x7f0209e5

goto :goto_0

:cond_b
const v0, 0x7f0209e6

goto :goto_0

:cond_c
const v0, 0x7f0209e7

goto :goto_0

:cond_d
const v0, 0x7f0209e8	###public type="drawable" name="tw_quick_panel_quick_setting_button_round_bg_13" id="0x7f0209e8"

goto :goto_0

:goto_0
invoke-virtual {v4, v0}, Landroid/view/View;->setBackgroundResource(I)V

invoke-virtual {v4}, Landroid/view/View;->getBackground()Landroid/graphics/drawable/Drawable;

move-result-object v5

iget-object v1, p0, Lcom/android/systemui/qs/QSTileView;->mContext:Landroid/content/Context;

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

move-result-object v1

const-string v2, "toggle_buttons_background_color"

const v3, -0x1

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

move-result v1

sget-object v3, Landroid/graphics/PorterDuff$Mode;->MULTIPLY:Landroid/graphics/PorterDuff$Mode;

invoke-virtual {v5, v1, v3}, Landroid/graphics/drawable/Drawable;->setColorFilter(ILandroid/graphics/PorterDuff$Mode;)V

return-void
.end method

<com.ozop.romcontrol.prefs.MyListPreference android:entries="@array/toggle_buttons_background_entries" android:title="@string/toggle_buttons_background_title" android:key="toggle_buttons_background" android:summary="@string/toggle_buttons_background_summary" android:defaultValue="1" android:entryValues="@array/toggle_buttons_background_values" hexValue="true" />
<com.ozop.romcontrol.prefs.ColorPickerPreference android:title="Toggle Button Background Color" android:key="toggle_buttons_background_color" android:summary="Set to White for Styles or apply overlay color" android:defaultValue="-1" hexValue="true" alphaSlider="true" />