.class public Landroid/support/v4/app/ActionBarDrawerToggle; .super Ljava/lang/Object; .source "ActionBarDrawerToggle.java" # interfaces .implements Landroid/support/v4/widget/DrawerLayout$DrawerListener; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Landroid/support/v4/app/ActionBarDrawerToggle$1;, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImplHC;, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImplBase;, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; } .end annotation # static fields .field private static final ID_HOME:I = 0x102002c .field private static final IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; # instance fields .field private final mActivity:Landroid/app/Activity; .field private final mCloseDrawerContentDescRes:I .field private mDrawerImage:Landroid/graphics/drawable/Drawable; .field private final mDrawerImageResource:I .field private mDrawerIndicatorEnabled:Z .field private final mDrawerLayout:Landroid/support/v4/widget/DrawerLayout; .field private final mOpenDrawerContentDescRes:I .field private mSetIndicatorInfo:Ljava/lang/Object; .field private mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; .field private mThemeImage:Landroid/graphics/drawable/Drawable; # direct methods .method static constructor ()V .registers 3 .prologue const/4 v2, 0x0 .line 108 sget v0, Landroid/os/Build$VERSION;->SDK_INT:I .line 109 .local v0, "version":I const/16 v1, 0xb if-lt v0, v1, :cond_f .line 110 new-instance v1, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImplHC; invoke-direct {v1, v2}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImplHC;->(Landroid/support/v4/app/ActionBarDrawerToggle$1;)V sput-object v1, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; .line 114 :goto_e return-void .line 112 :cond_f new-instance v1, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImplBase; invoke-direct {v1, v2}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImplBase;->(Landroid/support/v4/app/ActionBarDrawerToggle$1;)V sput-object v1, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; goto :goto_e .end method .method public constructor (Landroid/app/Activity;Landroid/support/v4/widget/DrawerLayout;III)V .registers 8 .param p1, "activity" # Landroid/app/Activity; .param p2, "drawerLayout" # Landroid/support/v4/widget/DrawerLayout; .param p3, "drawerImageRes" # I .param p4, "openDrawerContentDescRes" # I .param p5, "closeDrawerContentDescRes" # I .prologue .line 152 invoke-direct {p0}, Ljava/lang/Object;->()V .line 121 const/4 v0, 0x1 iput-boolean v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerIndicatorEnabled:Z .line 153 iput-object p1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mActivity:Landroid/app/Activity; .line 154 iput-object p2, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerLayout:Landroid/support/v4/widget/DrawerLayout; .line 155 iput p3, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerImageResource:I .line 156 iput p4, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mOpenDrawerContentDescRes:I .line 157 iput p5, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mCloseDrawerContentDescRes:I .line 159 sget-object v0, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; invoke-interface {v0, p1}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl;->getThemeUpIndicator(Landroid/app/Activity;)Landroid/graphics/drawable/Drawable; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mThemeImage:Landroid/graphics/drawable/Drawable; .line 160 invoke-virtual {p1}, Landroid/app/Activity;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p3}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerImage:Landroid/graphics/drawable/Drawable; .line 161 new-instance v0, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; iget-object v1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerImage:Landroid/graphics/drawable/Drawable; invoke-direct {v0, v1}, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;->(Landroid/graphics/drawable/Drawable;)V iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; .line 162 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; const v1, 0x3eaaaaab invoke-virtual {v0, v1}, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;->setOffsetBy(F)V .line 163 return-void .end method # virtual methods .method public isDrawerIndicatorEnabled()Z .registers 2 .prologue .line 217 iget-boolean v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerIndicatorEnabled:Z return v0 .end method .method public onConfigurationChanged(Landroid/content/res/Configuration;)V .registers 4 .param p1, "newConfig" # Landroid/content/res/Configuration; .prologue .line 229 sget-object v0, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; iget-object v1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mActivity:Landroid/app/Activity; invoke-interface {v0, v1}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl;->getThemeUpIndicator(Landroid/app/Activity;)Landroid/graphics/drawable/Drawable; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mThemeImage:Landroid/graphics/drawable/Drawable; .line 230 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mActivity:Landroid/app/Activity; invoke-virtual {v0}, Landroid/app/Activity;->getResources()Landroid/content/res/Resources; move-result-object v0 iget v1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerImageResource:I invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerImage:Landroid/graphics/drawable/Drawable; .line 231 invoke-virtual {p0}, Landroid/support/v4/app/ActionBarDrawerToggle;->syncState()V .line 232 return-void .end method .method public onDrawerClosed(Landroid/view/View;)V .registers 6 .param p1, "drawerView" # Landroid/view/View; .prologue .line 298 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;->setOffset(F)V .line 299 iget-boolean v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerIndicatorEnabled:Z if-eqz v0, :cond_18 .line 300 sget-object v0, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; iget-object v1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; iget-object v2, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mActivity:Landroid/app/Activity; iget v3, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mCloseDrawerContentDescRes:I invoke-interface {v0, v1, v2, v3}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl;->setActionBarDescription(Ljava/lang/Object;Landroid/app/Activity;I)Ljava/lang/Object; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; .line 303 :cond_18 return-void .end method .method public onDrawerOpened(Landroid/view/View;)V .registers 6 .param p1, "drawerView" # Landroid/view/View; .prologue .line 282 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; const/high16 v1, 0x3f800000 invoke-virtual {v0, v1}, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;->setOffset(F)V .line 283 iget-boolean v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerIndicatorEnabled:Z if-eqz v0, :cond_19 .line 284 sget-object v0, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; iget-object v1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; iget-object v2, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mActivity:Landroid/app/Activity; iget v3, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mOpenDrawerContentDescRes:I invoke-interface {v0, v1, v2, v3}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl;->setActionBarDescription(Ljava/lang/Object;Landroid/app/Activity;I)Ljava/lang/Object; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; .line 287 :cond_19 return-void .end method .method public onDrawerSlide(Landroid/view/View;F)V .registers 7 .param p1, "drawerView" # Landroid/view/View; .param p2, "slideOffset" # F .prologue const/high16 v3, 0x40000000 const/high16 v2, 0x3f000000 .line 264 iget-object v1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; invoke-virtual {v1}, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;->getOffset()F move-result v0 .line 265 .local v0, "glyphOffset":F cmpl-float v1, p2, v2 if-lez v1, :cond_20 .line 266 const/4 v1, 0x0 sub-float v2, p2, v2 invoke-static {v1, v2}, Ljava/lang/Math;->max(FF)F move-result v1 mul-float/2addr v1, v3 invoke-static {v0, v1}, Ljava/lang/Math;->max(FF)F move-result v0 .line 270 :goto_1a iget-object v1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; invoke-virtual {v1, v0}, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;->setOffset(F)V .line 271 return-void .line 268 :cond_20 mul-float v1, p2, v3 invoke-static {v0, v1}, Ljava/lang/Math;->min(FF)F move-result v0 goto :goto_1a .end method .method public onDrawerStateChanged(I)V .registers 2 .param p1, "newState" # I .prologue .line 314 return-void .end method .method public onOptionsItemSelected(Landroid/view/MenuItem;)Z .registers 5 .param p1, "item" # Landroid/view/MenuItem; .prologue const v2, 0x800003 .line 244 if-eqz p1, :cond_1f invoke-interface {p1}, Landroid/view/MenuItem;->getItemId()I move-result v0 const v1, 0x102002c if-ne v0, v1, :cond_1f iget-boolean v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerIndicatorEnabled:Z if-eqz v0, :cond_1f .line 245 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerLayout:Landroid/support/v4/widget/DrawerLayout; invoke-virtual {v0, v2}, Landroid/support/v4/widget/DrawerLayout;->isDrawerVisible(I)Z move-result v0 if-eqz v0, :cond_21 .line 246 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerLayout:Landroid/support/v4/widget/DrawerLayout; invoke-virtual {v0, v2}, Landroid/support/v4/widget/DrawerLayout;->closeDrawer(I)V .line 251 :cond_1f :goto_1f const/4 v0, 0x0 return v0 .line 248 :cond_21 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerLayout:Landroid/support/v4/widget/DrawerLayout; invoke-virtual {v0, v2}, Landroid/support/v4/widget/DrawerLayout;->openDrawer(I)V goto :goto_1f .end method .method public setDrawerIndicatorEnabled(Z)V .registers 8 .param p1, "enable" # Z .prologue .line 199 iget-boolean v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerIndicatorEnabled:Z if-eq p1, v0, :cond_23 .line 200 if-eqz p1, :cond_27 .line 201 sget-object v1, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; iget-object v2, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; iget-object v3, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mActivity:Landroid/app/Activity; iget-object v4, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerLayout:Landroid/support/v4/widget/DrawerLayout; const v5, 0x800003 invoke-virtual {v0, v5}, Landroid/support/v4/widget/DrawerLayout;->isDrawerOpen(I)Z move-result v0 if-eqz v0, :cond_24 iget v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mOpenDrawerContentDescRes:I :goto_1b invoke-interface {v1, v2, v3, v4, v0}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl;->setActionBarUpIndicator(Ljava/lang/Object;Landroid/app/Activity;Landroid/graphics/drawable/Drawable;I)Ljava/lang/Object; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; .line 208 :goto_21 iput-boolean p1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerIndicatorEnabled:Z .line 210 :cond_23 return-void .line 201 :cond_24 iget v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mCloseDrawerContentDescRes:I goto :goto_1b .line 205 :cond_27 sget-object v0, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; iget-object v1, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; iget-object v2, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mActivity:Landroid/app/Activity; iget-object v3, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mThemeImage:Landroid/graphics/drawable/Drawable; const/4 v4, 0x0 invoke-interface {v0, v1, v2, v3, v4}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl;->setActionBarUpIndicator(Ljava/lang/Object;Landroid/app/Activity;Landroid/graphics/drawable/Drawable;I)Ljava/lang/Object; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; goto :goto_21 .end method .method public syncState()V .registers 7 .prologue const v5, 0x800003 .line 175 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerLayout:Landroid/support/v4/widget/DrawerLayout; invoke-virtual {v0, v5}, Landroid/support/v4/widget/DrawerLayout;->isDrawerOpen(I)Z move-result v0 if-eqz v0, :cond_2f .line 176 iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; const/high16 v1, 0x3f800000 invoke-virtual {v0, v1}, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;->setOffset(F)V .line 181 :goto_12 iget-boolean v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerIndicatorEnabled:Z if-eqz v0, :cond_2e .line 182 sget-object v1, Landroid/support/v4/app/ActionBarDrawerToggle;->IMPL:Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl; iget-object v2, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; iget-object v3, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mActivity:Landroid/app/Activity; iget-object v4, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mDrawerLayout:Landroid/support/v4/widget/DrawerLayout; invoke-virtual {v0, v5}, Landroid/support/v4/widget/DrawerLayout;->isDrawerOpen(I)Z move-result v0 if-eqz v0, :cond_36 iget v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mOpenDrawerContentDescRes:I :goto_28 invoke-interface {v1, v2, v3, v4, v0}, Landroid/support/v4/app/ActionBarDrawerToggle$ActionBarDrawerToggleImpl;->setActionBarUpIndicator(Ljava/lang/Object;Landroid/app/Activity;Landroid/graphics/drawable/Drawable;I)Ljava/lang/Object; move-result-object v0 iput-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSetIndicatorInfo:Ljava/lang/Object; .line 186 :cond_2e return-void .line 178 :cond_2f iget-object v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mSlider:Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/support/v4/app/ActionBarDrawerToggle$SlideDrawable;->setOffset(F)V goto :goto_12 .line 182 :cond_36 iget v0, p0, Landroid/support/v4/app/ActionBarDrawerToggle;->mCloseDrawerContentDescRes:I goto :goto_28 .end method