[Galaxy S III Android Development] Ricardo_Is:
Change keyboard from configurations when I'm tipping are really make me crazy.

Till I know to enable keyboard icon, need to decompile services.jar from framework folder and edit InputMethodManagerService.smali.

But after decompile, I found 14 files of InputMethodManagerService.smali. No one named InputMethodManagerService.smali but InputMethodManagerService$1.smali, InputMethodManagerService$2.smali...I give up!

Will try test GlamourS4 for S3 ♦Touch Of S4♦ [4.2.2] version 2.9.5 [ME7] till Glance S4 get keyboard icon back.

Luv this ROM but I use SwiftKey and iWnn IME Keyboard and change it from configurations is waste of time.

Cheers.

EDIT: Think I found the right file ($5 one).

What change to make keyboard icon appears on status bar?

Glance 4S inputManagerService$5.Smali:

.class Lcom/android/server/input/InputManagerService$5;
.super Ljava/lang/Object;
.source "InputManagerService.java"

# interfaces
.implements Lcom/android/server/input/InputManagerService$KeyboardLayoutVisitor;

# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/android/server/input/InputManagerService;->getKeyboardLayouts()[Landroid/hardware/input/KeyboardLayout;
.end annotation

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

# instance fields
.field final synthetic this$0:Lcom/android/server/input/InputManagerService;

.field final synthetic val$list:Ljava/util/ArrayList;

# direct methods
.method constructor <init>(Lcom/android/server/input/InputManagerService;Ljava/util/ArrayList;)V
.registers 3
.parameter
.parameter

.prologue
.line 881
iput-object p1, p0, Lcom/android/server/input/InputManagerService$5;->this$0:Lcom/android/server/input/InputManagerService;

iput-object p2, p0, Lcom/android/server/input/InputManagerService$5;->val$list:Ljava/util/ArrayList;

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

return-void
.end method

# virtual methods
.method public visitKeyboardLayout(Landroid/content/res/Resources;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
.registers 8
.parameter "resources"
.parameter "descriptor"
.parameter "label"
.parameter "collection"
.parameter "keyboardLayoutResId"

.prologue
.line 885
iget-object v0, p0, Lcom/android/server/input/InputManagerService$5;->val$list:Ljava/util/ArrayList;

new-instance v1, Landroid/hardware/input/KeyboardLayout;

invoke-direct {v1, p2, p3, p4}, Landroid/hardware/input/KeyboardLayout;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V

invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

.line 886
return-void
.end method

Stock inputManagerService$5.Smali:

.class Lcom/android/server/input/InputManagerService$5;
.super Ljava/lang/Object;
.source "InputManagerService.java"

# interfaces
.implements Lcom/android/server/input/InputManagerService$KeyboardLayoutVisitor;

# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/android/server/input/InputManagerService;->getKeyboardLayouts()[Landroid/hardware/input/KeyboardLayout;
.end annotation

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

# instance fields
.field final synthetic this$0:Lcom/android/server/input/InputManagerService;

.field final synthetic val$list:Ljava/util/ArrayList;

# direct methods
.method constructor <init>(Lcom/android/server/input/InputManagerService;Ljava/util/ArrayList;)V
.registers 3

iput-object p1, p0, Lcom/android/server/input/InputManagerService$5;->this$0:Lcom/android/server/input/InputManagerService;

iput-object p2, p0, Lcom/android/server/input/InputManagerService$5;->val$list:Ljava/util/ArrayList;

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

return-void
.end method

# virtual methods
.method public visitKeyboardLayout(Landroid/content/res/Resources;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
.registers 8

iget-object v0, p0, Lcom/android/server/input/InputManagerService$5;->val$list:Ljava/util/ArrayList;

new-instance v1, Landroid/hardware/input/KeyboardLayout;

invoke-direct {v1, p2, p3, p4}, Landroid/hardware/input/KeyboardLayout;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V

invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

return-void
.end method