Weather/smali/com/badlogic/gdx/backends/android/AndroidInput.smali
2021-05-10 10:13:34 +02:00

1833 lines
45 KiB
Smali

.class public Lcom/badlogic/gdx/backends/android/AndroidInput;
.super Ljava/lang/Object;
.source "AndroidInput.java"
# interfaces
.implements Landroid/view/View$OnKeyListener;
.implements Landroid/view/View$OnTouchListener;
.implements Lcom/badlogic/gdx/Input;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/badlogic/gdx/backends/android/AndroidInput$SensorListener;,
Lcom/badlogic/gdx/backends/android/AndroidInput$TouchEvent;,
Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;
}
.end annotation
# instance fields
.field private A:Landroid/hardware/SensorManager;
.field private final B:[F
.field private final C:[F
.field private D:Ljava/lang/String;
.field private E:Lcom/badlogic/gdx/Input$TextInputListener;
.field private F:Landroid/os/Handler;
.field private final G:Lcom/badlogic/gdx/backends/android/AndroidTouchHandler;
.field private H:I
.field private I:Z
.field private J:Z
.field private K:Z
.field private final L:[F
.field private M:F
.field private N:F
.field private O:F
.field private P:F
.field private Q:Z
.field private final R:Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;
.field private final S:Lcom/badlogic/gdx/Input$Orientation;
.field private T:J
.field private U:Landroid/hardware/SensorEventListener;
.field private V:Landroid/hardware/SensorEventListener;
.field private W:Landroid/hardware/SensorEventListener;
.field a:Lcom/badlogic/gdx/utils/Pool;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/badlogic/gdx/utils/Pool<",
"Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;",
">;"
}
.end annotation
.end field
.field b:Lcom/badlogic/gdx/utils/Pool;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/badlogic/gdx/utils/Pool<",
"Lcom/badlogic/gdx/backends/android/AndroidInput$TouchEvent;",
">;"
}
.end annotation
.end field
.field c:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroid/view/View$OnKeyListener;",
">;"
}
.end annotation
.end field
.field d:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;",
">;"
}
.end annotation
.end field
.field e:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Lcom/badlogic/gdx/backends/android/AndroidInput$TouchEvent;",
">;"
}
.end annotation
.end field
.field f:[I
.field g:[I
.field h:[I
.field i:[I
.field j:[Z
.field k:[I
.field l:[I
.field final m:Z
.field public n:Z
.field public o:Z
.field final p:Lcom/badlogic/gdx/Application;
.field final q:Landroid/content/Context;
.field protected final r:Landroid/os/Vibrator;
.field s:Z
.field t:Z
.field final u:[F
.field final v:[F
.field private w:I
.field private x:[Z
.field private y:Z
.field private z:[Z
# direct methods
.method public constructor <init>(Lcom/badlogic/gdx/Application;Landroid/content/Context;Ljava/lang/Object;Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;)V
.locals 4
.line 144
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 82
new-instance v0, Lcom/badlogic/gdx/backends/android/AndroidInput$1;
const/16 v1, 0x3e8
const/16 v2, 0x10
invoke-direct {v0, p0, v2, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput$1;-><init>(Lcom/badlogic/gdx/backends/android/AndroidInput;II)V
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->a:Lcom/badlogic/gdx/utils/Pool;
.line 88
new-instance v0, Lcom/badlogic/gdx/backends/android/AndroidInput$2;
invoke-direct {v0, p0, v2, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput$2;-><init>(Lcom/badlogic/gdx/backends/android/AndroidInput;II)V
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->b:Lcom/badlogic/gdx/utils/Pool;
.line 97
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->c:Ljava/util/ArrayList;
.line 98
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->d:Ljava/util/ArrayList;
.line 99
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->e:Ljava/util/ArrayList;
const/16 v0, 0x14
.line 100
new-array v1, v0, [I
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->f:[I
.line 101
new-array v1, v0, [I
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->g:[I
.line 102
new-array v1, v0, [I
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->h:[I
.line 103
new-array v1, v0, [I
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->i:[I
.line 104
new-array v1, v0, [Z
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->j:[Z
.line 105
new-array v1, v0, [I
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->k:[I
.line 106
new-array v0, v0, [I
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
const/4 v0, 0x0
.line 108
iput v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->w:I
const/16 v1, 0x104
.line 109
new-array v2, v1, [Z
iput-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->x:[Z
.line 110
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->y:Z
.line 111
new-array v1, v1, [Z
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->z:[Z
.line 113
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->n:Z
const/4 v1, 0x3
.line 114
new-array v2, v1, [F
iput-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->B:[F
.line 115
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->o:Z
.line 116
new-array v2, v1, [F
iput-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->C:[F
const/4 v2, 0x0
.line 117
iput-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->D:Ljava/lang/String;
.line 118
iput-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->E:Lcom/badlogic/gdx/Input$TextInputListener;
.line 123
iput v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->H:I
.line 124
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->I:Z
.line 125
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->J:Z
.line 127
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->K:Z
.line 129
new-array v2, v1, [F
iput-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->L:[F
const/4 v2, 0x0
.line 130
iput v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->M:F
.line 131
iput v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->N:F
.line 132
iput v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->O:F
.line 133
iput v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->P:F
.line 134
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->Q:Z
.line 138
invoke-static {}, Ljava/lang/System;->nanoTime()J
move-result-wide v2
iput-wide v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->T:J
const/4 v2, 0x1
.line 412
iput-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->t:Z
const/16 v3, 0x9
.line 625
new-array v3, v3, [F
iput-object v3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->u:[F
.line 626
new-array v1, v1, [F
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->v:[F
.line 147
instance-of v1, p3, Landroid/view/View;
if-eqz v1, :cond_0
.line 148
check-cast p3, Landroid/view/View;
.line 149
invoke-virtual {p3, p0}, Landroid/view/View;->setOnKeyListener(Landroid/view/View$OnKeyListener;)V
.line 150
invoke-virtual {p3, p0}, Landroid/view/View;->setOnTouchListener(Landroid/view/View$OnTouchListener;)V
.line 151
invoke-virtual {p3, v2}, Landroid/view/View;->setFocusable(Z)V
.line 152
invoke-virtual {p3, v2}, Landroid/view/View;->setFocusableInTouchMode(Z)V
.line 153
invoke-virtual {p3}, Landroid/view/View;->requestFocus()Z
.line 155
:cond_0
iput-object p4, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->R:Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;
.line 157
:goto_0
iget-object p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
array-length p3, p3
if-ge v0, p3, :cond_1
.line 158
iget-object p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
const/4 v1, -0x1
aput v1, p3, v0
add-int/lit8 v0, v0, 0x1
goto :goto_0
.line 159
:cond_1
new-instance p3, Landroid/os/Handler;
invoke-direct {p3}, Landroid/os/Handler;-><init>()V
iput-object p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->F:Landroid/os/Handler;
.line 160
iput-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->p:Lcom/badlogic/gdx/Application;
.line 161
iput-object p2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->q:Landroid/content/Context;
.line 162
iget p1, p4, Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;->k:I
iput p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->H:I
.line 163
new-instance p1, Lcom/badlogic/gdx/backends/android/AndroidMultiTouchHandler;
invoke-direct {p1}, Lcom/badlogic/gdx/backends/android/AndroidMultiTouchHandler;-><init>()V
iput-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->G:Lcom/badlogic/gdx/backends/android/AndroidTouchHandler;
.line 164
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->G:Lcom/badlogic/gdx/backends/android/AndroidTouchHandler;
invoke-interface {p1, p2}, Lcom/badlogic/gdx/backends/android/AndroidTouchHandler;->a(Landroid/content/Context;)Z
move-result p1
iput-boolean p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->m:Z
const-string p1, "vibrator"
.line 166
invoke-virtual {p2, p1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/os/Vibrator;
iput-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->r:Landroid/os/Vibrator;
.line 168
invoke-virtual {p0}, Lcom/badlogic/gdx/backends/android/AndroidInput;->e()I
move-result p1
.line 169
iget-object p2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->p:Lcom/badlogic/gdx/Application;
invoke-interface {p2}, Lcom/badlogic/gdx/Application;->getGraphics()Lcom/badlogic/gdx/Graphics;
move-result-object p2
invoke-interface {p2}, Lcom/badlogic/gdx/Graphics;->g()Lcom/badlogic/gdx/Graphics$DisplayMode;
move-result-object p2
if-eqz p1, :cond_2
const/16 p3, 0xb4
if-ne p1, p3, :cond_3
.line 170
:cond_2
iget p3, p2, Lcom/badlogic/gdx/Graphics$DisplayMode;->a:I
iget p4, p2, Lcom/badlogic/gdx/Graphics$DisplayMode;->b:I
if-ge p3, p4, :cond_6
:cond_3
const/16 p3, 0x5a
if-eq p1, p3, :cond_4
const/16 p3, 0x10e
if-ne p1, p3, :cond_5
:cond_4
iget p1, p2, Lcom/badlogic/gdx/Graphics$DisplayMode;->a:I
iget p2, p2, Lcom/badlogic/gdx/Graphics$DisplayMode;->b:I
if-gt p1, p2, :cond_5
goto :goto_1
.line 174
:cond_5
sget-object p1, Lcom/badlogic/gdx/Input$Orientation;->Portrait:Lcom/badlogic/gdx/Input$Orientation;
iput-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->S:Lcom/badlogic/gdx/Input$Orientation;
goto :goto_2
.line 172
:cond_6
:goto_1
sget-object p1, Lcom/badlogic/gdx/Input$Orientation;->Landscape:Lcom/badlogic/gdx/Input$Orientation;
iput-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->S:Lcom/badlogic/gdx/Input$Orientation;
:goto_2
return-void
.end method
.method private a([I)[I
.locals 3
.line 769
array-length v0, p1
add-int/lit8 v0, v0, 0x2
new-array v0, v0, [I
.line 770
array-length v1, p1
const/4 v2, 0x0
invoke-static {p1, v2, v0, v2, v1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object v0
.end method
.method private a([Z)[Z
.locals 3
.line 775
array-length v0, p1
add-int/lit8 v0, v0, 0x2
new-array v0, v0, [Z
.line 776
array-length v1, p1
const/4 v2, 0x0
invoke-static {p1, v2, v0, v2, v1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object v0
.end method
# virtual methods
.method public a()J
.locals 2
.line 858
iget-wide v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->T:J
return-wide v0
.end method
.method public a(I)Z
.locals 1
.line 284
monitor-enter p0
.line 285
:try_start_0
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->j:[Z
aget-boolean p1, v0, p1
monitor-exit p0
return p1
:catchall_0
move-exception p1
.line 286
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p1
.end method
.method b()V
.locals 10
.line 671
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->R:Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;
iget-boolean v0, v0, Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;->h:Z
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_1
.line 672
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->q:Landroid/content/Context;
const-string v3, "sensor"
invoke-virtual {v0, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/hardware/SensorManager;
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
.line 673
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
invoke-virtual {v0, v1}, Landroid/hardware/SensorManager;->getSensorList(I)Ljava/util/List;
move-result-object v0
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-nez v0, :cond_0
.line 674
iput-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->n:Z
goto :goto_0
.line 676
:cond_0
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
invoke-virtual {v0, v1}, Landroid/hardware/SensorManager;->getSensorList(I)Ljava/util/List;
move-result-object v0
invoke-interface {v0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/hardware/Sensor;
.line 677
new-instance v9, Lcom/badlogic/gdx/backends/android/AndroidInput$SensorListener;
iget-object v5, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->S:Lcom/badlogic/gdx/Input$Orientation;
iget-object v6, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->B:[F
iget-object v7, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->L:[F
iget-object v8, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->C:[F
move-object v3, v9
move-object v4, p0
invoke-direct/range {v3 .. v8}, Lcom/badlogic/gdx/backends/android/AndroidInput$SensorListener;-><init>(Lcom/badlogic/gdx/backends/android/AndroidInput;Lcom/badlogic/gdx/Input$Orientation;[F[F[F)V
iput-object v9, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->U:Landroid/hardware/SensorEventListener;
.line 678
iget-object v3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
iget-object v4, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->U:Landroid/hardware/SensorEventListener;
invoke-virtual {v3, v4, v0, v1}, Landroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;I)Z
move-result v0
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->n:Z
goto :goto_0
.line 682
:cond_1
iput-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->n:Z
.line 684
:goto_0
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->R:Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;
iget-boolean v0, v0, Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;->i:Z
if-eqz v0, :cond_3
.line 685
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->q:Landroid/content/Context;
const-string v3, "sensor"
invoke-virtual {v0, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/hardware/SensorManager;
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
.line 686
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
const/4 v3, 0x4
invoke-virtual {v0, v3}, Landroid/hardware/SensorManager;->getSensorList(I)Ljava/util/List;
move-result-object v0
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-nez v0, :cond_2
.line 687
iput-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->o:Z
goto :goto_1
.line 689
:cond_2
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
invoke-virtual {v0, v3}, Landroid/hardware/SensorManager;->getSensorList(I)Ljava/util/List;
move-result-object v0
invoke-interface {v0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/hardware/Sensor;
.line 690
new-instance v9, Lcom/badlogic/gdx/backends/android/AndroidInput$SensorListener;
iget-object v5, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->S:Lcom/badlogic/gdx/Input$Orientation;
iget-object v6, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->C:[F
iget-object v7, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->L:[F
iget-object v8, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->C:[F
move-object v3, v9
move-object v4, p0
invoke-direct/range {v3 .. v8}, Lcom/badlogic/gdx/backends/android/AndroidInput$SensorListener;-><init>(Lcom/badlogic/gdx/backends/android/AndroidInput;Lcom/badlogic/gdx/Input$Orientation;[F[F[F)V
iput-object v9, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->V:Landroid/hardware/SensorEventListener;
.line 691
iget-object v3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
iget-object v4, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->V:Landroid/hardware/SensorEventListener;
invoke-virtual {v3, v4, v0, v1}, Landroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;I)Z
move-result v0
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->o:Z
goto :goto_1
.line 695
:cond_3
iput-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->o:Z
.line 697
:goto_1
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->R:Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;
iget-boolean v0, v0, Lcom/badlogic/gdx/backends/android/AndroidApplicationConfiguration;->j:Z
if-eqz v0, :cond_6
.line 698
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
if-nez v0, :cond_4
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->q:Landroid/content/Context;
const-string v3, "sensor"
invoke-virtual {v0, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/hardware/SensorManager;
iput-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
.line 699
:cond_4
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
const/4 v3, 0x2
invoke-virtual {v0, v3}, Landroid/hardware/SensorManager;->getDefaultSensor(I)Landroid/hardware/Sensor;
move-result-object v0
if-eqz v0, :cond_5
.line 701
iget-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->n:Z
iput-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->K:Z
.line 702
iget-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->K:Z
if-eqz v2, :cond_7
.line 703
new-instance v2, Lcom/badlogic/gdx/backends/android/AndroidInput$SensorListener;
iget-object v5, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->S:Lcom/badlogic/gdx/Input$Orientation;
iget-object v6, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->B:[F
iget-object v7, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->L:[F
iget-object v8, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->C:[F
move-object v3, v2
move-object v4, p0
invoke-direct/range {v3 .. v8}, Lcom/badlogic/gdx/backends/android/AndroidInput$SensorListener;-><init>(Lcom/badlogic/gdx/backends/android/AndroidInput;Lcom/badlogic/gdx/Input$Orientation;[F[F[F)V
iput-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->W:Landroid/hardware/SensorEventListener;
.line 704
iget-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
iget-object v3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->W:Landroid/hardware/SensorEventListener;
invoke-virtual {v2, v3, v0, v1}, Landroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;I)Z
move-result v0
iput-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->K:Z
goto :goto_2
.line 707
:cond_5
iput-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->K:Z
goto :goto_2
.line 710
:cond_6
iput-boolean v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->K:Z
.line 711
:cond_7
:goto_2
sget-object v0, Lcom/badlogic/gdx/Gdx;->a:Lcom/badlogic/gdx/Application;
const-string v1, "AndroidInput"
const-string v2, "sensor listener setup"
invoke-interface {v0, v1, v2}, Lcom/badlogic/gdx/Application;->log(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public b(I)Z
.locals 4
.line 613
monitor-enter p0
.line 614
:try_start_0
iget-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->m:Z
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_1
const/4 v0, 0x0
:goto_0
const/16 v3, 0x14
if-ge v0, v3, :cond_1
.line 616
iget-object v3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->j:[Z
aget-boolean v3, v3, v0
if-eqz v3, :cond_0
iget-object v3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->k:[I
aget v3, v3, v0
if-ne v3, p1, :cond_0
.line 617
monitor-exit p0
return v1
:cond_0
add-int/lit8 v0, v0, 0x1
goto :goto_0
.line 621
:cond_1
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->j:[Z
aget-boolean v0, v0, v2
if-eqz v0, :cond_2
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->k:[I
aget v0, v0, v2
if-ne v0, p1, :cond_2
goto :goto_1
:cond_2
const/4 v1, 0x0
:goto_1
monitor-exit p0
return v1
:catchall_0
move-exception p1
.line 622
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p1
.end method
.method public c(I)I
.locals 5
.line 781
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
array-length v0, v0
const/4 v1, 0x0
const/4 v2, 0x0
:goto_0
if-ge v2, v0, :cond_1
.line 783
iget-object v3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
aget v3, v3, v2
if-ne v3, p1, :cond_0
return v2
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 786
:cond_1
new-instance v2, Ljava/lang/StringBuffer;
invoke-direct {v2}, Ljava/lang/StringBuffer;-><init>()V
:goto_1
if-ge v1, v0, :cond_2
.line 788
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v4, ":"
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v4, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
aget v4, v4, v1
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v4, " "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
add-int/lit8 v1, v1, 0x1
goto :goto_1
.line 790
:cond_2
sget-object v0, Lcom/badlogic/gdx/Gdx;->a:Lcom/badlogic/gdx/Application;
const-string v1, "AndroidInput"
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Pointer ID lookup failed: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, ", "
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-interface {v0, v1, p1}, Lcom/badlogic/gdx/Application;->log(Ljava/lang/String;Ljava/lang/String;)V
const/4 p1, -0x1
return p1
.end method
.method c()V
.locals 3
.line 715
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
if-eqz v0, :cond_3
.line 716
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->U:Landroid/hardware/SensorEventListener;
const/4 v1, 0x0
if-eqz v0, :cond_0
.line 717
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
iget-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->U:Landroid/hardware/SensorEventListener;
invoke-virtual {v0, v2}, Landroid/hardware/SensorManager;->unregisterListener(Landroid/hardware/SensorEventListener;)V
.line 718
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->U:Landroid/hardware/SensorEventListener;
.line 720
:cond_0
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->V:Landroid/hardware/SensorEventListener;
if-eqz v0, :cond_1
.line 721
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
iget-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->V:Landroid/hardware/SensorEventListener;
invoke-virtual {v0, v2}, Landroid/hardware/SensorManager;->unregisterListener(Landroid/hardware/SensorEventListener;)V
.line 722
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->V:Landroid/hardware/SensorEventListener;
.line 724
:cond_1
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->W:Landroid/hardware/SensorEventListener;
if-eqz v0, :cond_2
.line 725
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
iget-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->W:Landroid/hardware/SensorEventListener;
invoke-virtual {v0, v2}, Landroid/hardware/SensorManager;->unregisterListener(Landroid/hardware/SensorEventListener;)V
.line 726
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->W:Landroid/hardware/SensorEventListener;
.line 728
:cond_2
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->A:Landroid/hardware/SensorManager;
.line 730
:cond_3
sget-object v0, Lcom/badlogic/gdx/Gdx;->a:Lcom/badlogic/gdx/Application;
const-string v1, "AndroidInput"
const-string v2, "sensor listener tear down"
invoke-interface {v0, v1, v2}, Lcom/badlogic/gdx/Application;->log(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public d()I
.locals 4
.line 752
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
array-length v0, v0
const/4 v1, 0x0
:goto_0
if-ge v1, v0, :cond_1
.line 754
iget-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
aget v2, v2, v1
const/4 v3, -0x1
if-ne v2, v3, :cond_0
return v1
:cond_0
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 757
:cond_1
iget-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
invoke-direct {p0, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput;->a([I)[I
move-result-object v1
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
.line 758
iget-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->f:[I
invoke-direct {p0, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput;->a([I)[I
move-result-object v1
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->f:[I
.line 759
iget-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->g:[I
invoke-direct {p0, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput;->a([I)[I
move-result-object v1
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->g:[I
.line 760
iget-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->h:[I
invoke-direct {p0, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput;->a([I)[I
move-result-object v1
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->h:[I
.line 761
iget-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->i:[I
invoke-direct {p0, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput;->a([I)[I
move-result-object v1
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->i:[I
.line 762
iget-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->j:[Z
invoke-direct {p0, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput;->a([Z)[Z
move-result-object v1
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->j:[Z
.line 763
iget-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->k:[I
invoke-direct {p0, v1}, Lcom/badlogic/gdx/backends/android/AndroidInput;->a([I)[I
move-result-object v1
iput-object v1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->k:[I
return v0
.end method
.method public e()I
.locals 2
.line 798
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->q:Landroid/content/Context;
instance-of v0, v0, Landroid/app/Activity;
if-eqz v0, :cond_0
.line 799
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->q:Landroid/content/Context;
check-cast v0, Landroid/app/Activity;
invoke-virtual {v0}, Landroid/app/Activity;->getWindowManager()Landroid/view/WindowManager;
move-result-object v0
invoke-interface {v0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;
move-result-object v0
invoke-virtual {v0}, Landroid/view/Display;->getRotation()I
move-result v0
goto :goto_0
.line 801
:cond_0
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->q:Landroid/content/Context;
const-string v1, "window"
invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/view/WindowManager;
invoke-interface {v0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;
move-result-object v0
invoke-virtual {v0}, Landroid/view/Display;->getRotation()I
move-result v0
:goto_0
const/4 v1, 0x0
packed-switch v0, :pswitch_data_0
return v1
:pswitch_0
const/16 v0, 0x10e
return v0
:pswitch_1
const/16 v0, 0xb4
return v0
:pswitch_2
const/16 v0, 0x5a
return v0
:pswitch_3
return v1
:pswitch_data_0
.packed-switch 0x0
:pswitch_3
:pswitch_2
:pswitch_1
:pswitch_0
.end packed-switch
.end method
.method public f()V
.locals 2
.line 866
invoke-virtual {p0}, Lcom/badlogic/gdx/backends/android/AndroidInput;->c()V
.line 869
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->l:[I
const/4 v1, -0x1
invoke-static {v0, v1}, Ljava/util/Arrays;->fill([II)V
.line 872
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->j:[Z
const/4 v1, 0x0
invoke-static {v0, v1}, Ljava/util/Arrays;->fill([ZZ)V
return-void
.end method
.method public g()V
.locals 0
.line 876
invoke-virtual {p0}, Lcom/badlogic/gdx/backends/android/AndroidInput;->b()V
return-void
.end method
.method public onKey(Landroid/view/View;ILandroid/view/KeyEvent;)Z
.locals 9
.line 465
iget-object v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->c:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
const/4 v1, 0x0
const/4 v2, 0x0
:goto_0
const/4 v3, 0x1
if-ge v2, v0, :cond_1
.line 466
iget-object v4, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->c:Ljava/util/ArrayList;
invoke-virtual {v4, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroid/view/View$OnKeyListener;
invoke-interface {v4, p1, p2, p3}, Landroid/view/View$OnKeyListener;->onKey(Landroid/view/View;ILandroid/view/KeyEvent;)Z
move-result v4
if-eqz v4, :cond_0
return v3
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 468
:cond_1
monitor-enter p0
.line 471
:try_start_0
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result p1
const/4 v0, 0x2
if-nez p1, :cond_3
invoke-virtual {p3}, Landroid/view/KeyEvent;->getAction()I
move-result p1
if-ne p1, v0, :cond_3
.line 472
invoke-virtual {p3}, Landroid/view/KeyEvent;->getCharacters()Ljava/lang/String;
move-result-object p1
const/4 p2, 0x0
.line 473
:goto_1
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result p3
if-ge p2, p3, :cond_2
.line 474
iget-object p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->a:Lcom/badlogic/gdx/utils/Pool;
invoke-virtual {p3}, Lcom/badlogic/gdx/utils/Pool;->d()Ljava/lang/Object;
move-result-object p3
check-cast p3, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;
.line 475
invoke-static {}, Ljava/lang/System;->nanoTime()J
move-result-wide v2
iput-wide v2, p3, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->a:J
.line 476
iput v1, p3, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->c:I
.line 477
invoke-virtual {p1, p2}, Ljava/lang/String;->charAt(I)C
move-result v2
iput-char v2, p3, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->d:C
.line 478
iput v0, p3, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->b:I
.line 479
iget-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->d:Ljava/util/ArrayList;
invoke-virtual {v2, p3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 p2, p2, 0x1
goto :goto_1
.line 481
:cond_2
monitor-exit p0
return v1
.line 484
:cond_3
invoke-virtual {p3}, Landroid/view/KeyEvent;->getUnicodeChar()I
move-result p1
int-to-char p1, p1
const/16 v2, 0x43
if-ne p2, v2, :cond_4
const/16 p1, 0x8
.line 487
:cond_4
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v2
if-ltz v2, :cond_d
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v2
const/16 v4, 0x104
if-lt v2, v4, :cond_5
goto/16 :goto_3
.line 491
:cond_5
invoke-virtual {p3}, Landroid/view/KeyEvent;->getAction()I
move-result v2
const/4 v4, 0x4
const/16 v5, 0xff
packed-switch v2, :pswitch_data_0
goto/16 :goto_2
.line 512
:pswitch_0
invoke-static {}, Ljava/lang/System;->nanoTime()J
move-result-wide v6
.line 513
iget-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->a:Lcom/badlogic/gdx/utils/Pool;
invoke-virtual {v2}, Lcom/badlogic/gdx/utils/Pool;->d()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;
.line 514
iput-wide v6, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->a:J
.line 515
iput-char v1, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->d:C
.line 516
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v8
iput v8, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->c:I
.line 517
iput v3, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->b:I
if-ne p2, v4, :cond_6
.line 519
invoke-virtual {p3}, Landroid/view/KeyEvent;->isAltPressed()Z
move-result v8
if-eqz v8, :cond_6
.line 521
iput v5, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->c:I
const/16 p2, 0xff
.line 523
:cond_6
iget-object v8, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->d:Ljava/util/ArrayList;
invoke-virtual {v8, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 525
iget-object v2, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->a:Lcom/badlogic/gdx/utils/Pool;
invoke-virtual {v2}, Lcom/badlogic/gdx/utils/Pool;->d()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;
.line 526
iput-wide v6, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->a:J
.line 527
iput-char p1, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->d:C
.line 528
iput v1, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->c:I
.line 529
iput v0, v2, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->b:I
.line 530
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->d:Ljava/util/ArrayList;
invoke-virtual {p1, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
if-ne p2, v5, :cond_7
.line 533
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->x:[Z
aget-boolean p1, p1, v5
if-eqz p1, :cond_9
.line 534
iget p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->w:I
sub-int/2addr p1, v3
iput p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->w:I
.line 535
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->x:[Z
aput-boolean v1, p1, v5
goto :goto_2
.line 538
:cond_7
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->x:[Z
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v0
aget-boolean p1, p1, v0
if-eqz p1, :cond_9
.line 539
iget p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->w:I
sub-int/2addr p1, v3
iput p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->w:I
.line 540
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->x:[Z
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result p3
aput-boolean v1, p1, p3
goto :goto_2
.line 493
:pswitch_1
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->a:Lcom/badlogic/gdx/utils/Pool;
invoke-virtual {p1}, Lcom/badlogic/gdx/utils/Pool;->d()Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;
.line 494
invoke-static {}, Ljava/lang/System;->nanoTime()J
move-result-wide v6
iput-wide v6, p1, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->a:J
.line 495
iput-char v1, p1, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->d:C
.line 496
invoke-virtual {p3}, Landroid/view/KeyEvent;->getKeyCode()I
move-result v0
iput v0, p1, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->c:I
.line 497
iput v1, p1, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->b:I
if-ne p2, v4, :cond_8
.line 500
invoke-virtual {p3}, Landroid/view/KeyEvent;->isAltPressed()Z
move-result p3
if-eqz p3, :cond_8
.line 502
iput v5, p1, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->c:I
const/16 p2, 0xff
.line 505
:cond_8
iget-object p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->d:Ljava/util/ArrayList;
invoke-virtual {p3, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 506
iget-object p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->x:[Z
iget v0, p1, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->c:I
aget-boolean p3, p3, v0
if-nez p3, :cond_9
.line 507
iget p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->w:I
add-int/2addr p3, v3
iput p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->w:I
.line 508
iget-object p3, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->x:[Z
iget p1, p1, Lcom/badlogic/gdx/backends/android/AndroidInput$KeyEvent;->c:I
aput-boolean v3, p3, p1
.line 544
:cond_9
:goto_2
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->p:Lcom/badlogic/gdx/Application;
invoke-interface {p1}, Lcom/badlogic/gdx/Application;->getGraphics()Lcom/badlogic/gdx/Graphics;
move-result-object p1
invoke-interface {p1}, Lcom/badlogic/gdx/Graphics;->i()V
.line 545
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-ne p2, v5, :cond_a
return v3
.line 549
:cond_a
iget-boolean p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->I:Z
if-eqz p1, :cond_b
if-ne p2, v4, :cond_b
return v3
.line 550
:cond_b
iget-boolean p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->J:Z
if-eqz p1, :cond_c
const/16 p1, 0x52
if-ne p2, p1, :cond_c
return v3
:cond_c
return v1
.line 488
:cond_d
:goto_3
:try_start_1
monitor-exit p0
return v1
:catchall_0
move-exception p1
.line 545
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw p1
:pswitch_data_0
.packed-switch 0x0
:pswitch_1
:pswitch_0
.end packed-switch
.end method
.method public onTouch(Landroid/view/View;Landroid/view/MotionEvent;)Z
.locals 2
.line 416
iget-boolean v0, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->t:Z
const/4 v1, 0x1
if-eqz v0, :cond_0
if-eqz p1, :cond_0
.line 417
invoke-virtual {p1, v1}, Landroid/view/View;->setFocusableInTouchMode(Z)V
.line 418
invoke-virtual {p1}, Landroid/view/View;->requestFocus()Z
const/4 p1, 0x0
.line 419
iput-boolean p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->t:Z
.line 423
:cond_0
iget-object p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->G:Lcom/badlogic/gdx/backends/android/AndroidTouchHandler;
invoke-interface {p1, p2, p0}, Lcom/badlogic/gdx/backends/android/AndroidTouchHandler;->a(Landroid/view/MotionEvent;Lcom/badlogic/gdx/backends/android/AndroidInput;)V
.line 425
iget p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->H:I
if-eqz p1, :cond_1
.line 427
:try_start_0
iget p1, p0, Lcom/badlogic/gdx/backends/android/AndroidInput;->H:I
int-to-long p1, p1
invoke-static {p1, p2}, Ljava/lang/Thread;->sleep(J)V
:try_end_0
.catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
:cond_1
return v1
.end method