hello guys
after very day
i am presenting you new tut :p
so this is very easy tut
all you need is patience
you need
1. Framework.jar
2. Decompile framework.jar
3. open framework.jar\smali\android\inputmethodservice\Inp utMethodService.smali
find this
after that add this
Now look for this method
and completely replace this method with this
Now look for this method
and completely replace with this method
Done save and compile and replace :p
Now for settings look for post #2
after very day
i am presenting you new tut :p
so this is very easy tut
all you need is patience
you need
1. Framework.jar
2. Decompile framework.jar
3. open framework.jar\smali\android\inputmethodservice\Inp utMethodService.smali
find this
Code:
.field mToken:Landroid/os/IBinder;
Code:
.field mVolumeKeyCursorControl:I
Code:
.method public onKeyDown(ILandroid/view/KeyEvent;)Z
Code:
.method public onKeyDown(ILandroid/view/KeyEvent;)Z
.locals 7
const/16 v0, 0x16
const/16 v1, 0x15
const/4 v6, 0x2
const/4 v2, 0x1
const/4 v3, 0x0
invoke-virtual {p2}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v4
const/4 v5, 0x4
if-ne v4, v5, :cond_1
invoke-direct {p0, v3}, Landroid/inputmethodservice/InputMethodService;->handleBack(Z)Z
move-result v0
if-eqz v0, :cond_0
invoke-virtual {p2}, Landroid/view/KeyEvent;->startTracking()V
move v0, v2
:goto_0
return v0
:cond_0
move v0, v3
goto :goto_0
:cond_1
invoke-virtual {p2}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v4
const/16 v5, 0x18
if-ne v4, v5, :cond_4
invoke-virtual {p0}, Landroid/inputmethodservice/InputMethodService;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v4
const-string/jumbo v5, "krypton_keyboard_volume_control"
invoke-static {v4, v5, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v4
iput v4, p0, Landroid/inputmethodservice/InputMethodService;->mVolumeKeyCursorControl:I
invoke-virtual {p0}, Landroid/inputmethodservice/InputMethodService;->isInputViewShown()Z
move-result v4
if-eqz v4, :cond_3
iget v4, p0, Landroid/inputmethodservice/InputMethodService;->mVolumeKeyCursorControl:I
if-eqz v4, :cond_3
iget v3, p0, Landroid/inputmethodservice/InputMethodService;->mVolumeKeyCursorControl:I
if-ne v3, v6, :cond_2
:goto_1
invoke-virtual {p0, v0}, Landroid/inputmethodservice/InputMethodService;->sendDownUpKeyEvents(I)V
move v0, v2
goto :goto_0
:cond_2
move v0, v1
goto :goto_1
:cond_3
move v0, v3
goto :goto_0
:cond_4
invoke-virtual {p2}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v4
const/16 v5, 0x19
if-ne v4, v5, :cond_7
invoke-virtual {p0}, Landroid/inputmethodservice/InputMethodService;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v4
const-string/jumbo v5, "krypton_keyboard_volume_control"
invoke-static {v4, v5, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v4
iput v4, p0, Landroid/inputmethodservice/InputMethodService;->mVolumeKeyCursorControl:I
invoke-virtual {p0}, Landroid/inputmethodservice/InputMethodService;->isInputViewShown()Z
move-result v4
if-eqz v4, :cond_6
iget v4, p0, Landroid/inputmethodservice/InputMethodService;->mVolumeKeyCursorControl:I
if-eqz v4, :cond_6
iget v3, p0, Landroid/inputmethodservice/InputMethodService;->mVolumeKeyCursorControl:I
if-ne v3, v6, :cond_5
:goto_2
invoke-virtual {p0, v1}, Landroid/inputmethodservice/InputMethodService;->sendDownUpKeyEvents(I)V
move v0, v2
goto :goto_0
:cond_5
move v1, v0
goto :goto_2
:cond_6
move v0, v3
goto :goto_0
:cond_7
const/4 v0, -0x1
invoke-virtual {p0, p1, p2, v0}, Landroid/inputmethodservice/InputMethodService;->doMovementKey(ILandroid/view/KeyEvent;I)Z
move-result v0
goto :goto_0
.end method
Code:
.method public onKeyUp(ILandroid/view/KeyEvent;)Z
Code:
.method public onKeyUp(ILandroid/view/KeyEvent;)Z
.locals 4
const/4 v0, 0x1
const/4 v1, 0x0
invoke-virtual {p2}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v2
const/4 v3, 0x4
if-ne v2, v3, :cond_1
invoke-virtual {p2}, Landroid/view/KeyEvent;->isTracking()Z
move-result v2
if-eqz v2, :cond_1
invoke-virtual {p2}, Landroid/view/KeyEvent;->isCanceled()Z
move-result v2
if-nez v2, :cond_1
invoke-direct {p0, v0}, Landroid/inputmethodservice/InputMethodService;->handleBack(Z)Z
move-result v0
:cond_0
:goto_0
return v0
:cond_1
invoke-virtual {p2}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v2
const/16 v3, 0x18
if-eq v2, v3, :cond_2
const/16 v2, 0x19
if-ne p1, v2, :cond_4
:cond_2
invoke-virtual {p0}, Landroid/inputmethodservice/InputMethodService;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v2
const-string/jumbo v3, "krypton_keyboard_volume_control"
invoke-static {v2, v3, v1}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v2
iput v2, p0, Landroid/inputmethodservice/InputMethodService;->mVolumeKeyCursorControl:I
invoke-virtual {p0}, Landroid/inputmethodservice/InputMethodService;->isInputViewShown()Z
move-result v2
if-eqz v2, :cond_3
iget v2, p0, Landroid/inputmethodservice/InputMethodService;->mVolumeKeyCursorControl:I
if-nez v2, :cond_0
:cond_3
move v0, v1
goto :goto_0
:cond_4
const/4 v0, -0x2
invoke-virtual {p0, p1, p2, v0}, Landroid/inputmethodservice/InputMethodService;->doMovementKey(ILandroid/view/KeyEvent;I)Z
move-result v0
goto :goto_0
.end method
Now for settings look for post #2
from xda-developers http://ift.tt/1UGE7El
via IFTTT
Aucun commentaire:
Enregistrer un commentaire