KPSwitchConflictUtil.smali

.class public Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;
.super Ljava/lang/Object;
.source "KPSwitchConflictUtil.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;,
        Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;
    }
.end annotation


# direct methods
.method static constructor <clinit>()V
    .registers 1

    return-void
.end method

.method public constructor <init>()V
    .registers 1

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

    return-void
.end method

.method static synthetic access$000(Landroid/view/View;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;)V
    .registers 2
    .param p0, "x0"    # Landroid/view/View;
    .param p1, "x1"    # [Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;

    .line 42
    invoke-static {p0, p1}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->showBoundTriggerSubPanel(Landroid/view/View;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;)V

    return-void
.end method

.method public static attach(Landroid/view/View;Landroid/view/View;Landroid/view/View;)V
    .registers 4
    .param p0, "panelLayout"    # Landroid/view/View;
    .param p1, "switchPanelKeyboardBtn"    # Landroid/view/View;
    .param p2, "focusView"    # Landroid/view/View;

    .line 50
    const/4 v0, 0x0

    invoke-static {p0, p1, p2, v0}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->attach(Landroid/view/View;Landroid/view/View;Landroid/view/View;Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;)V

    .line 51
    return-void
.end method

.method public static attach(Landroid/view/View;Landroid/view/View;Landroid/view/View;Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;)V
    .registers 6
    .param p0, "panelLayout"    # Landroid/view/View;
    .param p1, "switchPanelKeyboardBtn"    # Landroid/view/View;
    .param p2, "focusView"    # Landroid/view/View;
    .param p3, "switchClickListener"    # Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;

    .line 75
    invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;

    move-result-object v0

    check-cast v0, Landroid/app/Activity;

    .line 77
    .local v0, "activity":Landroid/app/Activity;
    if-eqz p1, :cond_10

    .line 78
    new-instance v1, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$1;

    invoke-direct {v1, p0, p2, p3}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$1;-><init>(Landroid/view/View;Landroid/view/View;Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;)V

    invoke-virtual {p1, v1}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V

    .line 89
    :cond_10
    invoke-static {v0}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->isHandleByPlaceholder(Landroid/app/Activity;)Z

    move-result v1

    if-eqz v1, :cond_1e

    .line 90
    new-instance v1, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$2;

    invoke-direct {v1, p0}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$2;-><init>(Landroid/view/View;)V

    invoke-virtual {p2, v1}, Landroid/view/View;->setOnTouchListener(Landroid/view/View$OnTouchListener;)V

    .line 105
    :cond_1e
    return-void
.end method

.method public static varargs attach(Landroid/view/View;Landroid/view/View;Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;)V
    .registers 8
    .param p0, "panelLayout"    # Landroid/view/View;
    .param p1, "focusView"    # Landroid/view/View;
    .param p2, "switchClickListener"    # Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;
    .param p3, "subPanelAndTriggers"    # [Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;

    .line 132
    invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;

    move-result-object v0

    check-cast v0, Landroid/app/Activity;

    .line 134
    .local v0, "activity":Landroid/app/Activity;
    array-length v1, p3

    const/4 v2, 0x0

    :goto_8
    if-ge v2, v1, :cond_12

    aget-object v3, p3, v2

    .line 136
    .local v3, "subPanelAndTrigger":Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;
    invoke-static {v3, p3, p1, p0, p2}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->bindSubPanel(Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;Landroid/view/View;Landroid/view/View;Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;)V

    .line 134
    .end local v3    # "subPanelAndTrigger":Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;
    add-int/lit8 v2, v2, 0x1

    goto :goto_8

    .line 140
    :cond_12
    invoke-static {v0}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->isHandleByPlaceholder(Landroid/app/Activity;)Z

    move-result v1

    if-eqz v1, :cond_20

    .line 141
    new-instance v1, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$3;

    invoke-direct {v1, p0}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$3;-><init>(Landroid/view/View;)V

    invoke-virtual {p1, v1}, Landroid/view/View;->setOnTouchListener(Landroid/view/View$OnTouchListener;)V

    .line 156
    :cond_20
    return-void
.end method

