[Sprint Samsung Galaxy S III] Unknownforce:
FYI, they changed the init process a bit in 4.4.2, here's the updated FlashlightQuickSettingButton.smali

.class public Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;
.super Lcom/android/systemui/statusbar/policy/quicksetting/QuickSettingButton;
.source "FlashlightQuickSettingButton.java"

# interfaces
.implements Lcom/android/systemui/statusbar/policy/quicksetting/QuickSettingButton$Listener;

# static fields
.field private static final TW_TAG:Ljava/lang/String; = "STATUSBAR-FlashlightQuickSettingButton"

# instance fields
.field private mContext:Landroid/content/Context;

.field private mFlashlight:Z

# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 7
.param p1, "context" # Landroid/content/Context;

.prologue
# text id
const v1, 0x7f0a01af

const/4 v5, 0x0

.line 128
const/4 v2, 0x0

const/4 v0, 0x0

invoke-direct {p0, p1, v2, v0}, Lcom/android/systemui/statusbar/policy/quicksetting/QuickSettingButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;Z)V

.line 131
# on id
const v2, 0x7f020346

# off id
const v3, 0x7f020345

# dim id (Not used but for consistancy sake, I include it, if you don't, just set to 0x0)
const v4, 0x7f020344

move-object v0, p0

move v6, v5

invoke-virtual/range {v0 .. v6}, Lcom/android/systemui/statusbar/policy/quicksetting/QuickSettingButton;->initLayout(IIIIII)V

.line 142
iput-object p1, p0, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->mContext:Landroid/content/Context;

invoke-virtual {p0, p0}, Lcom/android/systemui/statusbar/policy/quicksetting/QuickSettingButton;->setListener(Lcom/android/systemui/statusbar/policy/quicksetting/QuickSettingButton$Listener;)V

.line 158
return-void
.end method

# virtual methods
.method public deinit()V
.locals 1

return-void
.end method

.method public init()V
.locals 4

iget-object v1, p0, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->mContext:Landroid/content/Context;

const/4 v1, 0x1

iput-boolean v1, p0, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->mFlashlight:Z

iget-boolean v1, p0, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->mFlashlight:Z

if-eqz v1, :cond_0

const/4 v1, 0x2

:goto_0
invoke-virtual {p0, v1}, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->setActivateStatus(I)V

return-void

:cond_0
const/4 v1, 0x1

goto :goto_0
.end method

.method public onClick(Z)V
.locals 6

const/4 v2, 0x1

if-nez p1, :cond_1

move v1, v2

:goto_0
iget-boolean v3, p0, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->mFlashlight:Z

if-eq v1, v3, :cond_0

iput-boolean v1, p0, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->mFlashlight:Z

new-instance v0, Landroid/content/Intent;

const-string v1, "net.cactii.flash2.TOGGLE_FLASHLIGHT"

invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

const-string v1, "net.cactii.flash2.EXTRA_DISABLE_NOTIFICATION"

const/4 v2, 0x1

invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;

iget-object v1, p0, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->mContext:Landroid/content/Context;

invoke-virtual {v1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V

if-eqz p1, :cond_2

invoke-virtual {p0, v2}, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->setActivateStatus(I)V

:cond_0
:goto_1
return-void

:cond_1
const/4 v1, 0x0

goto :goto_0

:cond_2
const/4 v2, 0x2

invoke-virtual {p0, v2}, Lcom/android/systemui/statusbar/policy/quicksetting/FlashlightQuickSettingButton;->setActivateStatus(I)V

goto :goto_1
.end method

.method public onLongClick()V
.locals 0

return-void
.end method