KPSwitchRootLayoutHandler.smali
.class public Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;
.super Ljava/lang/Object;
.source "KPSwitchRootLayoutHandler.java"
# static fields
.field private static final TAG:Ljava/lang/String; = "KPSRootLayoutHandler"
# instance fields
.field private final mIsTranslucentStatus:Z
.field private mOldHeight:I
.field private mPanelLayout:Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
.field private final mStatusBarHeight:I
.field private final mTargetRootView:Landroid/view/View;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Landroid/view/View;)V
.registers 4
.param p1, "rootView" # Landroid/view/View;
.line 47
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 41
const/4 v0, -0x1
iput v0, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mOldHeight:I
.line 48
iput-object p1, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mTargetRootView:Landroid/view/View;
.line 49
invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context;
move-result-object v0
invoke-static {v0}, Lim/tpelyyftgw/ui/hui/friendscircle_v1/utils/StatusBarHeightUtil;->getStatusBarHeight(Landroid/content/Context;)I
move-result v0
iput v0, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mStatusBarHeight:I
.line 50
invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context;
move-result-object v0
check-cast v0, Landroid/app/Activity;
.line 51
.local v0, "activity":Landroid/app/Activity;
invoke-static {v0}, Lim/tpelyyftgw/ui/hui/friendscircle_v1/utils/ViewUtil;->isTranslucentStatus(Landroid/app/Activity;)Z
move-result v1
iput-boolean v1, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mIsTranslucentStatus:Z
.line 52
return-void
.end method
.method private getPanelLayout(Landroid/view/View;)Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
.registers 4
.param p1, "view" # Landroid/view/View;
.line 126
iget-object v0, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mPanelLayout:Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
if-eqz v0, :cond_5
.line 127
return-object v0
.line 130
:cond_5
instance-of v0, p1, Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
if-eqz v0, :cond_f
.line 131
move-object v0, p1
check-cast v0, Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
iput-object v0, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mPanelLayout:Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
.line 132
return-object v0
.line 135
:cond_f
instance-of v0, p1, Landroid/view/ViewGroup;
if-eqz v0, :cond_30
.line 136
const/4 v0, 0x0
.local v0, "i":I
:goto_14
move-object v1, p1
check-cast v1, Landroid/view/ViewGroup;
invoke-virtual {v1}, Landroid/view/ViewGroup;->getChildCount()I
move-result v1
if-ge v0, v1, :cond_30
.line 137
move-object v1, p1
check-cast v1, Landroid/view/ViewGroup;
invoke-virtual {v1, v0}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;
move-result-object v1
invoke-direct {p0, v1}, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->getPanelLayout(Landroid/view/View;)Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
move-result-object v1
.line 138
.local v1, "v":Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
if-eqz v1, :cond_2d
.line 139
iput-object v1, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mPanelLayout:Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
.line 140
return-object v1
.line 136
.end local v1 # "v":Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
:cond_2d
add-int/lit8 v0, v0, 0x1
goto :goto_14
.line 145
.end local v0 # "i":I
:cond_30
const/4 v0, 0x0
return-object v0
.end method
# virtual methods
.method public handleBeforeMeasure(II)V
.registers 8
.param p1, "width" # I
.param p2, "height" # I
.line 58
iget-boolean v0, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mIsTranslucentStatus:Z
if-eqz v0, :cond_22
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x10
if-lt v0, v1, :cond_22
.line 59
iget-object v0, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mTargetRootView:Landroid/view/View;
invoke-virtual {v0}, Landroid/view/View;->getFitsSystemWindows()Z
move-result v0
if-eqz v0, :cond_22
.line 61
new-instance v0, Landroid/graphics/Rect;
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
.line 62
.local v0, "rect":Landroid/graphics/Rect;
iget-object v1, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mTargetRootView:Landroid/view/View;
invoke-virtual {v1, v0}, Landroid/view/View;->getWindowVisibleDisplayFrame(Landroid/graphics/Rect;)V
.line 63
iget v1, v0, Landroid/graphics/Rect;->bottom:I
iget v2, v0, Landroid/graphics/Rect;->top:I
sub-int p2, v1, v2
.line 67
.end local v0 # "rect":Landroid/graphics/Rect;
:cond_22
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "onMeasure, width: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v1, " height: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "KPSRootLayoutHandler"
invoke-static {v1, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 68
if-gez p2, :cond_43
.line 69
return-void
.line 72
:cond_43
iget v0, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mOldHeight:I
if-gez v0, :cond_4a
.line 73
iput p2, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mOldHeight:I
.line 74
return-void
.line 77
:cond_4a
sub-int/2addr v0, p2
.line 79
.local v0, "offset":I
if-nez v0, :cond_67
.line 80
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, ""
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v3, " == 0 break;"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 81
return-void
.line 84
:cond_67
invoke-static {v0}, Ljava/lang/Math;->abs(I)I
move-result v2
iget v3, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mStatusBarHeight:I
if-ne v2, v3, :cond_83
.line 85
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v2, v3
const-string v3, "offset just equal statusBar height %d"
invoke-static {v3, v2}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 89
return-void
.line 92
:cond_83
iput p2, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mOldHeight:I
.line 93
iget-object v2, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mTargetRootView:Landroid/view/View;
invoke-direct {p0, v2}, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->getPanelLayout(Landroid/view/View;)Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
move-result-object v2
.line 95
.local v2, "panel":Lcn/dreamtobe/kpswitch/IPanelConflictLayout;
if-nez v2, :cond_93
.line 96
const-string v3, "can\'t find the valid panel conflict layout, give up!"
invoke-static {v1, v3}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 97
return-void
.line 101
:cond_93
invoke-static {v0}, Ljava/lang/Math;->abs(I)I
move-result v3
iget-object v4, p0, Lim/tpelyyftgw/ui/hui/friendscircle_v1/view/panel/KPSwitchRootLayoutHandler;->mTargetRootView:Landroid/view/View;
invoke-virtual {v4}, Landroid/view/View;->getContext()Landroid/content/Context;
move-result-object v4
invoke-static {v4}, Lim/tpelyyftgw/ui/hui/friendscircle_v1/utils/KeyboardUtils;->getMinKeyboardHeight(Landroid/content/Context;)I
move-result v4
if-ge v3, v4, :cond_a9
.line 102
const-string v3, "system bottom-menu-bar(such as HuaWei Mate7) causes layout changed"
invoke-static {v1, v3}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 103
return-void
.line 106
:cond_a9
if-lez v0, :cond_af
.line 108
invoke-interface {v2}, Lcn/dreamtobe/kpswitch/IPanelConflictLayout;->handleHide()V
goto :goto_be
.line 109
:cond_af
invoke-interface {v2}, Lcn/dreamtobe/kpswitch/IPanelConflictLayout;->isKeyboardShowing()Z
move-result v1
if-eqz v1, :cond_be
.line 116
invoke-interface {v2}, Lcn/dreamtobe/kpswitch/IPanelConflictLayout;->isVisible()Z
move-result v1
if-eqz v1, :cond_be
.line 118
invoke-interface {v2}, Lcn/dreamtobe/kpswitch/IPanelConflictLayout;->handleShow()V
.line 121
:cond_be
:goto_be
return-void
.end method