.method public static varargs attach(Landroid/view/View;Landroid/view/View;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;)V
    .registers 4
    .param p0, "panelLayout"    # Landroid/view/View;
    .param p1, "focusView"    # Landroid/view/View;
    .param p2, "subPanelAndTriggers"    # [Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;

    .line 113
    const/4 v0, 0x0

    invoke-static {p0, p1, v0, p2}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->attach(Landroid/view/View;Landroid/view/View;Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;)V

    .line 114
    return-void
.end method

.method private static bindSubPanel(Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;Landroid/view/View;Landroid/view/View;Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;)V
    .registers 14
    .param p0, "subPanelAndTrigger"    # Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;
    .param p1, "subPanelAndTriggers"    # [Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;
    .param p2, "focusView"    # Landroid/view/View;
    .param p3, "panelLayout"    # Landroid/view/View;
    .param p4, "switchClickListener"    # Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;

    .line 287
    iget-object v0, p0, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;->triggerView:Landroid/view/View;

    .line 288
    .local v0, "triggerView":Landroid/view/View;
    iget-object v7, p0, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;->subPanelView:Landroid/view/View;

    .line 290
    .local v7, "boundTriggerSubPanelView":Landroid/view/View;
    new-instance v8, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$4;

    move-object v1, v8

    move-object v2, p3

    move-object v3, v7

    move-object v4, p2

    move-object v5, p1

    move-object v6, p4

    invoke-direct/range {v1 .. v6}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$4;-><init>(Landroid/view/View;Landroid/view/View;Landroid/view/View;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SwitchClickListener;)V

    invoke-virtual {v0, v8}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V

    .line 324
    return-void
.end method

.method public static hidePanelAndKeyboard(Landroid/view/View;)V
    .registers 4
    .param p0, "panelLayout"    # Landroid/view/View;

    .line 239
    invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;

    move-result-object v0

    check-cast v0, Landroid/app/Activity;

    .line 241
    .local v0, "activity":Landroid/app/Activity;
    invoke-virtual {v0}, Landroid/app/Activity;->getCurrentFocus()Landroid/view/View;

    move-result-object v1

    .line 242
    .local v1, "focusView":Landroid/view/View;
    if-eqz v1, :cond_16

    .line 243
    invoke-virtual {v0}, Landroid/app/Activity;->getCurrentFocus()Landroid/view/View;

    move-result-object v2

    invoke-static {v2}, Lcn/dreamtobe/kpswitch/util/KeyboardUtil;->hideKeyboard(Landroid/view/View;)V

    .line 244
    invoke-virtual {v1}, Landroid/view/View;->clearFocus()V

    .line 247
    :cond_16
    const/16 v2, 0x8

    invoke-virtual {p0, v2}, Landroid/view/View;->setVisibility(I)V

    .line 248
    return-void
.end method

.method static isHandleByPlaceholder(Landroid/app/Activity;)Z
    .registers 4
    .param p0, "activity"    # Landroid/app/Activity;

    .line 278
    invoke-static {p0}, Lcn/dreamtobe/kpswitch/util/ViewUtil;->isFullScreen(Landroid/app/Activity;)Z

    move-result v0

    .line 279
    invoke-static {p0}, Lcn/dreamtobe/kpswitch/util/ViewUtil;->isTranslucentStatus(Landroid/app/Activity;)Z

    move-result v1

    invoke-static {p0}, Lcn/dreamtobe/kpswitch/util/ViewUtil;->isFitsSystemWindows(Landroid/app/Activity;)Z

    move-result v2

    .line 278
    invoke-static {v0, v1, v2}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->isHandleByPlaceholder(ZZZ)Z

    move-result v0

    return v0
.end method

.method public static isHandleByPlaceholder(ZZZ)Z
    .registers 4
    .param p0, "isFullScreen"    # Z
    .param p1, "isTranslucentStatus"    # Z
    .param p2, "isFitsSystem"    # Z

    .line 274
    if-nez p0, :cond_9

    if-eqz p1, :cond_7

    if-nez p2, :cond_7

    goto :goto_9

    :cond_7
    const/4 v0, 0x0

    goto :goto_a

    :cond_9
    :goto_9
    const/4 v0, 0x1

    :goto_a
    return v0
