[Galaxy S II Themes and Apps] broodplank1337:
I took these files from Cyanogenmod Extended Power Menu

GlobalActions$20.smali

.class Lcom/android/internal/policy/impl/GlobalActions$20;
.super Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;
.source "GlobalActions.java"

# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/android/internal/policy/impl/GlobalActions;->createDialog()Landroid/app/AlertDialog;
.end annotation

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

# instance fields
.field final synthetic this$0:Lcom/android/internal/policy/impl/GlobalActions;

# direct methods
.method constructor <init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
.registers 4
.parameter
.parameter "x0"
.parameter "x1"

.prologue
.line 235
iput-object p1, p0, Lcom/android/internal/policy/impl/GlobalActions$20;->this$0:Lcom/android/internal/policy/impl/GlobalActions;

invoke-direct {p0, p2, p3}, Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;-><init>(II)V

return-void
.end method

.method static synthetic access$0(Lcom/android/internal/policy/impl/GlobalActions$20;)Lcom/android/internal/policy/impl/GlobalActions;
.registers 2
.parameter

.prologue
.line 1082
iget-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions$20;->this$0:Lcom/android/internal/policy/impl/GlobalActions;

return-object v0
.end method

# virtual methods
.method public onPress()V
.registers 5

.prologue
.line 239
iget-object v0, p0, Lcom/android/internal/policy/impl/GlobalActions$20;->this$0:Lcom/android/internal/policy/impl/GlobalActions;

new-instance v0, Landroid/os/Handler;

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

new-instance v1, Lcom/android/internal/policy/impl/GlobalActions$20$1;

invoke-direct {v1, p0}, Lcom/android/internal/policy/impl/GlobalActions$20$1;-><init>(Lcom/android/internal/policy/impl/GlobalActions$20;)V

const-wide/16 v2, 0x258

invoke-virtual {v0, v1, v2, v3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z

return-void
.end method

.method public showBeforeProvisioning()Z
.registers 2

.prologue
.line 247
const/4 v0, 0x1

return v0
.end method

.method public showDuringKeyguard()Z
.registers 2

.prologue
.line 243
const/4 v0, 0x1

return v0
.end method

GlobalActions$20$1.smali

.class Lcom/android/internal/policy/impl/GlobalActions$20$1;
.super Ljava/lang/Object;
.source "GlobalActions.java"

# interfaces
.implements Ljava/lang/Runnable;

# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/android/internal/policy/impl/GlobalActions$20;-><init>(Lcom/android/internal/policy/impl/GlobalActions;)V
.end annotation

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

# instance fields
.field final synthetic this$1:Lcom/android/internal/policy/impl/GlobalActions$20;

# direct methods
.method constructor <init>(Lcom/android/internal/policy/impl/GlobalActions$20;)V
.registers 2
.parameter

.prologue
.line 1
iput-object p1, p0, Lcom/android/internal/policy/impl/GlobalActions$20$1;->this$1:Lcom/android/internal/policy/impl/GlobalActions$20;

.line 1085
invoke-direct {p0}, Ljava/lang/Object;-><init>()V

return-void
.end method

# virtual methods
.method public run()V
.registers 4

.prologue
new-instance v1, Landroid/content/Intent;

const-string v2, "com.sec.android.app.screencapture.capture"

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

const-string v0, "android.intent.category.DEFAULT"

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

iget-object v2, p0, Lcom/android/internal/policy/impl/GlobalActions$20$1;->this$1:Lcom/android/internal/policy/impl/GlobalActions$20;

#getter for: Lcom/android/internal/policy/impl/GlobalActions$20;->this$0:Lcom/android/internal/policy/impl/GlobalActions;
invoke-static {v2}, Lcom/android/internal/policy/impl/GlobalActions$20;->access$0(Lcom/android/internal/policy/impl/GlobalActions$20;)Lcom/android/internal/policy/impl/GlobalActions;

move-result-object v2

#getter for: Lcom/android/internal/policy/impl/GlobalActions;->mContext:Landroid/content/Context;
invoke-static {v2}, Lcom/android/internal/policy/impl/GlobalActions;->access$000(Lcom/android/internal/policy/impl/GlobalActions;)Landroid/content/Context;

move-result-object v2

invoke-virtual {v2, v1}, Landroid/content/Context;->startService(Landroid/content/Intent;)Landroid/content/ComponentName;

return-void
.end method

And I just call that file instead of GlobalActions$12.smali (which is restart in download mode)

android.policy.jar is working just fine because it now makes a screenshot when I press download. But! when I only change the strings in \projects\framework-res.apk\res\values\string.xml

from:

<string name="reboot_recovery">Recovery</string>

<string name="reboot_download">Download</string>

<string name="reboot">Reboot</string>

to

<string name="reboot_recovery">Recovery</string>

<string name="reboot_download">Screenshot</string>

<string name="reboot">Reboot</string>

I get a bootloop :S, I think it's not compiling the way it should

And what log do you mean? Logcat?

Edit: Nevermind, someone fixed it for me ;)