.end method

.method private static showBoundTriggerSubPanel(Landroid/view/View;[Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;)V
    .registers 8
    .param p0, "boundTriggerSubPanelView"    # Landroid/view/View;
    .param p1, "subPanelAndTriggers"    # [Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;

    .line 329
    array-length v0, p1

    const/4 v1, 0x0

    const/4 v2, 0x0

    :goto_3
    if-ge v2, v0, :cond_15

    aget-object v3, p1, v2

    .line 330
    .local v3, "panelAndTrigger":Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;
    iget-object v4, v3, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;->subPanelView:Landroid/view/View;

    if-eq v4, p0, :cond_12

    .line 332
    iget-object v4, v3, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;->subPanelView:Landroid/view/View;

    const/16 v5, 0x8

    invoke-virtual {v4, v5}, Landroid/view/View;->setVisibility(I)V

    .line 329
    .end local v3    # "panelAndTrigger":Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil$SubPanelAndTrigger;
    :cond_12
    add-int/lit8 v2, v2, 0x1

    goto :goto_3

    .line 335
    :cond_15
    invoke-virtual {p0, v1}, Landroid/view/View;->setVisibility(I)V

    .line 336
    return-void
.end method

.method public static showKeyboard(Landroid/view/View;Landroid/view/View;)V
    .registers 4
    .param p0, "panelLayout"    # Landroid/view/View;
    .param p1, "focusView"    # Landroid/view/View;

    .line 200
    invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;

    move-result-object v0

    check-cast v0, Landroid/app/Activity;

    .line 202
    .local v0, "activity":Landroid/app/Activity;
    invoke-static {p1}, Lcn/dreamtobe/kpswitch/util/KeyboardUtil;->showKeyboard(Landroid/view/View;)V

    .line 203
    invoke-static {v0}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->isHandleByPlaceholder(Landroid/app/Activity;)Z

    move-result v1

    if-eqz v1, :cond_13

    .line 204
    const/4 v1, 0x4

    invoke-virtual {p0, v1}, Landroid/view/View;->setVisibility(I)V

    .line 206
    :cond_13
    return-void
.end method

.method public static showPanel(Landroid/view/View;)V
    .registers 3
    .param p0, "panelLayout"    # Landroid/view/View;

    .line 185
    invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;

    move-result-object v0

    check-cast v0, Landroid/app/Activity;

    .line 186
    .local v0, "activity":Landroid/app/Activity;
    const/4 v1, 0x0

    invoke-virtual {p0, v1}, Landroid/view/View;->setVisibility(I)V

    .line 187
    invoke-virtual {v0}, Landroid/app/Activity;->getCurrentFocus()Landroid/view/View;

    move-result-object v1

    if-eqz v1, :cond_17

    .line 188
    invoke-virtual {v0}, Landroid/app/Activity;->getCurrentFocus()Landroid/view/View;

    move-result-object v1

    invoke-static {v1}, Lcn/dreamtobe/kpswitch/util/KeyboardUtil;->hideKeyboard(Landroid/view/View;)V

    .line 190
    :cond_17
    return-void
.end method

.method public static switchPanelAndKeyboard(Landroid/view/View;Landroid/view/View;)Z
    .registers 3
    .param p0, "panelLayout"    # Landroid/view/View;
    .param p1, "focusView"    # Landroid/view/View;

    .line 223
    invoke-virtual {p0}, Landroid/view/View;->getVisibility()I

    move-result v0

    if-eqz v0, :cond_8

    const/4 v0, 0x1

    goto :goto_9

    :cond_8
    const/4 v0, 0x0

    .line 224
    .local v0, "switchToPanel":Z
    :goto_9
    if-nez v0, :cond_f

    .line 225
    invoke-static {p0, p1}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->showKeyboard(Landroid/view/View;Landroid/view/View;)V

    goto :goto_12

    .line 227
    :cond_f
    invoke-static {p0}, Lcn/dreamtobe/kpswitch/util/KPSwitchConflictUtil;->showPanel(Landroid/view/View;)V

    .line 230
    :goto_12
    return v0
.end method