123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892 |
- .class public Landroid/support/v4/view/ViewPager;
- .super Landroid/view/ViewGroup;
- .source "ViewPager.java"
- # annotations
- .annotation system Ldalvik/annotation/MemberClasses;
- value = {
- Landroid/support/v4/view/ViewPager$ViewPositionComparator;,
- Landroid/support/v4/view/ViewPager$LayoutParams;,
- Landroid/support/v4/view/ViewPager$PagerObserver;,
- Landroid/support/v4/view/ViewPager$MyAccessibilityDelegate;,
- Landroid/support/v4/view/ViewPager$SavedState;,
- Landroid/support/v4/view/ViewPager$Decor;,
- Landroid/support/v4/view/ViewPager$OnAdapterChangeListener;,
- Landroid/support/v4/view/ViewPager$PageTransformer;,
- Landroid/support/v4/view/ViewPager$SimpleOnPageChangeListener;,
- Landroid/support/v4/view/ViewPager$OnPageChangeListener;,
- Landroid/support/v4/view/ViewPager$ItemInfo;
- }
- .end annotation
- # static fields
- .field private static final CLOSE_ENOUGH:I = 0x2
- .field private static final COMPARATOR:Ljava/util/Comparator;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/Comparator",
- "<",
- "Landroid/support/v4/view/ViewPager$ItemInfo;",
- ">;"
- }
- .end annotation
- .end field
- .field private static final DEBUG:Z = false
- .field private static final DEFAULT_GUTTER_SIZE:I = 0x10
- .field private static final DEFAULT_OFFSCREEN_PAGES:I = 0x1
- .field private static final DRAW_ORDER_DEFAULT:I = 0x0
- .field private static final DRAW_ORDER_FORWARD:I = 0x1
- .field private static final DRAW_ORDER_REVERSE:I = 0x2
- .field private static final INVALID_POINTER:I = -0x1
- .field private static final LAYOUT_ATTRS:[I
- .field private static final MAX_SETTLE_DURATION:I = 0x258
- .field private static final MIN_DISTANCE_FOR_FLING:I = 0x19
- .field private static final MIN_FLING_VELOCITY:I = 0x190
- .field public static final SCROLL_STATE_DRAGGING:I = 0x1
- .field public static final SCROLL_STATE_IDLE:I = 0x0
- .field public static final SCROLL_STATE_SETTLING:I = 0x2
- .field private static final TAG:Ljava/lang/String; = "ViewPager"
- .field private static final USE_CACHE:Z
- .field private static final sInterpolator:Landroid/view/animation/Interpolator;
- .field private static final sPositionComparator:Landroid/support/v4/view/ViewPager$ViewPositionComparator;
- # instance fields
- .field private mActivePointerId:I
- .field private mAdapter:Landroid/support/v4/view/PagerAdapter;
- .field private mAdapterChangeListener:Landroid/support/v4/view/ViewPager$OnAdapterChangeListener;
- .field private mBottomPageBounds:I
- .field private mCalledSuper:Z
- .field private mChildHeightMeasureSpec:I
- .field private mChildWidthMeasureSpec:I
- .field private mCloseEnough:I
- .field private mCurItem:I
- .field private mDecorChildCount:I
- .field private mDefaultGutterSize:I
- .field private mDrawingOrder:I
- .field private mDrawingOrderedChildren:Ljava/util/ArrayList;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/ArrayList",
- "<",
- "Landroid/view/View;",
- ">;"
- }
- .end annotation
- .end field
- .field private final mEndScrollRunnable:Ljava/lang/Runnable;
- .field private mExpectedAdapterCount:I
- .field private mFakeDragBeginTime:J
- .field private mFakeDragging:Z
- .field private mFirstLayout:Z
- .field private mFirstOffset:F
- .field private mFlingDistance:I
- .field private mGutterSize:I
- .field private mInLayout:Z
- .field private mInitialMotionX:F
- .field private mInitialMotionY:F
- .field private mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .field private mIsBeingDragged:Z
- .field private mIsScrollStarted:Z
- .field private mIsUnableToDrag:Z
- .field private final mItems:Ljava/util/ArrayList;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/ArrayList",
- "<",
- "Landroid/support/v4/view/ViewPager$ItemInfo;",
- ">;"
- }
- .end annotation
- .end field
- .field private mLastMotionX:F
- .field private mLastMotionY:F
- .field private mLastOffset:F
- .field private mLeftEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- .field private mMarginDrawable:Landroid/graphics/drawable/Drawable;
- .field private mMaximumVelocity:I
- .field private mMinimumVelocity:I
- .field private mNeedCalculatePageOffsets:Z
- .field private mObserver:Landroid/support/v4/view/ViewPager$PagerObserver;
- .field private mOffscreenPageLimit:I
- .field private mOnPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .field private mOnPageChangeListeners:Ljava/util/List;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/List",
- "<",
- "Landroid/support/v4/view/ViewPager$OnPageChangeListener;",
- ">;"
- }
- .end annotation
- .end field
- .field private mPageMargin:I
- .field private mPageTransformer:Landroid/support/v4/view/ViewPager$PageTransformer;
- .field private mPopulatePending:Z
- .field private mRestoredAdapterState:Landroid/os/Parcelable;
- .field private mRestoredClassLoader:Ljava/lang/ClassLoader;
- .field private mRestoredCurItem:I
- .field private mRightEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- .field private mScrollState:I
- .field private mScroller:Landroid/widget/Scroller;
- .field private mScrollingCacheEnabled:Z
- .field private mSetChildrenDrawingOrderEnabled:Ljava/lang/reflect/Method;
- .field private final mTempItem:Landroid/support/v4/view/ViewPager$ItemInfo;
- .field private final mTempRect:Landroid/graphics/Rect;
- .field private mTopPageBounds:I
- .field private mTouchSlop:I
- .field private mVelocityTracker:Landroid/view/VelocityTracker;
- # direct methods
- .method static constructor <clinit>()V
- .locals 3
- .prologue
- .line 105
- const/4 v0, 0x1
- new-array v0, v0, [I
- const/4 v1, 0x0
- const v2, 0x10100b3
- aput v2, v0, v1
- sput-object v0, Landroid/support/v4/view/ViewPager;->LAYOUT_ATTRS:[I
- .line 123
- new-instance v0, Landroid/support/v4/view/ViewPager$1;
- invoke-direct {v0}, Landroid/support/v4/view/ViewPager$1;-><init>()V
- sput-object v0, Landroid/support/v4/view/ViewPager;->COMPARATOR:Ljava/util/Comparator;
- .line 130
- new-instance v0, Landroid/support/v4/view/ViewPager$2;
- invoke-direct {v0}, Landroid/support/v4/view/ViewPager$2;-><init>()V
- sput-object v0, Landroid/support/v4/view/ViewPager;->sInterpolator:Landroid/view/animation/Interpolator;
- .line 233
- new-instance v0, Landroid/support/v4/view/ViewPager$ViewPositionComparator;
- invoke-direct {v0}, Landroid/support/v4/view/ViewPager$ViewPositionComparator;-><init>()V
- sput-object v0, Landroid/support/v4/view/ViewPager;->sPositionComparator:Landroid/support/v4/view/ViewPager$ViewPositionComparator;
- return-void
- .end method
- .method public constructor <init>(Landroid/content/Context;)V
- .locals 5
- .param p1, "context" # Landroid/content/Context;
- .prologue
- const/4 v4, 0x0
- const/4 v3, 0x1
- const/4 v2, 0x0
- const/4 v1, -0x1
- .line 354
- invoke-direct {p0, p1}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;)V
- .line 137
- new-instance v0, Ljava/util/ArrayList;
- invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- .line 138
- new-instance v0, Landroid/support/v4/view/ViewPager$ItemInfo;
- invoke-direct {v0}, Landroid/support/v4/view/ViewPager$ItemInfo;-><init>()V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mTempItem:Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 140
- new-instance v0, Landroid/graphics/Rect;
- invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mTempRect:Landroid/graphics/Rect;
- .line 144
- iput v1, p0, Landroid/support/v4/view/ViewPager;->mRestoredCurItem:I
- .line 145
- iput-object v4, p0, Landroid/support/v4/view/ViewPager;->mRestoredAdapterState:Landroid/os/Parcelable;
- .line 146
- iput-object v4, p0, Landroid/support/v4/view/ViewPager;->mRestoredClassLoader:Ljava/lang/ClassLoader;
- .line 161
- const v0, -0x800001
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- .line 162
- const v0, 0x7f7fffff # Float.MAX_VALUE
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- .line 171
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mOffscreenPageLimit:I
- .line 189
- iput v1, p0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- .line 216
- iput-boolean v3, p0, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- .line 217
- iput-boolean v2, p0, Landroid/support/v4/view/ViewPager;->mNeedCalculatePageOffsets:Z
- .line 251
- new-instance v0, Landroid/support/v4/view/ViewPager$3;
- invoke-direct {v0, p0}, Landroid/support/v4/view/ViewPager$3;-><init>(Landroid/support/v4/view/ViewPager;)V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mEndScrollRunnable:Ljava/lang/Runnable;
- .line 258
- iput v2, p0, Landroid/support/v4/view/ViewPager;->mScrollState:I
- .line 355
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->initViewPager()V
- .line 356
- return-void
- .end method
- .method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
- .locals 5
- .param p1, "context" # Landroid/content/Context;
- .param p2, "attrs" # Landroid/util/AttributeSet;
- .prologue
- const/4 v4, 0x0
- const/4 v3, 0x1
- const/4 v2, 0x0
- const/4 v1, -0x1
- .line 359
- invoke-direct {p0, p1, p2}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
- .line 137
- new-instance v0, Ljava/util/ArrayList;
- invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- .line 138
- new-instance v0, Landroid/support/v4/view/ViewPager$ItemInfo;
- invoke-direct {v0}, Landroid/support/v4/view/ViewPager$ItemInfo;-><init>()V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mTempItem:Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 140
- new-instance v0, Landroid/graphics/Rect;
- invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mTempRect:Landroid/graphics/Rect;
- .line 144
- iput v1, p0, Landroid/support/v4/view/ViewPager;->mRestoredCurItem:I
- .line 145
- iput-object v4, p0, Landroid/support/v4/view/ViewPager;->mRestoredAdapterState:Landroid/os/Parcelable;
- .line 146
- iput-object v4, p0, Landroid/support/v4/view/ViewPager;->mRestoredClassLoader:Ljava/lang/ClassLoader;
- .line 161
- const v0, -0x800001
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- .line 162
- const v0, 0x7f7fffff # Float.MAX_VALUE
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- .line 171
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mOffscreenPageLimit:I
- .line 189
- iput v1, p0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- .line 216
- iput-boolean v3, p0, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- .line 217
- iput-boolean v2, p0, Landroid/support/v4/view/ViewPager;->mNeedCalculatePageOffsets:Z
- .line 251
- new-instance v0, Landroid/support/v4/view/ViewPager$3;
- invoke-direct {v0, p0}, Landroid/support/v4/view/ViewPager$3;-><init>(Landroid/support/v4/view/ViewPager;)V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mEndScrollRunnable:Ljava/lang/Runnable;
- .line 258
- iput v2, p0, Landroid/support/v4/view/ViewPager;->mScrollState:I
- .line 360
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->initViewPager()V
- .line 361
- return-void
- .end method
- .method static synthetic access$000(Landroid/support/v4/view/ViewPager;I)V
- .locals 0
- .param p0, "x0" # Landroid/support/v4/view/ViewPager;
- .param p1, "x1" # I
- .prologue
- .line 91
- invoke-direct {p0, p1}, Landroid/support/v4/view/ViewPager;->setScrollState(I)V
- return-void
- .end method
- .method static synthetic access$200(Landroid/support/v4/view/ViewPager;)Landroid/support/v4/view/PagerAdapter;
- .locals 1
- .param p0, "x0" # Landroid/support/v4/view/ViewPager;
- .prologue
- .line 91
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- return-object v0
- .end method
- .method static synthetic access$300(Landroid/support/v4/view/ViewPager;)I
- .locals 1
- .param p0, "x0" # Landroid/support/v4/view/ViewPager;
- .prologue
- .line 91
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- return v0
- .end method
- .method static synthetic access$400()[I
- .locals 1
- .prologue
- .line 91
- sget-object v0, Landroid/support/v4/view/ViewPager;->LAYOUT_ATTRS:[I
- return-object v0
- .end method
- .method private calculatePageOffsets(Landroid/support/v4/view/ViewPager$ItemInfo;ILandroid/support/v4/view/ViewPager$ItemInfo;)V
- .locals 14
- .param p1, "curItem" # Landroid/support/v4/view/ViewPager$ItemInfo;
- .param p2, "curIndex" # I
- .param p3, "oldCurInfo" # Landroid/support/v4/view/ViewPager$ItemInfo;
- .prologue
- .line 1231
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v12}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v1
- .line 1232
- .local v1, "N":I
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v11
- .line 1233
- .local v11, "width":I
- if-lez v11, :cond_0
- iget v12, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- int-to-float v12, v12
- int-to-float v13, v11
- div-float v6, v12, v13
- .line 1235
- .local v6, "marginOffset":F
- :goto_0
- if-eqz p3, :cond_6
- .line 1236
- move-object/from16 v0, p3
- iget v8, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 1238
- .local v8, "oldCurPosition":I
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-ge v8, v12, :cond_3
- .line 1239
- const/4 v5, 0x0
- .line 1240
- .local v5, "itemIndex":I
- const/4 v3, 0x0
- .line 1241
- .local v3, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v0, p3
- iget v12, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- move-object/from16 v0, p3
- iget v13, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v12, v13
- add-float v7, v12, v6
- .line 1242
- .local v7, "offset":F
- add-int/lit8 v9, v8, 0x1
- .line 1243
- .local v9, "pos":I
- :goto_1
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-gt v9, v12, :cond_6
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12}, Ljava/util/ArrayList;->size()I
- move-result v12
- if-ge v5, v12, :cond_6
- .line 1244
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 1245
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_2
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-le v9, v12, :cond_1
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12}, Ljava/util/ArrayList;->size()I
- move-result v12
- add-int/lit8 v12, v12, -0x1
- if-ge v5, v12, :cond_1
- .line 1246
- add-int/lit8 v5, v5, 0x1
- .line 1247
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- goto :goto_2
- .line 1233
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v5 # "itemIndex":I
- .end local v6 # "marginOffset":F
- .end local v7 # "offset":F
- .end local v8 # "oldCurPosition":I
- .end local v9 # "pos":I
- :cond_0
- const/4 v6, 0x0
- goto :goto_0
- .line 1249
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v5 # "itemIndex":I
- .restart local v6 # "marginOffset":F
- .restart local v7 # "offset":F
- .restart local v8 # "oldCurPosition":I
- .restart local v9 # "pos":I
- :cond_1
- :goto_3
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-ge v9, v12, :cond_2
- .line 1252
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v12, v9}, Landroid/support/v4/view/PagerAdapter;->getPageWidth(I)F
- move-result v12
- add-float/2addr v12, v6
- add-float/2addr v7, v12
- .line 1253
- add-int/lit8 v9, v9, 0x1
- goto :goto_3
- .line 1255
- :cond_2
- iput v7, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 1256
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v12, v6
- add-float/2addr v7, v12
- .line 1243
- add-int/lit8 v9, v9, 0x1
- goto :goto_1
- .line 1258
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v5 # "itemIndex":I
- .end local v7 # "offset":F
- .end local v9 # "pos":I
- :cond_3
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-le v8, v12, :cond_6
- .line 1259
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12}, Ljava/util/ArrayList;->size()I
- move-result v12
- add-int/lit8 v5, v12, -0x1
- .line 1260
- .restart local v5 # "itemIndex":I
- const/4 v3, 0x0
- .line 1261
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v0, p3
- iget v7, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 1262
- .restart local v7 # "offset":F
- add-int/lit8 v9, v8, -0x1
- .line 1263
- .restart local v9 # "pos":I
- :goto_4
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-lt v9, v12, :cond_6
- if-ltz v5, :cond_6
- .line 1264
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 1265
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_5
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-ge v9, v12, :cond_4
- if-lez v5, :cond_4
- .line 1266
- add-int/lit8 v5, v5, -0x1
- .line 1267
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- goto :goto_5
- .line 1269
- :cond_4
- :goto_6
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-le v9, v12, :cond_5
- .line 1272
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v12, v9}, Landroid/support/v4/view/PagerAdapter;->getPageWidth(I)F
- move-result v12
- add-float/2addr v12, v6
- sub-float/2addr v7, v12
- .line 1273
- add-int/lit8 v9, v9, -0x1
- goto :goto_6
- .line 1275
- :cond_5
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v12, v6
- sub-float/2addr v7, v12
- .line 1276
- iput v7, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 1263
- add-int/lit8 v9, v9, -0x1
- goto :goto_4
- .line 1282
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v5 # "itemIndex":I
- .end local v7 # "offset":F
- .end local v8 # "oldCurPosition":I
- .end local v9 # "pos":I
- :cond_6
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12}, Ljava/util/ArrayList;->size()I
- move-result v4
- .line 1283
- .local v4, "itemCount":I
- iget v7, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 1284
- .restart local v7 # "offset":F
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- add-int/lit8 v9, v12, -0x1
- .line 1285
- .restart local v9 # "pos":I
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-nez v12, :cond_7
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- :goto_7
- iput v12, p0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- .line 1286
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- add-int/lit8 v13, v1, -0x1
- if-ne v12, v13, :cond_8
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- iget v13, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v12, v13
- const/high16 v13, 0x3f800000 # 1.0f
- sub-float/2addr v12, v13
- :goto_8
- iput v12, p0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- .line 1289
- add-int/lit8 v2, p2, -0x1
- .local v2, "i":I
- :goto_9
- if-ltz v2, :cond_b
- .line 1290
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 1291
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_a
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-le v9, v12, :cond_9
- .line 1292
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- add-int/lit8 v10, v9, -0x1
- .end local v9 # "pos":I
- .local v10, "pos":I
- invoke-virtual {v12, v9}, Landroid/support/v4/view/PagerAdapter;->getPageWidth(I)F
- move-result v12
- add-float/2addr v12, v6
- sub-float/2addr v7, v12
- move v9, v10
- .end local v10 # "pos":I
- .restart local v9 # "pos":I
- goto :goto_a
- .line 1285
- .end local v2 # "i":I
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_7
- const v12, -0x800001
- goto :goto_7
- .line 1286
- :cond_8
- const v12, 0x7f7fffff # Float.MAX_VALUE
- goto :goto_8
- .line 1294
- .restart local v2 # "i":I
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_9
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v12, v6
- sub-float/2addr v7, v12
- .line 1295
- iput v7, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 1296
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-nez v12, :cond_a
- iput v7, p0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- .line 1289
- :cond_a
- add-int/lit8 v2, v2, -0x1
- add-int/lit8 v9, v9, -0x1
- goto :goto_9
- .line 1298
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_b
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- iget v13, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v12, v13
- add-float v7, v12, v6
- .line 1299
- iget v12, p1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- add-int/lit8 v9, v12, 0x1
- .line 1301
- add-int/lit8 v2, p2, 0x1
- :goto_b
- if-ge v2, v4, :cond_e
- .line 1302
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 1303
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_c
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-ge v9, v12, :cond_c
- .line 1304
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- add-int/lit8 v10, v9, 0x1
- .end local v9 # "pos":I
- .restart local v10 # "pos":I
- invoke-virtual {v12, v9}, Landroid/support/v4/view/PagerAdapter;->getPageWidth(I)F
- move-result v12
- add-float/2addr v12, v6
- add-float/2addr v7, v12
- move v9, v10
- .end local v10 # "pos":I
- .restart local v9 # "pos":I
- goto :goto_c
- .line 1306
- :cond_c
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- add-int/lit8 v13, v1, -0x1
- if-ne v12, v13, :cond_d
- .line 1307
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v12, v7
- const/high16 v13, 0x3f800000 # 1.0f
- sub-float/2addr v12, v13
- iput v12, p0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- .line 1309
- :cond_d
- iput v7, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 1310
- iget v12, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v12, v6
- add-float/2addr v7, v12
- .line 1301
- add-int/lit8 v2, v2, 0x1
- add-int/lit8 v9, v9, 0x1
- goto :goto_b
- .line 1313
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_e
- const/4 v12, 0x0
- iput-boolean v12, p0, Landroid/support/v4/view/ViewPager;->mNeedCalculatePageOffsets:Z
- .line 1314
- return-void
- .end method
- .method private completeScroll(Z)V
- .locals 11
- .param p1, "postEvents" # Z
- .prologue
- const/4 v5, 0x1
- const/4 v8, 0x0
- .line 1889
- iget v9, p0, Landroid/support/v4/view/ViewPager;->mScrollState:I
- const/4 v10, 0x2
- if-ne v9, v10, :cond_3
- move v2, v5
- .line 1890
- .local v2, "needPopulate":Z
- :goto_0
- if-eqz v2, :cond_1
- .line 1892
- invoke-direct {p0, v8}, Landroid/support/v4/view/ViewPager;->setScrollingCacheEnabled(Z)V
- .line 1893
- iget-object v9, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v9}, Landroid/widget/Scroller;->isFinished()Z
- move-result v9
- if-nez v9, :cond_4
- .line 1894
- .local v5, "wasScrolling":Z
- :goto_1
- if-eqz v5, :cond_1
- .line 1895
- iget-object v9, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v9}, Landroid/widget/Scroller;->abortAnimation()V
- .line 1896
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v3
- .line 1897
- .local v3, "oldX":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollY()I
- move-result v4
- .line 1898
- .local v4, "oldY":I
- iget-object v9, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v9}, Landroid/widget/Scroller;->getCurrX()I
- move-result v6
- .line 1899
- .local v6, "x":I
- iget-object v9, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v9}, Landroid/widget/Scroller;->getCurrY()I
- move-result v7
- .line 1900
- .local v7, "y":I
- if-ne v3, v6, :cond_0
- if-eq v4, v7, :cond_1
- .line 1901
- :cond_0
- invoke-virtual {p0, v6, v7}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- .line 1902
- if-eq v6, v3, :cond_1
- .line 1903
- invoke-direct {p0, v6}, Landroid/support/v4/view/ViewPager;->pageScrolled(I)Z
- .line 1908
- .end local v3 # "oldX":I
- .end local v4 # "oldY":I
- .end local v5 # "wasScrolling":Z
- .end local v6 # "x":I
- .end local v7 # "y":I
- :cond_1
- iput-boolean v8, p0, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- .line 1909
- const/4 v0, 0x0
- .local v0, "i":I
- :goto_2
- iget-object v9, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v9}, Ljava/util/ArrayList;->size()I
- move-result v9
- if-ge v0, v9, :cond_5
- .line 1910
- iget-object v9, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v9, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 1911
- .local v1, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget-boolean v9, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->scrolling:Z
- if-eqz v9, :cond_2
- .line 1912
- const/4 v2, 0x1
- .line 1913
- iput-boolean v8, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->scrolling:Z
- .line 1909
- :cond_2
- add-int/lit8 v0, v0, 0x1
- goto :goto_2
- .end local v0 # "i":I
- .end local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v2 # "needPopulate":Z
- :cond_3
- move v2, v8
- .line 1889
- goto :goto_0
- .restart local v2 # "needPopulate":Z
- :cond_4
- move v5, v8
- .line 1893
- goto :goto_1
- .line 1916
- .restart local v0 # "i":I
- :cond_5
- if-eqz v2, :cond_6
- .line 1917
- if-eqz p1, :cond_7
- .line 1918
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mEndScrollRunnable:Ljava/lang/Runnable;
- invoke-static {p0, v8}, Landroid/support/v4/view/ViewCompat;->postOnAnimation(Landroid/view/View;Ljava/lang/Runnable;)V
- .line 1923
- :cond_6
- :goto_3
- return-void
- .line 1920
- :cond_7
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mEndScrollRunnable:Ljava/lang/Runnable;
- invoke-interface {v8}, Ljava/lang/Runnable;->run()V
- goto :goto_3
- .end method
- .method private determineTargetPage(IFII)I
- .locals 6
- .param p1, "currentPage" # I
- .param p2, "pageOffset" # F
- .param p3, "velocity" # I
- .param p4, "deltaX" # I
- .prologue
- .line 2314
- invoke-static {p4}, Ljava/lang/Math;->abs(I)I
- move-result v4
- iget v5, p0, Landroid/support/v4/view/ViewPager;->mFlingDistance:I
- if-le v4, v5, :cond_2
- invoke-static {p3}, Ljava/lang/Math;->abs(I)I
- move-result v4
- iget v5, p0, Landroid/support/v4/view/ViewPager;->mMinimumVelocity:I
- if-le v4, v5, :cond_2
- .line 2315
- if-lez p3, :cond_1
- move v2, p1
- .line 2321
- .local v2, "targetPage":I
- :goto_0
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v4}, Ljava/util/ArrayList;->size()I
- move-result v4
- if-lez v4, :cond_0
- .line 2322
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- const/4 v5, 0x0
- invoke-virtual {v4, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v0
- check-cast v0, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2323
- .local v0, "firstItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v5}, Ljava/util/ArrayList;->size()I
- move-result v5
- add-int/lit8 v5, v5, -0x1
- invoke-virtual {v4, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2326
- .local v1, "lastItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget v4, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- iget v5, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- invoke-static {v2, v5}, Ljava/lang/Math;->min(II)I
- move-result v5
- invoke-static {v4, v5}, Ljava/lang/Math;->max(II)I
- move-result v2
- .line 2329
- .end local v0 # "firstItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v1 # "lastItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_0
- return v2
- .line 2315
- .end local v2 # "targetPage":I
- :cond_1
- add-int/lit8 v2, p1, 0x1
- goto :goto_0
- .line 2317
- :cond_2
- iget v4, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-lt p1, v4, :cond_3
- const v3, 0x3ecccccd # 0.4f
- .line 2318
- .local v3, "truncator":F
- :goto_1
- int-to-float v4, p1
- add-float/2addr v4, p2
- add-float/2addr v4, v3
- float-to-int v2, v4
- .restart local v2 # "targetPage":I
- goto :goto_0
- .line 2317
- .end local v2 # "targetPage":I
- .end local v3 # "truncator":F
- :cond_3
- const v3, 0x3f19999a # 0.6f
- goto :goto_1
- .end method
- .method private dispatchOnPageScrolled(IFI)V
- .locals 4
- .param p1, "position" # I
- .param p2, "offset" # F
- .param p3, "offsetPixels" # I
- .prologue
- .line 1838
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v3, :cond_0
- .line 1839
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- invoke-interface {v3, p1, p2, p3}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageScrolled(IFI)V
- .line 1841
- :cond_0
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- if-eqz v3, :cond_2
- .line 1842
- const/4 v0, 0x0
- .local v0, "i":I
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v3}, Ljava/util/List;->size()I
- move-result v2
- .local v2, "z":I
- :goto_0
- if-ge v0, v2, :cond_2
- .line 1843
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v3, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .line 1844
- .local v1, "listener":Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v1, :cond_1
- .line 1845
- invoke-interface {v1, p1, p2, p3}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageScrolled(IFI)V
- .line 1842
- :cond_1
- add-int/lit8 v0, v0, 0x1
- goto :goto_0
- .line 1849
- .end local v0 # "i":I
- .end local v1 # "listener":Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .end local v2 # "z":I
- :cond_2
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v3, :cond_3
- .line 1850
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- invoke-interface {v3, p1, p2, p3}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageScrolled(IFI)V
- .line 1852
- :cond_3
- return-void
- .end method
- .method private dispatchOnPageSelected(I)V
- .locals 4
- .param p1, "position" # I
- .prologue
- .line 1855
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v3, :cond_0
- .line 1856
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- invoke-interface {v3, p1}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageSelected(I)V
- .line 1858
- :cond_0
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- if-eqz v3, :cond_2
- .line 1859
- const/4 v0, 0x0
- .local v0, "i":I
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v3}, Ljava/util/List;->size()I
- move-result v2
- .local v2, "z":I
- :goto_0
- if-ge v0, v2, :cond_2
- .line 1860
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v3, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .line 1861
- .local v1, "listener":Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v1, :cond_1
- .line 1862
- invoke-interface {v1, p1}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageSelected(I)V
- .line 1859
- :cond_1
- add-int/lit8 v0, v0, 0x1
- goto :goto_0
- .line 1866
- .end local v0 # "i":I
- .end local v1 # "listener":Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .end local v2 # "z":I
- :cond_2
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v3, :cond_3
- .line 1867
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- invoke-interface {v3, p1}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageSelected(I)V
- .line 1869
- :cond_3
- return-void
- .end method
- .method private dispatchOnScrollStateChanged(I)V
- .locals 4
- .param p1, "state" # I
- .prologue
- .line 1872
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v3, :cond_0
- .line 1873
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- invoke-interface {v3, p1}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageScrollStateChanged(I)V
- .line 1875
- :cond_0
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- if-eqz v3, :cond_2
- .line 1876
- const/4 v0, 0x0
- .local v0, "i":I
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v3}, Ljava/util/List;->size()I
- move-result v2
- .local v2, "z":I
- :goto_0
- if-ge v0, v2, :cond_2
- .line 1877
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v3, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .line 1878
- .local v1, "listener":Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v1, :cond_1
- .line 1879
- invoke-interface {v1, p1}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageScrollStateChanged(I)V
- .line 1876
- :cond_1
- add-int/lit8 v0, v0, 0x1
- goto :goto_0
- .line 1883
- .end local v0 # "i":I
- .end local v1 # "listener":Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .end local v2 # "z":I
- :cond_2
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- if-eqz v3, :cond_3
- .line 1884
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- invoke-interface {v3, p1}, Landroid/support/v4/view/ViewPager$OnPageChangeListener;->onPageScrollStateChanged(I)V
- .line 1886
- :cond_3
- return-void
- .end method
- .method private enableLayers(Z)V
- .locals 5
- .param p1, "enable" # Z
- .prologue
- .line 1930
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v0
- .line 1931
- .local v0, "childCount":I
- const/4 v1, 0x0
- .local v1, "i":I
- :goto_0
- if-ge v1, v0, :cond_1
- .line 1932
- if-eqz p1, :cond_0
- const/4 v2, 0x2
- .line 1934
- .local v2, "layerType":I
- :goto_1
- invoke-virtual {p0, v1}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v3
- const/4 v4, 0x0
- invoke-static {v3, v2, v4}, Landroid/support/v4/view/ViewCompat;->setLayerType(Landroid/view/View;ILandroid/graphics/Paint;)V
- .line 1931
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- .line 1932
- .end local v2 # "layerType":I
- :cond_0
- const/4 v2, 0x0
- goto :goto_1
- .line 1936
- :cond_1
- return-void
- .end method
- .method private endDrag()V
- .locals 1
- .prologue
- const/4 v0, 0x0
- .line 2568
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- .line 2569
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsUnableToDrag:Z
- .line 2571
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- if-eqz v0, :cond_0
- .line 2572
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {v0}, Landroid/view/VelocityTracker;->recycle()V
- .line 2573
- const/4 v0, 0x0
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- .line 2575
- :cond_0
- return-void
- .end method
- .method private getChildRectInPagerCoordinates(Landroid/graphics/Rect;Landroid/view/View;)Landroid/graphics/Rect;
- .locals 4
- .param p1, "outRect" # Landroid/graphics/Rect;
- .param p2, "child" # Landroid/view/View;
- .prologue
- const/4 v2, 0x0
- .line 2749
- if-nez p1, :cond_0
- .line 2750
- new-instance p1, Landroid/graphics/Rect;
- .end local p1 # "outRect":Landroid/graphics/Rect;
- invoke-direct {p1}, Landroid/graphics/Rect;-><init>()V
- .line 2752
- .restart local p1 # "outRect":Landroid/graphics/Rect;
- :cond_0
- if-nez p2, :cond_2
- .line 2753
- invoke-virtual {p1, v2, v2, v2, v2}, Landroid/graphics/Rect;->set(IIII)V
- .line 2771
- :cond_1
- return-object p1
- .line 2756
- :cond_2
- invoke-virtual {p2}, Landroid/view/View;->getLeft()I
- move-result v2
- iput v2, p1, Landroid/graphics/Rect;->left:I
- .line 2757
- invoke-virtual {p2}, Landroid/view/View;->getRight()I
- move-result v2
- iput v2, p1, Landroid/graphics/Rect;->right:I
- .line 2758
- invoke-virtual {p2}, Landroid/view/View;->getTop()I
- move-result v2
- iput v2, p1, Landroid/graphics/Rect;->top:I
- .line 2759
- invoke-virtual {p2}, Landroid/view/View;->getBottom()I
- move-result v2
- iput v2, p1, Landroid/graphics/Rect;->bottom:I
- .line 2761
- invoke-virtual {p2}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
- move-result-object v1
- .line 2762
- .local v1, "parent":Landroid/view/ViewParent;
- :goto_0
- instance-of v2, v1, Landroid/view/ViewGroup;
- if-eqz v2, :cond_1
- if-eq v1, p0, :cond_1
- move-object v0, v1
- .line 2763
- check-cast v0, Landroid/view/ViewGroup;
- .line 2764
- .local v0, "group":Landroid/view/ViewGroup;
- iget v2, p1, Landroid/graphics/Rect;->left:I
- invoke-virtual {v0}, Landroid/view/ViewGroup;->getLeft()I
- move-result v3
- add-int/2addr v2, v3
- iput v2, p1, Landroid/graphics/Rect;->left:I
- .line 2765
- iget v2, p1, Landroid/graphics/Rect;->right:I
- invoke-virtual {v0}, Landroid/view/ViewGroup;->getRight()I
- move-result v3
- add-int/2addr v2, v3
- iput v2, p1, Landroid/graphics/Rect;->right:I
- .line 2766
- iget v2, p1, Landroid/graphics/Rect;->top:I
- invoke-virtual {v0}, Landroid/view/ViewGroup;->getTop()I
- move-result v3
- add-int/2addr v2, v3
- iput v2, p1, Landroid/graphics/Rect;->top:I
- .line 2767
- iget v2, p1, Landroid/graphics/Rect;->bottom:I
- invoke-virtual {v0}, Landroid/view/ViewGroup;->getBottom()I
- move-result v3
- add-int/2addr v2, v3
- iput v2, p1, Landroid/graphics/Rect;->bottom:I
- .line 2769
- invoke-virtual {v0}, Landroid/view/ViewGroup;->getParent()Landroid/view/ViewParent;
- move-result-object v1
- .line 2770
- goto :goto_0
- .end method
- .method private getClientWidth()I
- .locals 2
- .prologue
- .line 539
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getMeasuredWidth()I
- move-result v0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingLeft()I
- move-result v1
- sub-int/2addr v0, v1
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingRight()I
- move-result v1
- sub-int/2addr v0, v1
- return v0
- .end method
- .method private infoForCurrentScrollPosition()Landroid/support/v4/view/ViewPager$ItemInfo;
- .locals 15
- .prologue
- const/4 v8, 0x0
- .line 2271
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v12
- .line 2272
- .local v12, "width":I
- if-lez v12, :cond_5
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v13
- int-to-float v13, v13
- int-to-float v14, v12
- div-float v11, v13, v14
- .line 2273
- .local v11, "scrollOffset":F
- :goto_0
- if-lez v12, :cond_0
- iget v13, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- int-to-float v13, v13
- int-to-float v14, v12
- div-float v8, v13, v14
- .line 2274
- .local v8, "marginOffset":F
- :cond_0
- const/4 v5, -0x1
- .line 2275
- .local v5, "lastPos":I
- const/4 v4, 0x0
- .line 2276
- .local v4, "lastOffset":F
- const/4 v6, 0x0
- .line 2277
- .local v6, "lastWidth":F
- const/4 v0, 0x1
- .line 2279
- .local v0, "first":Z
- const/4 v3, 0x0
- .line 2280
- .local v3, "lastItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- const/4 v1, 0x0
- .local v1, "i":I
- :goto_1
- iget-object v13, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v13}, Ljava/util/ArrayList;->size()I
- move-result v13
- if-ge v1, v13, :cond_4
- .line 2281
- iget-object v13, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v13, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v2
- check-cast v2, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2283
- .local v2, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- if-nez v0, :cond_1
- iget v13, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- add-int/lit8 v14, v5, 0x1
- if-eq v13, v14, :cond_1
- .line 2285
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mTempItem:Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2286
- add-float v13, v4, v6
- add-float/2addr v13, v8
- iput v13, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 2287
- add-int/lit8 v13, v5, 0x1
- iput v13, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 2288
- iget-object v13, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- iget v14, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- invoke-virtual {v13, v14}, Landroid/support/v4/view/PagerAdapter;->getPageWidth(I)F
- move-result v13
- iput v13, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- .line 2289
- add-int/lit8 v1, v1, -0x1
- .line 2291
- :cond_1
- iget v9, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 2293
- .local v9, "offset":F
- move v7, v9
- .line 2294
- .local v7, "leftBound":F
- iget v13, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v13, v9
- add-float v10, v13, v8
- .line 2295
- .local v10, "rightBound":F
- if-nez v0, :cond_2
- cmpl-float v13, v11, v7
- if-ltz v13, :cond_4
- .line 2296
- :cond_2
- cmpg-float v13, v11, v10
- if-ltz v13, :cond_3
- iget-object v13, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v13}, Ljava/util/ArrayList;->size()I
- move-result v13
- add-int/lit8 v13, v13, -0x1
- if-ne v1, v13, :cond_6
- :cond_3
- move-object v3, v2
- .line 2309
- .end local v2 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v3 # "lastItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v7 # "leftBound":F
- .end local v9 # "offset":F
- .end local v10 # "rightBound":F
- :cond_4
- return-object v3
- .end local v0 # "first":Z
- .end local v1 # "i":I
- .end local v4 # "lastOffset":F
- .end local v5 # "lastPos":I
- .end local v6 # "lastWidth":F
- .end local v8 # "marginOffset":F
- .end local v11 # "scrollOffset":F
- :cond_5
- move v11, v8
- .line 2272
- goto :goto_0
- .line 2302
- .restart local v0 # "first":Z
- .restart local v1 # "i":I
- .restart local v2 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v3 # "lastItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v4 # "lastOffset":F
- .restart local v5 # "lastPos":I
- .restart local v6 # "lastWidth":F
- .restart local v7 # "leftBound":F
- .restart local v8 # "marginOffset":F
- .restart local v9 # "offset":F
- .restart local v10 # "rightBound":F
- .restart local v11 # "scrollOffset":F
- :cond_6
- const/4 v0, 0x0
- .line 2303
- iget v5, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 2304
- move v4, v9
- .line 2305
- iget v6, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- .line 2306
- move-object v3, v2
- .line 2280
- add-int/lit8 v1, v1, 0x1
- goto :goto_1
- .end method
- .method private isGutterDrag(FF)Z
- .locals 3
- .param p1, "x" # F
- .param p2, "dx" # F
- .prologue
- const/4 v2, 0x0
- .line 1926
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mGutterSize:I
- int-to-float v0, v0
- cmpg-float v0, p1, v0
- if-gez v0, :cond_0
- cmpl-float v0, p2, v2
- if-gtz v0, :cond_1
- :cond_0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getWidth()I
- move-result v0
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mGutterSize:I
- sub-int/2addr v0, v1
- int-to-float v0, v0
- cmpl-float v0, p1, v0
- if-lez v0, :cond_2
- cmpg-float v0, p2, v2
- if-gez v0, :cond_2
- :cond_1
- const/4 v0, 0x1
- :goto_0
- return v0
- :cond_2
- const/4 v0, 0x0
- goto :goto_0
- .end method
- .method private onSecondaryPointerUp(Landroid/view/MotionEvent;)V
- .locals 4
- .param p1, "ev" # Landroid/view/MotionEvent;
- .prologue
- .line 2553
- invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionIndex(Landroid/view/MotionEvent;)I
- move-result v2
- .line 2554
- .local v2, "pointerIndex":I
- invoke-static {p1, v2}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v1
- .line 2555
- .local v1, "pointerId":I
- iget v3, p0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- if-ne v1, v3, :cond_0
- .line 2558
- if-nez v2, :cond_1
- const/4 v0, 0x1
- .line 2559
- .local v0, "newPointerIndex":I
- :goto_0
- invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v3
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2560
- invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v3
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- .line 2561
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- if-eqz v3, :cond_0
- .line 2562
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {v3}, Landroid/view/VelocityTracker;->clear()V
- .line 2565
- .end local v0 # "newPointerIndex":I
- :cond_0
- return-void
- .line 2558
- :cond_1
- const/4 v0, 0x0
- goto :goto_0
- .end method
- .method private pageScrolled(I)Z
- .locals 10
- .param p1, "xpos" # I
- .prologue
- const/4 v7, 0x0
- .line 1738
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v8}, Ljava/util/ArrayList;->size()I
- move-result v8
- if-nez v8, :cond_0
- .line 1739
- iput-boolean v7, p0, Landroid/support/v4/view/ViewPager;->mCalledSuper:Z
- .line 1740
- const/4 v8, 0x0
- invoke-virtual {p0, v7, v8, v7}, Landroid/support/v4/view/ViewPager;->onPageScrolled(IFI)V
- .line 1741
- iget-boolean v8, p0, Landroid/support/v4/view/ViewPager;->mCalledSuper:Z
- if-nez v8, :cond_2
- .line 1742
- new-instance v7, Ljava/lang/IllegalStateException;
- const-string v8, "onPageScrolled did not call superclass implementation"
- invoke-direct {v7, v8}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v7
- .line 1747
- :cond_0
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->infoForCurrentScrollPosition()Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v1
- .line 1748
- .local v1, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v5
- .line 1749
- .local v5, "width":I
- iget v8, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- add-int v6, v5, v8
- .line 1750
- .local v6, "widthWithMargin":I
- iget v8, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- int-to-float v8, v8
- int-to-float v9, v5
- div-float v2, v8, v9
- .line 1751
- .local v2, "marginOffset":F
- iget v0, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 1752
- .local v0, "currentPage":I
- int-to-float v8, p1
- int-to-float v9, v5
- div-float/2addr v8, v9
- iget v9, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- sub-float/2addr v8, v9
- iget v9, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v9, v2
- div-float v4, v8, v9
- .line 1754
- .local v4, "pageOffset":F
- int-to-float v8, v6
- mul-float/2addr v8, v4
- float-to-int v3, v8
- .line 1756
- .local v3, "offsetPixels":I
- iput-boolean v7, p0, Landroid/support/v4/view/ViewPager;->mCalledSuper:Z
- .line 1757
- invoke-virtual {p0, v0, v4, v3}, Landroid/support/v4/view/ViewPager;->onPageScrolled(IFI)V
- .line 1758
- iget-boolean v7, p0, Landroid/support/v4/view/ViewPager;->mCalledSuper:Z
- if-nez v7, :cond_1
- .line 1759
- new-instance v7, Ljava/lang/IllegalStateException;
- const-string v8, "onPageScrolled did not call superclass implementation"
- invoke-direct {v7, v8}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v7
- .line 1762
- :cond_1
- const/4 v7, 0x1
- .end local v0 # "currentPage":I
- .end local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v2 # "marginOffset":F
- .end local v3 # "offsetPixels":I
- .end local v4 # "pageOffset":F
- .end local v5 # "width":I
- .end local v6 # "widthWithMargin":I
- :cond_2
- return v7
- .end method
- .method private performDrag(F)Z
- .locals 17
- .param p1, "x" # F
- .prologue
- .line 2220
- const/4 v7, 0x0
- .line 2222
- .local v7, "needsInvalidate":Z
- move-object/from16 v0, p0
- iget v14, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- sub-float v2, v14, p1
- .line 2223
- .local v2, "deltaX":F
- move/from16 v0, p1
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2225
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v14
- int-to-float v8, v14
- .line 2226
- .local v8, "oldScrollX":F
- add-float v12, v8, v2
- .line 2227
- .local v12, "scrollX":F
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v13
- .line 2229
- .local v13, "width":I
- int-to-float v14, v13
- move-object/from16 v0, p0
- iget v15, v0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- mul-float v6, v14, v15
- .line 2230
- .local v6, "leftBound":F
- int-to-float v14, v13
- move-object/from16 v0, p0
- iget v15, v0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- mul-float v11, v14, v15
- .line 2231
- .local v11, "rightBound":F
- const/4 v5, 0x1
- .line 2232
- .local v5, "leftAbsolute":Z
- const/4 v10, 0x1
- .line 2234
- .local v10, "rightAbsolute":Z
- move-object/from16 v0, p0
- iget-object v14, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- const/4 v15, 0x0
- invoke-virtual {v14, v15}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2235
- .local v3, "firstItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v0, p0
- iget-object v14, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v0, p0
- iget-object v15, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v15}, Ljava/util/ArrayList;->size()I
- move-result v15
- add-int/lit8 v15, v15, -0x1
- invoke-virtual {v14, v15}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v4
- check-cast v4, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2236
- .local v4, "lastItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget v14, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-eqz v14, :cond_0
- .line 2237
- const/4 v5, 0x0
- .line 2238
- iget v14, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- int-to-float v15, v13
- mul-float v6, v14, v15
- .line 2240
- :cond_0
- iget v14, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move-object/from16 v0, p0
- iget-object v15, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v15}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v15
- add-int/lit8 v15, v15, -0x1
- if-eq v14, v15, :cond_1
- .line 2241
- const/4 v10, 0x0
- .line 2242
- iget v14, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- int-to-float v15, v13
- mul-float v11, v14, v15
- .line 2245
- :cond_1
- cmpg-float v14, v12, v6
- if-gez v14, :cond_4
- .line 2246
- if-eqz v5, :cond_2
- .line 2247
- sub-float v9, v6, v12
- .line 2248
- .local v9, "over":F
- move-object/from16 v0, p0
- iget-object v14, v0, Landroid/support/v4/view/ViewPager;->mLeftEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-static {v9}, Ljava/lang/Math;->abs(F)F
- move-result v15
- int-to-float v0, v13
- move/from16 v16, v0
- div-float v15, v15, v16
- invoke-virtual {v14, v15}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(F)Z
- move-result v7
- .line 2250
- .end local v9 # "over":F
- :cond_2
- move v12, v6
- .line 2259
- :cond_3
- :goto_0
- move-object/from16 v0, p0
- iget v14, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- float-to-int v15, v12
- int-to-float v15, v15
- sub-float v15, v12, v15
- add-float/2addr v14, v15
- move-object/from16 v0, p0
- iput v14, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2260
- float-to-int v14, v12
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollY()I
- move-result v15
- move-object/from16 v0, p0
- invoke-virtual {v0, v14, v15}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- .line 2261
- float-to-int v14, v12
- move-object/from16 v0, p0
- invoke-direct {v0, v14}, Landroid/support/v4/view/ViewPager;->pageScrolled(I)Z
- .line 2263
- return v7
- .line 2251
- :cond_4
- cmpl-float v14, v12, v11
- if-lez v14, :cond_3
- .line 2252
- if-eqz v10, :cond_5
- .line 2253
- sub-float v9, v12, v11
- .line 2254
- .restart local v9 # "over":F
- move-object/from16 v0, p0
- iget-object v14, v0, Landroid/support/v4/view/ViewPager;->mRightEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-static {v9}, Ljava/lang/Math;->abs(F)F
- move-result v15
- int-to-float v0, v13
- move/from16 v16, v0
- div-float v15, v15, v16
- invoke-virtual {v14, v15}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(F)Z
- move-result v7
- .line 2256
- .end local v9 # "over":F
- :cond_5
- move v12, v11
- goto :goto_0
- .end method
- .method private recomputeScrollPosition(IIII)V
- .locals 11
- .param p1, "width" # I
- .param p2, "oldWidth" # I
- .param p3, "margin" # I
- .param p4, "oldMargin" # I
- .prologue
- .line 1577
- if-lez p2, :cond_2
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v8}, Ljava/util/ArrayList;->isEmpty()Z
- move-result v8
- if-nez v8, :cond_2
- .line 1578
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v8}, Landroid/widget/Scroller;->isFinished()Z
- move-result v8
- if-nez v8, :cond_1
- .line 1579
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getCurrentItem()I
- move-result v9
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v10
- mul-int/2addr v9, v10
- invoke-virtual {v8, v9}, Landroid/widget/Scroller;->setFinalX(I)V
- .line 1600
- :cond_0
- :goto_0
- return-void
- .line 1581
- :cond_1
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingLeft()I
- move-result v8
- sub-int v8, p1, v8
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingRight()I
- move-result v9
- sub-int/2addr v8, v9
- add-int v6, v8, p3
- .line 1582
- .local v6, "widthWithMargin":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingLeft()I
- move-result v8
- sub-int v8, p2, v8
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingRight()I
- move-result v9
- sub-int/2addr v8, v9
- add-int v2, v8, p4
- .line 1584
- .local v2, "oldWidthWithMargin":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v7
- .line 1585
- .local v7, "xpos":I
- int-to-float v8, v7
- int-to-float v9, v2
- div-float v3, v8, v9
- .line 1586
- .local v3, "pageOffset":F
- int-to-float v8, v6
- mul-float/2addr v8, v3
- float-to-int v1, v8
- .line 1588
- .local v1, "newOffsetPixels":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollY()I
- move-result v8
- invoke-virtual {p0, v1, v8}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- goto :goto_0
- .line 1591
- .end local v1 # "newOffsetPixels":I
- .end local v2 # "oldWidthWithMargin":I
- .end local v3 # "pageOffset":F
- .end local v6 # "widthWithMargin":I
- .end local v7 # "xpos":I
- :cond_2
- iget v8, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- invoke-virtual {p0, v8}, Landroid/support/v4/view/ViewPager;->infoForPosition(I)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v0
- .line 1592
- .local v0, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- if-eqz v0, :cond_3
- iget v8, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- iget v9, p0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- invoke-static {v8, v9}, Ljava/lang/Math;->min(FF)F
- move-result v4
- .line 1593
- .local v4, "scrollOffset":F
- :goto_1
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingLeft()I
- move-result v8
- sub-int v8, p1, v8
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingRight()I
- move-result v9
- sub-int/2addr v8, v9
- int-to-float v8, v8
- mul-float/2addr v8, v4
- float-to-int v5, v8
- .line 1595
- .local v5, "scrollPos":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v8
- if-eq v5, v8, :cond_0
- .line 1596
- const/4 v8, 0x0
- invoke-direct {p0, v8}, Landroid/support/v4/view/ViewPager;->completeScroll(Z)V
- .line 1597
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollY()I
- move-result v8
- invoke-virtual {p0, v5, v8}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- goto :goto_0
- .line 1592
- .end local v4 # "scrollOffset":F
- .end local v5 # "scrollPos":I
- :cond_3
- const/4 v4, 0x0
- goto :goto_1
- .end method
- .method private removeNonDecorViews()V
- .locals 4
- .prologue
- .line 515
- const/4 v1, 0x0
- .local v1, "i":I
- :goto_0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v3
- if-ge v1, v3, :cond_1
- .line 516
- invoke-virtual {p0, v1}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v0
- .line 517
- .local v0, "child":Landroid/view/View;
- invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v2
- check-cast v2, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 518
- .local v2, "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- iget-boolean v3, v2, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- if-nez v3, :cond_0
- .line 519
- invoke-virtual {p0, v1}, Landroid/support/v4/view/ViewPager;->removeViewAt(I)V
- .line 520
- add-int/lit8 v1, v1, -0x1
- .line 515
- :cond_0
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- .line 523
- .end local v0 # "child":Landroid/view/View;
- .end local v2 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- :cond_1
- return-void
- .end method
- .method private requestParentDisallowInterceptTouchEvent(Z)V
- .locals 1
- .param p1, "disallowIntercept" # Z
- .prologue
- .line 2213
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getParent()Landroid/view/ViewParent;
- move-result-object v0
- .line 2214
- .local v0, "parent":Landroid/view/ViewParent;
- if-eqz v0, :cond_0
- .line 2215
- invoke-interface {v0, p1}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V
- .line 2217
- :cond_0
- return-void
- .end method
- .method private resetTouch()Z
- .locals 3
- .prologue
- .line 2206
- const/4 v1, -0x1
- iput v1, p0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- .line 2207
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->endDrag()V
- .line 2208
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mLeftEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result v1
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mRightEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v2}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result v2
- or-int v0, v1, v2
- .line 2209
- .local v0, "needsInvalidate":Z
- return v0
- .end method
- .method private scrollToItem(IZIZ)V
- .locals 8
- .param p1, "item" # I
- .param p2, "smoothScroll" # Z
- .param p3, "velocity" # I
- .param p4, "dispatchSelected" # Z
- .prologue
- const/4 v7, 0x0
- .line 615
- invoke-virtual {p0, p1}, Landroid/support/v4/view/ViewPager;->infoForPosition(I)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v0
- .line 616
- .local v0, "curInfo":Landroid/support/v4/view/ViewPager$ItemInfo;
- const/4 v1, 0x0
- .line 617
- .local v1, "destX":I
- if-eqz v0, :cond_0
- .line 618
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v2
- .line 619
- .local v2, "width":I
- int-to-float v3, v2
- iget v4, p0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- iget v5, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- iget v6, p0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- invoke-static {v5, v6}, Ljava/lang/Math;->min(FF)F
- move-result v5
- invoke-static {v4, v5}, Ljava/lang/Math;->max(FF)F
- move-result v4
- mul-float/2addr v3, v4
- float-to-int v1, v3
- .line 622
- .end local v2 # "width":I
- :cond_0
- if-eqz p2, :cond_2
- .line 623
- invoke-virtual {p0, v1, v7, p3}, Landroid/support/v4/view/ViewPager;->smoothScrollTo(III)V
- .line 624
- if-eqz p4, :cond_1
- .line 625
- invoke-direct {p0, p1}, Landroid/support/v4/view/ViewPager;->dispatchOnPageSelected(I)V
- .line 635
- :cond_1
- :goto_0
- return-void
- .line 628
- :cond_2
- if-eqz p4, :cond_3
- .line 629
- invoke-direct {p0, p1}, Landroid/support/v4/view/ViewPager;->dispatchOnPageSelected(I)V
- .line 631
- :cond_3
- invoke-direct {p0, v7}, Landroid/support/v4/view/ViewPager;->completeScroll(Z)V
- .line 632
- invoke-virtual {p0, v1, v7}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- .line 633
- invoke-direct {p0, v1}, Landroid/support/v4/view/ViewPager;->pageScrolled(I)Z
- goto :goto_0
- .end method
- .method private setScrollState(I)V
- .locals 1
- .param p1, "newState" # I
- .prologue
- .line 451
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mScrollState:I
- if-ne v0, p1, :cond_0
- .line 461
- :goto_0
- return-void
- .line 455
- :cond_0
- iput p1, p0, Landroid/support/v4/view/ViewPager;->mScrollState:I
- .line 456
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mPageTransformer:Landroid/support/v4/view/ViewPager$PageTransformer;
- if-eqz v0, :cond_1
- .line 458
- if-eqz p1, :cond_2
- const/4 v0, 0x1
- :goto_1
- invoke-direct {p0, v0}, Landroid/support/v4/view/ViewPager;->enableLayers(Z)V
- .line 460
- :cond_1
- invoke-direct {p0, p1}, Landroid/support/v4/view/ViewPager;->dispatchOnScrollStateChanged(I)V
- goto :goto_0
- .line 458
- :cond_2
- const/4 v0, 0x0
- goto :goto_1
- .end method
- .method private setScrollingCacheEnabled(Z)V
- .locals 1
- .param p1, "enabled" # Z
- .prologue
- .line 2578
- iget-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mScrollingCacheEnabled:Z
- if-eq v0, p1, :cond_0
- .line 2579
- iput-boolean p1, p0, Landroid/support/v4/view/ViewPager;->mScrollingCacheEnabled:Z
- .line 2590
- :cond_0
- return-void
- .end method
- .method private sortChildDrawingOrder()V
- .locals 5
- .prologue
- .line 1215
- iget v3, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrder:I
- if-eqz v3, :cond_2
- .line 1216
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrderedChildren:Ljava/util/ArrayList;
- if-nez v3, :cond_0
- .line 1217
- new-instance v3, Ljava/util/ArrayList;
- invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
- iput-object v3, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrderedChildren:Ljava/util/ArrayList;
- .line 1221
- :goto_0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v1
- .line 1222
- .local v1, "childCount":I
- const/4 v2, 0x0
- .local v2, "i":I
- :goto_1
- if-ge v2, v1, :cond_1
- .line 1223
- invoke-virtual {p0, v2}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v0
- .line 1224
- .local v0, "child":Landroid/view/View;
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrderedChildren:Ljava/util/ArrayList;
- invoke-virtual {v3, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
- .line 1222
- add-int/lit8 v2, v2, 0x1
- goto :goto_1
- .line 1219
- .end local v0 # "child":Landroid/view/View;
- .end local v1 # "childCount":I
- .end local v2 # "i":I
- :cond_0
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrderedChildren:Ljava/util/ArrayList;
- invoke-virtual {v3}, Ljava/util/ArrayList;->clear()V
- goto :goto_0
- .line 1226
- .restart local v1 # "childCount":I
- .restart local v2 # "i":I
- :cond_1
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrderedChildren:Ljava/util/ArrayList;
- sget-object v4, Landroid/support/v4/view/ViewPager;->sPositionComparator:Landroid/support/v4/view/ViewPager$ViewPositionComparator;
- invoke-static {v3, v4}, Ljava/util/Collections;->sort(Ljava/util/List;Ljava/util/Comparator;)V
- .line 1228
- .end local v1 # "childCount":I
- .end local v2 # "i":I
- :cond_2
- return-void
- .end method
- # virtual methods
- .method public addFocusables(Ljava/util/ArrayList;II)V
- .locals 7
- .param p2, "direction" # I
- .param p3, "focusableMode" # I
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "(",
- "Ljava/util/ArrayList",
- "<",
- "Landroid/view/View;",
- ">;II)V"
- }
- .end annotation
- .prologue
- .line 2795
- .local p1, "views":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/view/View;>;"
- invoke-virtual {p1}, Ljava/util/ArrayList;->size()I
- move-result v2
- .line 2797
- .local v2, "focusableCount":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getDescendantFocusability()I
- move-result v1
- .line 2799
- .local v1, "descendantFocusability":I
- const/high16 v5, 0x60000
- if-eq v1, v5, :cond_1
- .line 2800
- const/4 v3, 0x0
- .local v3, "i":I
- :goto_0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v5
- if-ge v3, v5, :cond_1
- .line 2801
- invoke-virtual {p0, v3}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v0
- .line 2802
- .local v0, "child":Landroid/view/View;
- invoke-virtual {v0}, Landroid/view/View;->getVisibility()I
- move-result v5
- if-nez v5, :cond_0
- .line 2803
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v4
- .line 2804
- .local v4, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- if-eqz v4, :cond_0
- iget v5, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- iget v6, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-ne v5, v6, :cond_0
- .line 2805
- invoke-virtual {v0, p1, p2, p3}, Landroid/view/View;->addFocusables(Ljava/util/ArrayList;II)V
- .line 2800
- .end local v4 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_0
- add-int/lit8 v3, v3, 0x1
- goto :goto_0
- .line 2815
- .end local v0 # "child":Landroid/view/View;
- .end local v3 # "i":I
- :cond_1
- const/high16 v5, 0x40000
- if-ne v1, v5, :cond_2
- invoke-virtual {p1}, Ljava/util/ArrayList;->size()I
- move-result v5
- if-ne v2, v5, :cond_3
- .line 2821
- :cond_2
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->isFocusable()Z
- move-result v5
- if-nez v5, :cond_4
- .line 2832
- :cond_3
- :goto_1
- return-void
- .line 2824
- :cond_4
- and-int/lit8 v5, p3, 0x1
- const/4 v6, 0x1
- if-ne v5, v6, :cond_5
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->isInTouchMode()Z
- move-result v5
- if-eqz v5, :cond_5
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->isFocusableInTouchMode()Z
- move-result v5
- if-eqz v5, :cond_3
- .line 2828
- :cond_5
- if-eqz p1, :cond_3
- .line 2829
- invoke-virtual {p1, p0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
- goto :goto_1
- .end method
- .method addNewItem(II)Landroid/support/v4/view/ViewPager$ItemInfo;
- .locals 2
- .param p1, "position" # I
- .param p2, "index" # I
- .prologue
- .line 941
- new-instance v0, Landroid/support/v4/view/ViewPager$ItemInfo;
- invoke-direct {v0}, Landroid/support/v4/view/ViewPager$ItemInfo;-><init>()V
- .line 942
- .local v0, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iput p1, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 943
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v1, p0, p1}, Landroid/support/v4/view/PagerAdapter;->instantiateItem(Landroid/view/ViewGroup;I)Ljava/lang/Object;
- move-result-object v1
- iput-object v1, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->object:Ljava/lang/Object;
- .line 944
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v1, p1}, Landroid/support/v4/view/PagerAdapter;->getPageWidth(I)F
- move-result v1
- iput v1, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- .line 945
- if-ltz p2, :cond_0
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
- move-result v1
- if-lt p2, v1, :cond_1
- .line 946
- :cond_0
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v1, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
- .line 950
- :goto_0
- return-object v0
- .line 948
- :cond_1
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v1, p2, v0}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
- goto :goto_0
- .end method
- .method public addOnPageChangeListener(Landroid/support/v4/view/ViewPager$OnPageChangeListener;)V
- .locals 1
- .param p1, "listener" # Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .prologue
- .line 662
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- if-nez v0, :cond_0
- .line 663
- new-instance v0, Ljava/util/ArrayList;
- invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- .line 665
- :cond_0
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
- .line 666
- return-void
- .end method
- .method public addTouchables(Ljava/util/ArrayList;)V
- .locals 5
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "(",
- "Ljava/util/ArrayList",
- "<",
- "Landroid/view/View;",
- ">;)V"
- }
- .end annotation
- .prologue
- .line 2842
- .local p1, "views":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/view/View;>;"
- const/4 v1, 0x0
- .local v1, "i":I
- :goto_0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v3
- if-ge v1, v3, :cond_1
- .line 2843
- invoke-virtual {p0, v1}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v0
- .line 2844
- .local v0, "child":Landroid/view/View;
- invoke-virtual {v0}, Landroid/view/View;->getVisibility()I
- move-result v3
- if-nez v3, :cond_0
- .line 2845
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v2
- .line 2846
- .local v2, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- if-eqz v2, :cond_0
- iget v3, v2, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- iget v4, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-ne v3, v4, :cond_0
- .line 2847
- invoke-virtual {v0, p1}, Landroid/view/View;->addTouchables(Ljava/util/ArrayList;)V
- .line 2842
- .end local v2 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_0
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- .line 2851
- .end local v0 # "child":Landroid/view/View;
- :cond_1
- return-void
- .end method
- .method public addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
- .locals 3
- .param p1, "child" # Landroid/view/View;
- .param p2, "index" # I
- .param p3, "params" # Landroid/view/ViewGroup$LayoutParams;
- .prologue
- .line 1401
- invoke-virtual {p0, p3}, Landroid/support/v4/view/ViewPager;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z
- move-result v1
- if-nez v1, :cond_0
- .line 1402
- invoke-virtual {p0, p3}, Landroid/support/v4/view/ViewPager;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams;
- move-result-object p3
- :cond_0
- move-object v0, p3
- .line 1404
- check-cast v0, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1405
- .local v0, "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- iget-boolean v1, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- instance-of v2, p1, Landroid/support/v4/view/ViewPager$Decor;
- or-int/2addr v1, v2
- iput-boolean v1, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- .line 1406
- iget-boolean v1, p0, Landroid/support/v4/view/ViewPager;->mInLayout:Z
- if-eqz v1, :cond_2
- .line 1407
- if-eqz v0, :cond_1
- iget-boolean v1, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- if-eqz v1, :cond_1
- .line 1408
- new-instance v1, Ljava/lang/IllegalStateException;
- const-string v2, "Cannot add pager decor view during layout"
- invoke-direct {v1, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v1
- .line 1410
- :cond_1
- const/4 v1, 0x1
- iput-boolean v1, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->needsMeasure:Z
- .line 1411
- invoke-virtual {p0, p1, p2, p3}, Landroid/support/v4/view/ViewPager;->addViewInLayout(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)Z
- .line 1423
- :goto_0
- return-void
- .line 1413
- :cond_2
- invoke-super {p0, p1, p2, p3}, Landroid/view/ViewGroup;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
- goto :goto_0
- .end method
- .method public arrowScroll(I)Z
- .locals 13
- .param p1, "direction" # I
- .prologue
- const/16 v12, 0x42
- const/16 v11, 0x11
- .line 2683
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->findFocus()Landroid/view/View;
- move-result-object v1
- .line 2684
- .local v1, "currentFocused":Landroid/view/View;
- if-ne v1, p0, :cond_3
- .line 2685
- const/4 v1, 0x0
- .line 2709
- :cond_0
- :goto_0
- const/4 v2, 0x0
- .line 2711
- .local v2, "handled":Z
- invoke-static {}, Landroid/view/FocusFinder;->getInstance()Landroid/view/FocusFinder;
- move-result-object v8
- invoke-virtual {v8, p0, v1, p1}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
- move-result-object v4
- .line 2713
- .local v4, "nextFocused":Landroid/view/View;
- if-eqz v4, :cond_a
- if-eq v4, v1, :cond_a
- .line 2714
- if-ne p1, v11, :cond_8
- .line 2717
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mTempRect:Landroid/graphics/Rect;
- invoke-direct {p0, v8, v4}, Landroid/support/v4/view/ViewPager;->getChildRectInPagerCoordinates(Landroid/graphics/Rect;Landroid/view/View;)Landroid/graphics/Rect;
- move-result-object v8
- iget v5, v8, Landroid/graphics/Rect;->left:I
- .line 2718
- .local v5, "nextLeft":I
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mTempRect:Landroid/graphics/Rect;
- invoke-direct {p0, v8, v1}, Landroid/support/v4/view/ViewPager;->getChildRectInPagerCoordinates(Landroid/graphics/Rect;Landroid/view/View;)Landroid/graphics/Rect;
- move-result-object v8
- iget v0, v8, Landroid/graphics/Rect;->left:I
- .line 2719
- .local v0, "currLeft":I
- if-eqz v1, :cond_7
- if-lt v5, v0, :cond_7
- .line 2720
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->pageLeft()Z
- move-result v2
- .line 2742
- .end local v0 # "currLeft":I
- .end local v5 # "nextLeft":I
- :cond_1
- :goto_1
- if-eqz v2, :cond_2
- .line 2743
- invoke-static {p1}, Landroid/view/SoundEffectConstants;->getContantForFocusDirection(I)I
- move-result v8
- invoke-virtual {p0, v8}, Landroid/support/v4/view/ViewPager;->playSoundEffect(I)V
- .line 2745
- :cond_2
- return v2
- .line 2686
- .end local v2 # "handled":Z
- .end local v4 # "nextFocused":Landroid/view/View;
- :cond_3
- if-eqz v1, :cond_0
- .line 2687
- const/4 v3, 0x0
- .line 2688
- .local v3, "isChild":Z
- invoke-virtual {v1}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
- move-result-object v6
- .local v6, "parent":Landroid/view/ViewParent;
- :goto_2
- instance-of v8, v6, Landroid/view/ViewGroup;
- if-eqz v8, :cond_4
- .line 2690
- if-ne v6, p0, :cond_5
- .line 2691
- const/4 v3, 0x1
- .line 2695
- :cond_4
- if-nez v3, :cond_0
- .line 2697
- new-instance v7, Ljava/lang/StringBuilder;
- invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
- .line 2698
- .local v7, "sb":Ljava/lang/StringBuilder;
- invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
- move-result-object v8
- invoke-virtual {v8}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
- move-result-object v8
- invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- .line 2699
- invoke-virtual {v1}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
- move-result-object v6
- :goto_3
- instance-of v8, v6, Landroid/view/ViewGroup;
- if-eqz v8, :cond_6
- .line 2701
- const-string v8, " => "
- invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v8
- invoke-virtual {v6}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
- move-result-object v9
- invoke-virtual {v9}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
- move-result-object v9
- invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- .line 2700
- invoke-interface {v6}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;
- move-result-object v6
- goto :goto_3
- .line 2689
- .end local v7 # "sb":Ljava/lang/StringBuilder;
- :cond_5
- invoke-interface {v6}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;
- move-result-object v6
- goto :goto_2
- .line 2703
- .restart local v7 # "sb":Ljava/lang/StringBuilder;
- :cond_6
- const-string v8, "ViewPager"
- new-instance v9, Ljava/lang/StringBuilder;
- invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
- const-string v10, "arrowScroll tried to find focus based on non-child current focused view "
- invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v9
- invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v10
- invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v9
- invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v9
- invoke-static {v8, v9}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- .line 2705
- const/4 v1, 0x0
- goto/16 :goto_0
- .line 2722
- .end local v3 # "isChild":Z
- .end local v6 # "parent":Landroid/view/ViewParent;
- .end local v7 # "sb":Ljava/lang/StringBuilder;
- .restart local v0 # "currLeft":I
- .restart local v2 # "handled":Z
- .restart local v4 # "nextFocused":Landroid/view/View;
- .restart local v5 # "nextLeft":I
- :cond_7
- invoke-virtual {v4}, Landroid/view/View;->requestFocus()Z
- move-result v2
- goto :goto_1
- .line 2724
- .end local v0 # "currLeft":I
- .end local v5 # "nextLeft":I
- :cond_8
- if-ne p1, v12, :cond_1
- .line 2727
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mTempRect:Landroid/graphics/Rect;
- invoke-direct {p0, v8, v4}, Landroid/support/v4/view/ViewPager;->getChildRectInPagerCoordinates(Landroid/graphics/Rect;Landroid/view/View;)Landroid/graphics/Rect;
- move-result-object v8
- iget v5, v8, Landroid/graphics/Rect;->left:I
- .line 2728
- .restart local v5 # "nextLeft":I
- iget-object v8, p0, Landroid/support/v4/view/ViewPager;->mTempRect:Landroid/graphics/Rect;
- invoke-direct {p0, v8, v1}, Landroid/support/v4/view/ViewPager;->getChildRectInPagerCoordinates(Landroid/graphics/Rect;Landroid/view/View;)Landroid/graphics/Rect;
- move-result-object v8
- iget v0, v8, Landroid/graphics/Rect;->left:I
- .line 2729
- .restart local v0 # "currLeft":I
- if-eqz v1, :cond_9
- if-gt v5, v0, :cond_9
- .line 2730
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->pageRight()Z
- move-result v2
- goto/16 :goto_1
- .line 2732
- :cond_9
- invoke-virtual {v4}, Landroid/view/View;->requestFocus()Z
- move-result v2
- goto/16 :goto_1
- .line 2735
- .end local v0 # "currLeft":I
- .end local v5 # "nextLeft":I
- :cond_a
- if-eq p1, v11, :cond_b
- const/4 v8, 0x1
- if-ne p1, v8, :cond_c
- .line 2737
- :cond_b
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->pageLeft()Z
- move-result v2
- goto/16 :goto_1
- .line 2738
- :cond_c
- if-eq p1, v12, :cond_d
- const/4 v8, 0x2
- if-ne p1, v8, :cond_1
- .line 2740
- :cond_d
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->pageRight()Z
- move-result v2
- goto/16 :goto_1
- .end method
- .method public beginFakeDrag()Z
- .locals 10
- .prologue
- const/4 v9, 0x1
- const/4 v4, 0x0
- const/4 v5, 0x0
- .line 2436
- iget-boolean v2, p0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- if-eqz v2, :cond_0
- .line 2452
- :goto_0
- return v4
- .line 2439
- :cond_0
- iput-boolean v9, p0, Landroid/support/v4/view/ViewPager;->mFakeDragging:Z
- .line 2440
- invoke-direct {p0, v9}, Landroid/support/v4/view/ViewPager;->setScrollState(I)V
- .line 2441
- iput v5, p0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- iput v5, p0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- .line 2442
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- if-nez v2, :cond_1
- .line 2443
- invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker;
- move-result-object v2
- iput-object v2, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- .line 2447
- :goto_1
- invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
- move-result-wide v0
- .local v0, "time":J
- move-wide v2, v0
- move v6, v5
- move v7, v4
- .line 2448
- invoke-static/range {v0 .. v7}, Landroid/view/MotionEvent;->obtain(JJIFFI)Landroid/view/MotionEvent;
- move-result-object v8
- .line 2449
- .local v8, "ev":Landroid/view/MotionEvent;
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {v2, v8}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
- .line 2450
- invoke-virtual {v8}, Landroid/view/MotionEvent;->recycle()V
- .line 2451
- iput-wide v0, p0, Landroid/support/v4/view/ViewPager;->mFakeDragBeginTime:J
- move v4, v9
- .line 2452
- goto :goto_0
- .line 2445
- .end local v0 # "time":J
- .end local v8 # "ev":Landroid/view/MotionEvent;
- :cond_1
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {v2}, Landroid/view/VelocityTracker;->clear()V
- goto :goto_1
- .end method
- .method protected canScroll(Landroid/view/View;ZIII)Z
- .locals 11
- .param p1, "v" # Landroid/view/View;
- .param p2, "checkV" # Z
- .param p3, "dx" # I
- .param p4, "x" # I
- .param p5, "y" # I
- .prologue
- .line 2620
- instance-of v0, p1, Landroid/view/ViewGroup;
- if-eqz v0, :cond_1
- move-object v7, p1
- .line 2621
- check-cast v7, Landroid/view/ViewGroup;
- .line 2622
- .local v7, "group":Landroid/view/ViewGroup;
- invoke-virtual {p1}, Landroid/view/View;->getScrollX()I
- move-result v9
- .line 2623
- .local v9, "scrollX":I
- invoke-virtual {p1}, Landroid/view/View;->getScrollY()I
- move-result v10
- .line 2624
- .local v10, "scrollY":I
- invoke-virtual {v7}, Landroid/view/ViewGroup;->getChildCount()I
- move-result v6
- .line 2626
- .local v6, "count":I
- add-int/lit8 v8, v6, -0x1
- .local v8, "i":I
- :goto_0
- if-ltz v8, :cond_1
- .line 2629
- invoke-virtual {v7, v8}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;
- move-result-object v1
- .line 2630
- .local v1, "child":Landroid/view/View;
- add-int v0, p4, v9
- invoke-virtual {v1}, Landroid/view/View;->getLeft()I
- move-result v2
- if-lt v0, v2, :cond_0
- add-int v0, p4, v9
- invoke-virtual {v1}, Landroid/view/View;->getRight()I
- move-result v2
- if-ge v0, v2, :cond_0
- add-int v0, p5, v10
- invoke-virtual {v1}, Landroid/view/View;->getTop()I
- move-result v2
- if-lt v0, v2, :cond_0
- add-int v0, p5, v10
- invoke-virtual {v1}, Landroid/view/View;->getBottom()I
- move-result v2
- if-ge v0, v2, :cond_0
- const/4 v2, 0x1
- add-int v0, p4, v9
- invoke-virtual {v1}, Landroid/view/View;->getLeft()I
- move-result v3
- sub-int v4, v0, v3
- add-int v0, p5, v10
- invoke-virtual {v1}, Landroid/view/View;->getTop()I
- move-result v3
- sub-int v5, v0, v3
- move-object v0, p0
- move v3, p3
- invoke-virtual/range {v0 .. v5}, Landroid/support/v4/view/ViewPager;->canScroll(Landroid/view/View;ZIII)Z
- move-result v0
- if-eqz v0, :cond_0
- .line 2634
- const/4 v0, 0x1
- .line 2639
- .end local v1 # "child":Landroid/view/View;
- .end local v6 # "count":I
- .end local v7 # "group":Landroid/view/ViewGroup;
- .end local v8 # "i":I
- .end local v9 # "scrollX":I
- .end local v10 # "scrollY":I
- :goto_1
- return v0
- .line 2626
- .restart local v1 # "child":Landroid/view/View;
- .restart local v6 # "count":I
- .restart local v7 # "group":Landroid/view/ViewGroup;
- .restart local v8 # "i":I
- .restart local v9 # "scrollX":I
- .restart local v10 # "scrollY":I
- :cond_0
- add-int/lit8 v8, v8, -0x1
- goto :goto_0
- .line 2639
- .end local v1 # "child":Landroid/view/View;
- .end local v6 # "count":I
- .end local v7 # "group":Landroid/view/ViewGroup;
- .end local v8 # "i":I
- .end local v9 # "scrollX":I
- .end local v10 # "scrollY":I
- :cond_1
- if-eqz p2, :cond_2
- neg-int v0, p3
- invoke-static {p1, v0}, Landroid/support/v4/view/ViewCompat;->canScrollHorizontally(Landroid/view/View;I)Z
- move-result v0
- if-eqz v0, :cond_2
- const/4 v0, 0x1
- goto :goto_1
- :cond_2
- const/4 v0, 0x0
- goto :goto_1
- .end method
- .method public canScrollHorizontally(I)Z
- .locals 6
- .param p1, "direction" # I
- .prologue
- const/4 v2, 0x1
- const/4 v3, 0x0
- .line 2593
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-nez v4, :cond_1
- .line 2604
- :cond_0
- :goto_0
- return v3
- .line 2597
- :cond_1
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v1
- .line 2598
- .local v1, "width":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v0
- .line 2599
- .local v0, "scrollX":I
- if-gez p1, :cond_3
- .line 2600
- int-to-float v4, v1
- iget v5, p0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- mul-float/2addr v4, v5
- float-to-int v4, v4
- if-le v0, v4, :cond_2
- :goto_1
- move v3, v2
- goto :goto_0
- :cond_2
- move v2, v3
- goto :goto_1
- .line 2601
- :cond_3
- if-lez p1, :cond_0
- .line 2602
- int-to-float v4, v1
- iget v5, p0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- mul-float/2addr v4, v5
- float-to-int v4, v4
- if-ge v0, v4, :cond_4
- :goto_2
- move v3, v2
- goto :goto_0
- :cond_4
- move v2, v3
- goto :goto_2
- .end method
- .method protected checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z
- .locals 1
- .param p1, "p" # Landroid/view/ViewGroup$LayoutParams;
- .prologue
- .line 2921
- instance-of v0, p1, Landroid/support/v4/view/ViewPager$LayoutParams;
- if-eqz v0, :cond_0
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z
- move-result v0
- if-eqz v0, :cond_0
- const/4 v0, 0x1
- :goto_0
- return v0
- :cond_0
- const/4 v0, 0x0
- goto :goto_0
- .end method
- .method public clearOnPageChangeListeners()V
- .locals 1
- .prologue
- .line 684
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- if-eqz v0, :cond_0
- .line 685
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v0}, Ljava/util/List;->clear()V
- .line 687
- :cond_0
- return-void
- .end method
- .method public computeScroll()V
- .locals 6
- .prologue
- const/4 v5, 0x1
- .line 1713
- iput-boolean v5, p0, Landroid/support/v4/view/ViewPager;->mIsScrollStarted:Z
- .line 1714
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v4}, Landroid/widget/Scroller;->isFinished()Z
- move-result v4
- if-nez v4, :cond_2
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v4}, Landroid/widget/Scroller;->computeScrollOffset()Z
- move-result v4
- if-eqz v4, :cond_2
- .line 1715
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v0
- .line 1716
- .local v0, "oldX":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollY()I
- move-result v1
- .line 1717
- .local v1, "oldY":I
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v4}, Landroid/widget/Scroller;->getCurrX()I
- move-result v2
- .line 1718
- .local v2, "x":I
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v4}, Landroid/widget/Scroller;->getCurrY()I
- move-result v3
- .line 1720
- .local v3, "y":I
- if-ne v0, v2, :cond_0
- if-eq v1, v3, :cond_1
- .line 1721
- :cond_0
- invoke-virtual {p0, v2, v3}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- .line 1722
- invoke-direct {p0, v2}, Landroid/support/v4/view/ViewPager;->pageScrolled(I)Z
- move-result v4
- if-nez v4, :cond_1
- .line 1723
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v4}, Landroid/widget/Scroller;->abortAnimation()V
- .line 1724
- const/4 v4, 0x0
- invoke-virtual {p0, v4, v3}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- .line 1729
- :cond_1
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- .line 1735
- .end local v0 # "oldX":I
- .end local v1 # "oldY":I
- .end local v2 # "x":I
- .end local v3 # "y":I
- :goto_0
- return-void
- .line 1734
- :cond_2
- invoke-direct {p0, v5}, Landroid/support/v4/view/ViewPager;->completeScroll(Z)V
- goto :goto_0
- .end method
- .method dataSetChanged()V
- .locals 15
- .prologue
- const/4 v10, 0x1
- const/4 v11, 0x0
- .line 956
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v12}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v0
- .line 957
- .local v0, "adapterCount":I
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mExpectedAdapterCount:I
- .line 958
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12}, Ljava/util/ArrayList;->size()I
- move-result v12
- iget v13, p0, Landroid/support/v4/view/ViewPager;->mOffscreenPageLimit:I
- mul-int/lit8 v13, v13, 0x2
- add-int/lit8 v13, v13, 0x1
- if-ge v12, v13, :cond_1
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12}, Ljava/util/ArrayList;->size()I
- move-result v12
- if-ge v12, v0, :cond_1
- move v7, v10
- .line 960
- .local v7, "needPopulate":Z
- :goto_0
- iget v8, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- .line 962
- .local v8, "newCurrItem":I
- const/4 v5, 0x0
- .line 963
- .local v5, "isUpdating":Z
- const/4 v3, 0x0
- .local v3, "i":I
- :goto_1
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12}, Ljava/util/ArrayList;->size()I
- move-result v12
- if-ge v3, v12, :cond_6
- .line 964
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v4
- check-cast v4, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 965
- .local v4, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- iget-object v13, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->object:Ljava/lang/Object;
- invoke-virtual {v12, v13}, Landroid/support/v4/view/PagerAdapter;->getItemPosition(Ljava/lang/Object;)I
- move-result v9
- .line 967
- .local v9, "newPos":I
- const/4 v12, -0x1
- if-ne v9, v12, :cond_2
- .line 963
- :cond_0
- :goto_2
- add-int/lit8 v3, v3, 0x1
- goto :goto_1
- .end local v3 # "i":I
- .end local v4 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v5 # "isUpdating":Z
- .end local v7 # "needPopulate":Z
- .end local v8 # "newCurrItem":I
- .end local v9 # "newPos":I
- :cond_1
- move v7, v11
- .line 958
- goto :goto_0
- .line 971
- .restart local v3 # "i":I
- .restart local v4 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v5 # "isUpdating":Z
- .restart local v7 # "needPopulate":Z
- .restart local v8 # "newCurrItem":I
- .restart local v9 # "newPos":I
- :cond_2
- const/4 v12, -0x2
- if-ne v9, v12, :cond_4
- .line 972
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v12, v3}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object;
- .line 973
- add-int/lit8 v3, v3, -0x1
- .line 975
- if-nez v5, :cond_3
- .line 976
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v12, p0}, Landroid/support/v4/view/PagerAdapter;->startUpdate(Landroid/view/ViewGroup;)V
- .line 977
- const/4 v5, 0x1
- .line 980
- :cond_3
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- iget v13, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- iget-object v14, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->object:Ljava/lang/Object;
- invoke-virtual {v12, p0, v13, v14}, Landroid/support/v4/view/PagerAdapter;->destroyItem(Landroid/view/ViewGroup;ILjava/lang/Object;)V
- .line 981
- const/4 v7, 0x1
- .line 983
- iget v12, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- iget v13, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-ne v12, v13, :cond_0
- .line 985
- iget v12, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- add-int/lit8 v13, v0, -0x1
- invoke-static {v12, v13}, Ljava/lang/Math;->min(II)I
- move-result v12
- invoke-static {v11, v12}, Ljava/lang/Math;->max(II)I
- move-result v8
- .line 986
- const/4 v7, 0x1
- goto :goto_2
- .line 991
- :cond_4
- iget v12, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-eq v12, v9, :cond_0
- .line 992
- iget v12, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- iget v13, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-ne v12, v13, :cond_5
- .line 994
- move v8, v9
- .line 997
- :cond_5
- iput v9, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 998
- const/4 v7, 0x1
- goto :goto_2
- .line 1002
- .end local v4 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v9 # "newPos":I
- :cond_6
- if-eqz v5, :cond_7
- .line 1003
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v12, p0}, Landroid/support/v4/view/PagerAdapter;->finishUpdate(Landroid/view/ViewGroup;)V
- .line 1006
- :cond_7
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- sget-object v13, Landroid/support/v4/view/ViewPager;->COMPARATOR:Ljava/util/Comparator;
- invoke-static {v12, v13}, Ljava/util/Collections;->sort(Ljava/util/List;Ljava/util/Comparator;)V
- .line 1008
- if-eqz v7, :cond_a
- .line 1010
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v2
- .line 1011
- .local v2, "childCount":I
- const/4 v3, 0x0
- :goto_3
- if-ge v3, v2, :cond_9
- .line 1012
- invoke-virtual {p0, v3}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v1
- .line 1013
- .local v1, "child":Landroid/view/View;
- invoke-virtual {v1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v6
- check-cast v6, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1014
- .local v6, "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- iget-boolean v12, v6, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- if-nez v12, :cond_8
- .line 1015
- const/4 v12, 0x0
- iput v12, v6, Landroid/support/v4/view/ViewPager$LayoutParams;->widthFactor:F
- .line 1011
- :cond_8
- add-int/lit8 v3, v3, 0x1
- goto :goto_3
- .line 1019
- .end local v1 # "child":Landroid/view/View;
- .end local v6 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- :cond_9
- invoke-virtual {p0, v8, v11, v10}, Landroid/support/v4/view/ViewPager;->setCurrentItemInternal(IZZ)V
- .line 1020
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->requestLayout()V
- .line 1022
- .end local v2 # "childCount":I
- :cond_a
- return-void
- .end method
- .method public dispatchKeyEvent(Landroid/view/KeyEvent;)Z
- .locals 1
- .param p1, "event" # Landroid/view/KeyEvent;
- .prologue
- .line 2645
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->dispatchKeyEvent(Landroid/view/KeyEvent;)Z
- move-result v0
- if-nez v0, :cond_0
- invoke-virtual {p0, p1}, Landroid/support/v4/view/ViewPager;->executeKeyEvent(Landroid/view/KeyEvent;)Z
- move-result v0
- if-eqz v0, :cond_1
- :cond_0
- const/4 v0, 0x1
- :goto_0
- return v0
- :cond_1
- const/4 v0, 0x0
- goto :goto_0
- .end method
- .method public dispatchPopulateAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z
- .locals 6
- .param p1, "event" # Landroid/view/accessibility/AccessibilityEvent;
- .prologue
- .line 2889
- invoke-virtual {p1}, Landroid/view/accessibility/AccessibilityEvent;->getEventType()I
- move-result v4
- const/16 v5, 0x1000
- if-ne v4, v5, :cond_0
- .line 2890
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->dispatchPopulateAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z
- move-result v4
- .line 2906
- :goto_0
- return v4
- .line 2894
- :cond_0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v1
- .line 2895
- .local v1, "childCount":I
- const/4 v2, 0x0
- .local v2, "i":I
- :goto_1
- if-ge v2, v1, :cond_2
- .line 2896
- invoke-virtual {p0, v2}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v0
- .line 2897
- .local v0, "child":Landroid/view/View;
- invoke-virtual {v0}, Landroid/view/View;->getVisibility()I
- move-result v4
- if-nez v4, :cond_1
- .line 2898
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v3
- .line 2899
- .local v3, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- if-eqz v3, :cond_1
- iget v4, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- iget v5, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-ne v4, v5, :cond_1
- invoke-virtual {v0, p1}, Landroid/view/View;->dispatchPopulateAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z
- move-result v4
- if-eqz v4, :cond_1
- .line 2901
- const/4 v4, 0x1
- goto :goto_0
- .line 2895
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_1
- add-int/lit8 v2, v2, 0x1
- goto :goto_1
- .line 2906
- .end local v0 # "child":Landroid/view/View;
- :cond_2
- const/4 v4, 0x0
- goto :goto_0
- .end method
- .method distanceInfluenceForSnapDuration(F)F
- .locals 4
- .param p1, "f" # F
- .prologue
- .line 860
- const/high16 v0, 0x3f000000 # 0.5f
- sub-float/2addr p1, v0
- .line 861
- float-to-double v0, p1
- const-wide v2, 0x3fde28c7460698c7L # 0.4712389167638204
- mul-double/2addr v0, v2
- double-to-float p1, v0
- .line 862
- float-to-double v0, p1
- invoke-static {v0, v1}, Ljava/lang/Math;->sin(D)D
- move-result-wide v0
- double-to-float v0, v0
- return v0
- .end method
- .method public draw(Landroid/graphics/Canvas;)V
- .locals 8
- .param p1, "canvas" # Landroid/graphics/Canvas;
- .prologue
- const/4 v6, 0x1
- .line 2334
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->draw(Landroid/graphics/Canvas;)V
- .line 2335
- const/4 v1, 0x0
- .line 2337
- .local v1, "needsInvalidate":Z
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getOverScrollMode(Landroid/view/View;)I
- move-result v2
- .line 2338
- .local v2, "overScrollMode":I
- if-eqz v2, :cond_0
- if-ne v2, v6, :cond_4
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v5, :cond_4
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v5}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v5
- if-le v5, v6, :cond_4
- .line 2341
- :cond_0
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mLeftEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v5}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result v5
- if-nez v5, :cond_1
- .line 2342
- invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
- move-result v3
- .line 2343
- .local v3, "restoreCount":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getHeight()I
- move-result v5
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingTop()I
- move-result v6
- sub-int/2addr v5, v6
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingBottom()I
- move-result v6
- sub-int v0, v5, v6
- .line 2344
- .local v0, "height":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getWidth()I
- move-result v4
- .line 2346
- .local v4, "width":I
- const/high16 v5, 0x43870000 # 270.0f
- invoke-virtual {p1, v5}, Landroid/graphics/Canvas;->rotate(F)V
- .line 2347
- neg-int v5, v0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingTop()I
- move-result v6
- add-int/2addr v5, v6
- int-to-float v5, v5
- iget v6, p0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- int-to-float v7, v4
- mul-float/2addr v6, v7
- invoke-virtual {p1, v5, v6}, Landroid/graphics/Canvas;->translate(FF)V
- .line 2348
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mLeftEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v5, v0, v4}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
- .line 2349
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mLeftEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v5, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
- move-result v5
- or-int/2addr v1, v5
- .line 2350
- invoke-virtual {p1, v3}, Landroid/graphics/Canvas;->restoreToCount(I)V
- .line 2352
- .end local v0 # "height":I
- .end local v3 # "restoreCount":I
- .end local v4 # "width":I
- :cond_1
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mRightEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v5}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result v5
- if-nez v5, :cond_2
- .line 2353
- invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
- move-result v3
- .line 2354
- .restart local v3 # "restoreCount":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getWidth()I
- move-result v4
- .line 2355
- .restart local v4 # "width":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getHeight()I
- move-result v5
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingTop()I
- move-result v6
- sub-int/2addr v5, v6
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingBottom()I
- move-result v6
- sub-int v0, v5, v6
- .line 2357
- .restart local v0 # "height":I
- const/high16 v5, 0x42b40000 # 90.0f
- invoke-virtual {p1, v5}, Landroid/graphics/Canvas;->rotate(F)V
- .line 2358
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingTop()I
- move-result v5
- neg-int v5, v5
- int-to-float v5, v5
- iget v6, p0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- const/high16 v7, 0x3f800000 # 1.0f
- add-float/2addr v6, v7
- neg-float v6, v6
- int-to-float v7, v4
- mul-float/2addr v6, v7
- invoke-virtual {p1, v5, v6}, Landroid/graphics/Canvas;->translate(FF)V
- .line 2359
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mRightEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v5, v0, v4}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
- .line 2360
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mRightEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v5, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
- move-result v5
- or-int/2addr v1, v5
- .line 2361
- invoke-virtual {p1, v3}, Landroid/graphics/Canvas;->restoreToCount(I)V
- .line 2368
- .end local v0 # "height":I
- .end local v3 # "restoreCount":I
- .end local v4 # "width":I
- :cond_2
- :goto_0
- if-eqz v1, :cond_3
- .line 2370
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- .line 2372
- :cond_3
- return-void
- .line 2364
- :cond_4
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mLeftEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v5}, Landroid/support/v4/widget/EdgeEffectCompat;->finish()V
- .line 2365
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mRightEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v5}, Landroid/support/v4/widget/EdgeEffectCompat;->finish()V
- goto :goto_0
- .end method
- .method protected drawableStateChanged()V
- .locals 2
- .prologue
- .line 848
- invoke-super {p0}, Landroid/view/ViewGroup;->drawableStateChanged()V
- .line 849
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mMarginDrawable:Landroid/graphics/drawable/Drawable;
- .line 850
- .local v0, "d":Landroid/graphics/drawable/Drawable;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->isStateful()Z
- move-result v1
- if-eqz v1, :cond_0
- .line 851
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getDrawableState()[I
- move-result-object v1
- invoke-virtual {v0, v1}, Landroid/graphics/drawable/Drawable;->setState([I)Z
- .line 853
- :cond_0
- return-void
- .end method
- .method public endFakeDrag()V
- .locals 12
- .prologue
- const/4 v11, 0x1
- .line 2462
- iget-boolean v9, p0, Landroid/support/v4/view/ViewPager;->mFakeDragging:Z
- if-nez v9, :cond_0
- .line 2463
- new-instance v9, Ljava/lang/IllegalStateException;
- const-string v10, "No fake drag in progress. Call beginFakeDrag first."
- invoke-direct {v9, v10}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v9
- .line 2466
- :cond_0
- iget-object v9, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v9, :cond_1
- .line 2467
- iget-object v7, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- .line 2468
- .local v7, "velocityTracker":Landroid/view/VelocityTracker;
- const/16 v9, 0x3e8
- iget v10, p0, Landroid/support/v4/view/ViewPager;->mMaximumVelocity:I
- int-to-float v10, v10
- invoke-virtual {v7, v9, v10}, Landroid/view/VelocityTracker;->computeCurrentVelocity(IF)V
- .line 2469
- iget v9, p0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- invoke-static {v7, v9}, Landroid/support/v4/view/VelocityTrackerCompat;->getXVelocity(Landroid/view/VelocityTracker;I)F
- move-result v9
- float-to-int v2, v9
- .line 2471
- .local v2, "initialVelocity":I
- iput-boolean v11, p0, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- .line 2472
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v8
- .line 2473
- .local v8, "width":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v5
- .line 2474
- .local v5, "scrollX":I
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->infoForCurrentScrollPosition()Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v1
- .line 2475
- .local v1, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget v0, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 2476
- .local v0, "currentPage":I
- int-to-float v9, v5
- int-to-float v10, v8
- div-float/2addr v9, v10
- iget v10, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- sub-float/2addr v9, v10
- iget v10, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- div-float v4, v9, v10
- .line 2477
- .local v4, "pageOffset":F
- iget v9, p0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- iget v10, p0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- sub-float/2addr v9, v10
- float-to-int v6, v9
- .line 2478
- .local v6, "totalDelta":I
- invoke-direct {p0, v0, v4, v2, v6}, Landroid/support/v4/view/ViewPager;->determineTargetPage(IFII)I
- move-result v3
- .line 2480
- .local v3, "nextPage":I
- invoke-virtual {p0, v3, v11, v11, v2}, Landroid/support/v4/view/ViewPager;->setCurrentItemInternal(IZZI)V
- .line 2482
- .end local v0 # "currentPage":I
- .end local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v2 # "initialVelocity":I
- .end local v3 # "nextPage":I
- .end local v4 # "pageOffset":F
- .end local v5 # "scrollX":I
- .end local v6 # "totalDelta":I
- .end local v7 # "velocityTracker":Landroid/view/VelocityTracker;
- .end local v8 # "width":I
- :cond_1
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->endDrag()V
- .line 2484
- const/4 v9, 0x0
- iput-boolean v9, p0, Landroid/support/v4/view/ViewPager;->mFakeDragging:Z
- .line 2485
- return-void
- .end method
- .method public executeKeyEvent(Landroid/view/KeyEvent;)Z
- .locals 4
- .param p1, "event" # Landroid/view/KeyEvent;
- .prologue
- const/4 v3, 0x1
- .line 2657
- const/4 v0, 0x0
- .line 2658
- .local v0, "handled":Z
- invoke-virtual {p1}, Landroid/view/KeyEvent;->getAction()I
- move-result v1
- if-nez v1, :cond_0
- .line 2659
- invoke-virtual {p1}, Landroid/view/KeyEvent;->getKeyCode()I
- move-result v1
- sparse-switch v1, :sswitch_data_0
- .line 2679
- :cond_0
- :goto_0
- return v0
- .line 2661
- :sswitch_0
- const/16 v1, 0x11
- invoke-virtual {p0, v1}, Landroid/support/v4/view/ViewPager;->arrowScroll(I)Z
- move-result v0
- .line 2662
- goto :goto_0
- .line 2664
- :sswitch_1
- const/16 v1, 0x42
- invoke-virtual {p0, v1}, Landroid/support/v4/view/ViewPager;->arrowScroll(I)Z
- move-result v0
- .line 2665
- goto :goto_0
- .line 2667
- :sswitch_2
- sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
- const/16 v2, 0xb
- if-lt v1, v2, :cond_0
- .line 2670
- invoke-static {p1}, Landroid/support/v4/view/KeyEventCompat;->hasNoModifiers(Landroid/view/KeyEvent;)Z
- move-result v1
- if-eqz v1, :cond_1
- .line 2671
- const/4 v1, 0x2
- invoke-virtual {p0, v1}, Landroid/support/v4/view/ViewPager;->arrowScroll(I)Z
- move-result v0
- goto :goto_0
- .line 2672
- :cond_1
- invoke-static {p1, v3}, Landroid/support/v4/view/KeyEventCompat;->hasModifiers(Landroid/view/KeyEvent;I)Z
- move-result v1
- if-eqz v1, :cond_0
- .line 2673
- invoke-virtual {p0, v3}, Landroid/support/v4/view/ViewPager;->arrowScroll(I)Z
- move-result v0
- goto :goto_0
- .line 2659
- nop
- :sswitch_data_0
- .sparse-switch
- 0x15 -> :sswitch_0
- 0x16 -> :sswitch_1
- 0x3d -> :sswitch_2
- .end sparse-switch
- .end method
- .method public fakeDragBy(F)V
- .locals 17
- .param p1, "xOffset" # F
- .prologue
- .line 2495
- move-object/from16 v0, p0
- iget-boolean v1, v0, Landroid/support/v4/view/ViewPager;->mFakeDragging:Z
- if-nez v1, :cond_0
- .line 2496
- new-instance v1, Ljava/lang/IllegalStateException;
- const-string v2, "No fake drag in progress. Call beginFakeDrag first."
- invoke-direct {v1, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v1
- .line 2499
- :cond_0
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-nez v1, :cond_1
- .line 2537
- :goto_0
- return-void
- .line 2503
- :cond_1
- move-object/from16 v0, p0
- iget v1, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- add-float v1, v1, p1
- move-object/from16 v0, p0
- iput v1, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2505
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v1
- int-to-float v13, v1
- .line 2506
- .local v13, "oldScrollX":F
- sub-float v15, v13, p1
- .line 2507
- .local v15, "scrollX":F
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v16
- .line 2509
- .local v16, "width":I
- move/from16 v0, v16
- int-to-float v1, v0
- move-object/from16 v0, p0
- iget v2, v0, Landroid/support/v4/view/ViewPager;->mFirstOffset:F
- mul-float v12, v1, v2
- .line 2510
- .local v12, "leftBound":F
- move/from16 v0, v16
- int-to-float v1, v0
- move-object/from16 v0, p0
- iget v2, v0, Landroid/support/v4/view/ViewPager;->mLastOffset:F
- mul-float v14, v1, v2
- .line 2512
- .local v14, "rightBound":F
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- const/4 v2, 0x0
- invoke-virtual {v1, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v10
- check-cast v10, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2513
- .local v10, "firstItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v0, p0
- iget-object v2, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v2}, Ljava/util/ArrayList;->size()I
- move-result v2
- add-int/lit8 v2, v2, -0x1
- invoke-virtual {v1, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v11
- check-cast v11, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2514
- .local v11, "lastItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget v1, v10, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-eqz v1, :cond_2
- .line 2515
- iget v1, v10, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- move/from16 v0, v16
- int-to-float v2, v0
- mul-float v12, v1, v2
- .line 2517
- :cond_2
- iget v1, v11, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move-object/from16 v0, p0
- iget-object v2, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v2}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v2
- add-int/lit8 v2, v2, -0x1
- if-eq v1, v2, :cond_3
- .line 2518
- iget v1, v11, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- move/from16 v0, v16
- int-to-float v2, v0
- mul-float v14, v1, v2
- .line 2521
- :cond_3
- cmpg-float v1, v15, v12
- if-gez v1, :cond_5
- .line 2522
- move v15, v12
- .line 2527
- :cond_4
- :goto_1
- move-object/from16 v0, p0
- iget v1, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- float-to-int v2, v15
- int-to-float v2, v2
- sub-float v2, v15, v2
- add-float/2addr v1, v2
- move-object/from16 v0, p0
- iput v1, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2528
- float-to-int v1, v15
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollY()I
- move-result v2
- move-object/from16 v0, p0
- invoke-virtual {v0, v1, v2}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- .line 2529
- float-to-int v1, v15
- move-object/from16 v0, p0
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->pageScrolled(I)Z
- .line 2532
- invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
- move-result-wide v3
- .line 2533
- .local v3, "time":J
- move-object/from16 v0, p0
- iget-wide v1, v0, Landroid/support/v4/view/ViewPager;->mFakeDragBeginTime:J
- const/4 v5, 0x2
- move-object/from16 v0, p0
- iget v6, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- const/4 v7, 0x0
- const/4 v8, 0x0
- invoke-static/range {v1 .. v8}, Landroid/view/MotionEvent;->obtain(JJIFFI)Landroid/view/MotionEvent;
- move-result-object v9
- .line 2535
- .local v9, "ev":Landroid/view/MotionEvent;
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {v1, v9}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
- .line 2536
- invoke-virtual {v9}, Landroid/view/MotionEvent;->recycle()V
- goto/16 :goto_0
- .line 2523
- .end local v3 # "time":J
- .end local v9 # "ev":Landroid/view/MotionEvent;
- :cond_5
- cmpl-float v1, v15, v14
- if-lez v1, :cond_4
- .line 2524
- move v15, v14
- goto :goto_1
- .end method
- .method protected generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- .locals 1
- .prologue
- .line 2911
- new-instance v0, Landroid/support/v4/view/ViewPager$LayoutParams;
- invoke-direct {v0}, Landroid/support/v4/view/ViewPager$LayoutParams;-><init>()V
- return-object v0
- .end method
- .method public generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams;
- .locals 2
- .param p1, "attrs" # Landroid/util/AttributeSet;
- .prologue
- .line 2926
- new-instance v0, Landroid/support/v4/view/ViewPager$LayoutParams;
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-direct {v0, v1, p1}, Landroid/support/v4/view/ViewPager$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
- return-object v0
- .end method
- .method protected generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams;
- .locals 1
- .param p1, "p" # Landroid/view/ViewGroup$LayoutParams;
- .prologue
- .line 2916
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v0
- return-object v0
- .end method
- .method public getAdapter()Landroid/support/v4/view/PagerAdapter;
- .locals 1
- .prologue
- .line 531
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- return-object v0
- .end method
- .method protected getChildDrawingOrder(II)I
- .locals 4
- .param p1, "childCount" # I
- .param p2, "i" # I
- .prologue
- .line 736
- iget v2, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrder:I
- const/4 v3, 0x2
- if-ne v2, v3, :cond_0
- add-int/lit8 v2, p1, -0x1
- sub-int v0, v2, p2
- .line 737
- .local v0, "index":I
- :goto_0
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrderedChildren:Ljava/util/ArrayList;
- invoke-virtual {v2, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v2
- check-cast v2, Landroid/view/View;
- invoke-virtual {v2}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v2
- check-cast v2, Landroid/support/v4/view/ViewPager$LayoutParams;
- iget v1, v2, Landroid/support/v4/view/ViewPager$LayoutParams;->childIndex:I
- .line 738
- .local v1, "result":I
- return v1
- .end local v0 # "index":I
- .end local v1 # "result":I
- :cond_0
- move v0, p2
- .line 736
- goto :goto_0
- .end method
- .method public getCurrentItem()I
- .locals 1
- .prologue
- .line 566
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- return v0
- .end method
- .method public getOffscreenPageLimit()I
- .locals 1
- .prologue
- .line 761
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mOffscreenPageLimit:I
- return v0
- .end method
- .method public getPageMargin()I
- .locals 1
- .prologue
- .line 817
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- return v0
- .end method
- .method infoForAnyChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- .locals 2
- .param p1, "child" # Landroid/view/View;
- .prologue
- .line 1446
- :goto_0
- invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
- move-result-object v0
- .local v0, "parent":Landroid/view/ViewParent;
- if-eq v0, p0, :cond_2
- .line 1447
- if-eqz v0, :cond_0
- instance-of v1, v0, Landroid/view/View;
- if-nez v1, :cond_1
- .line 1448
- :cond_0
- const/4 v1, 0x0
- .line 1452
- :goto_1
- return-object v1
- :cond_1
- move-object p1, v0
- .line 1450
- check-cast p1, Landroid/view/View;
- goto :goto_0
- .line 1452
- :cond_2
- invoke-virtual {p0, p1}, Landroid/support/v4/view/ViewPager;->infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v1
- goto :goto_1
- .end method
- .method infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- .locals 4
- .param p1, "child" # Landroid/view/View;
- .prologue
- .line 1435
- const/4 v0, 0x0
- .local v0, "i":I
- :goto_0
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v2}, Ljava/util/ArrayList;->size()I
- move-result v2
- if-ge v0, v2, :cond_1
- .line 1436
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v2, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 1437
- .local v1, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- iget-object v3, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->object:Ljava/lang/Object;
- invoke-virtual {v2, p1, v3}, Landroid/support/v4/view/PagerAdapter;->isViewFromObject(Landroid/view/View;Ljava/lang/Object;)Z
- move-result v2
- if-eqz v2, :cond_0
- .line 1441
- .end local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_1
- return-object v1
- .line 1435
- .restart local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_0
- add-int/lit8 v0, v0, 0x1
- goto :goto_0
- .line 1441
- .end local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_1
- const/4 v1, 0x0
- goto :goto_1
- .end method
- .method infoForPosition(I)Landroid/support/v4/view/ViewPager$ItemInfo;
- .locals 3
- .param p1, "position" # I
- .prologue
- .line 1456
- const/4 v0, 0x0
- .local v0, "i":I
- :goto_0
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v2}, Ljava/util/ArrayList;->size()I
- move-result v2
- if-ge v0, v2, :cond_1
- .line 1457
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v2, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 1458
- .local v1, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget v2, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-ne v2, p1, :cond_0
- .line 1462
- .end local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_1
- return-object v1
- .line 1456
- .restart local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_0
- add-int/lit8 v0, v0, 0x1
- goto :goto_0
- .line 1462
- .end local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_1
- const/4 v1, 0x0
- goto :goto_1
- .end method
- .method initViewPager()V
- .locals 6
- .prologue
- const/4 v5, 0x1
- .line 364
- const/4 v3, 0x0
- invoke-virtual {p0, v3}, Landroid/support/v4/view/ViewPager;->setWillNotDraw(Z)V
- .line 365
- const/high16 v3, 0x40000
- invoke-virtual {p0, v3}, Landroid/support/v4/view/ViewPager;->setDescendantFocusability(I)V
- .line 366
- invoke-virtual {p0, v5}, Landroid/support/v4/view/ViewPager;->setFocusable(Z)V
- .line 367
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getContext()Landroid/content/Context;
- move-result-object v1
- .line 368
- .local v1, "context":Landroid/content/Context;
- new-instance v3, Landroid/widget/Scroller;
- sget-object v4, Landroid/support/v4/view/ViewPager;->sInterpolator:Landroid/view/animation/Interpolator;
- invoke-direct {v3, v1, v4}, Landroid/widget/Scroller;-><init>(Landroid/content/Context;Landroid/view/animation/Interpolator;)V
- iput-object v3, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- .line 369
- invoke-static {v1}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;
- move-result-object v0
- .line 370
- .local v0, "configuration":Landroid/view/ViewConfiguration;
- invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
- move-result-object v3
- invoke-virtual {v3}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
- move-result-object v3
- iget v2, v3, Landroid/util/DisplayMetrics;->density:F
- .line 372
- .local v2, "density":F
- invoke-static {v0}, Landroid/support/v4/view/ViewConfigurationCompat;->getScaledPagingTouchSlop(Landroid/view/ViewConfiguration;)I
- move-result v3
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mTouchSlop:I
- .line 373
- const/high16 v3, 0x43c80000 # 400.0f
- mul-float/2addr v3, v2
- float-to-int v3, v3
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mMinimumVelocity:I
- .line 374
- invoke-virtual {v0}, Landroid/view/ViewConfiguration;->getScaledMaximumFlingVelocity()I
- move-result v3
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mMaximumVelocity:I
- .line 375
- new-instance v3, Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-direct {v3, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
- iput-object v3, p0, Landroid/support/v4/view/ViewPager;->mLeftEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- .line 376
- new-instance v3, Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-direct {v3, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
- iput-object v3, p0, Landroid/support/v4/view/ViewPager;->mRightEdge:Landroid/support/v4/widget/EdgeEffectCompat;
- .line 378
- const/high16 v3, 0x41c80000 # 25.0f
- mul-float/2addr v3, v2
- float-to-int v3, v3
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mFlingDistance:I
- .line 379
- const/high16 v3, 0x40000000 # 2.0f
- mul-float/2addr v3, v2
- float-to-int v3, v3
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mCloseEnough:I
- .line 380
- const/high16 v3, 0x41800000 # 16.0f
- mul-float/2addr v3, v2
- float-to-int v3, v3
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mDefaultGutterSize:I
- .line 382
- new-instance v3, Landroid/support/v4/view/ViewPager$MyAccessibilityDelegate;
- invoke-direct {v3, p0}, Landroid/support/v4/view/ViewPager$MyAccessibilityDelegate;-><init>(Landroid/support/v4/view/ViewPager;)V
- invoke-static {p0, v3}, Landroid/support/v4/view/ViewCompat;->setAccessibilityDelegate(Landroid/view/View;Landroid/support/v4/view/AccessibilityDelegateCompat;)V
- .line 384
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getImportantForAccessibility(Landroid/view/View;)I
- move-result v3
- if-nez v3, :cond_0
- .line 386
- invoke-static {p0, v5}, Landroid/support/v4/view/ViewCompat;->setImportantForAccessibility(Landroid/view/View;I)V
- .line 390
- :cond_0
- new-instance v3, Landroid/support/v4/view/ViewPager$4;
- invoke-direct {v3, p0}, Landroid/support/v4/view/ViewPager$4;-><init>(Landroid/support/v4/view/ViewPager;)V
- invoke-static {p0, v3}, Landroid/support/v4/view/ViewCompat;->setOnApplyWindowInsetsListener(Landroid/view/View;Landroid/support/v4/view/OnApplyWindowInsetsListener;)V
- .line 438
- return-void
- .end method
- .method public isFakeDragging()Z
- .locals 1
- .prologue
- .line 2549
- iget-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mFakeDragging:Z
- return v0
- .end method
- .method protected onAttachedToWindow()V
- .locals 1
- .prologue
- .line 1467
- invoke-super {p0}, Landroid/view/ViewGroup;->onAttachedToWindow()V
- .line 1468
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- .line 1469
- return-void
- .end method
- .method protected onDetachedFromWindow()V
- .locals 1
- .prologue
- .line 442
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mEndScrollRunnable:Ljava/lang/Runnable;
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->removeCallbacks(Ljava/lang/Runnable;)Z
- .line 444
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v0}, Landroid/widget/Scroller;->isFinished()Z
- move-result v0
- if-nez v0, :cond_0
- .line 445
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v0}, Landroid/widget/Scroller;->abortAnimation()V
- .line 447
- :cond_0
- invoke-super {p0}, Landroid/view/ViewGroup;->onDetachedFromWindow()V
- .line 448
- return-void
- .end method
- .method protected onDraw(Landroid/graphics/Canvas;)V
- .locals 18
- .param p1, "canvas" # Landroid/graphics/Canvas;
- .prologue
- .line 2376
- invoke-super/range {p0 .. p1}, Landroid/view/ViewGroup;->onDraw(Landroid/graphics/Canvas;)V
- .line 2379
- move-object/from16 v0, p0
- iget v13, v0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- if-lez v13, :cond_2
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mMarginDrawable:Landroid/graphics/drawable/Drawable;
- if-eqz v13, :cond_2
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v13}, Ljava/util/ArrayList;->size()I
- move-result v13
- if-lez v13, :cond_2
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v13, :cond_2
- .line 2380
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v10
- .line 2381
- .local v10, "scrollX":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getWidth()I
- move-result v11
- .line 2383
- .local v11, "width":I
- move-object/from16 v0, p0
- iget v13, v0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- int-to-float v13, v13
- int-to-float v14, v11
- div-float v7, v13, v14
- .line 2384
- .local v7, "marginOffset":F
- const/4 v5, 0x0
- .line 2385
- .local v5, "itemIndex":I
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- const/4 v14, 0x0
- invoke-virtual {v13, v14}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 2386
- .local v3, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget v8, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- .line 2387
- .local v8, "offset":F
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v13}, Ljava/util/ArrayList;->size()I
- move-result v4
- .line 2388
- .local v4, "itemCount":I
- iget v2, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 2389
- .local v2, "firstPos":I
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- add-int/lit8 v14, v4, -0x1
- invoke-virtual {v13, v14}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v13
- check-cast v13, Landroid/support/v4/view/ViewPager$ItemInfo;
- iget v6, v13, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 2390
- .local v6, "lastPos":I
- move v9, v2
- .local v9, "pos":I
- :goto_0
- if-ge v9, v6, :cond_2
- .line 2391
- :goto_1
- iget v13, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-le v9, v13, :cond_0
- if-ge v5, v4, :cond_0
- .line 2392
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- add-int/lit8 v5, v5, 0x1
- invoke-virtual {v13, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- goto :goto_1
- .line 2396
- :cond_0
- iget v13, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- if-ne v9, v13, :cond_3
- .line 2397
- iget v13, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- iget v14, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v13, v14
- int-to-float v14, v11
- mul-float v1, v13, v14
- .line 2398
- .local v1, "drawAt":F
- iget v13, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- iget v14, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- add-float/2addr v13, v14
- add-float v8, v13, v7
- .line 2405
- :goto_2
- move-object/from16 v0, p0
- iget v13, v0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- int-to-float v13, v13
- add-float/2addr v13, v1
- int-to-float v14, v10
- cmpl-float v13, v13, v14
- if-lez v13, :cond_1
- .line 2406
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mMarginDrawable:Landroid/graphics/drawable/Drawable;
- float-to-int v14, v1
- move-object/from16 v0, p0
- iget v15, v0, Landroid/support/v4/view/ViewPager;->mTopPageBounds:I
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- move/from16 v16, v0
- move/from16 v0, v16
- int-to-float v0, v0
- move/from16 v16, v0
- add-float v16, v16, v1
- const/high16 v17, 0x3f000000 # 0.5f
- add-float v16, v16, v17
- move/from16 v0, v16
- float-to-int v0, v0
- move/from16 v16, v0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mBottomPageBounds:I
- move/from16 v17, v0
- invoke-virtual/range {v13 .. v17}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
- .line 2408
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mMarginDrawable:Landroid/graphics/drawable/Drawable;
- move-object/from16 v0, p1
- invoke-virtual {v13, v0}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V
- .line 2411
- :cond_1
- add-int v13, v10, v11
- int-to-float v13, v13
- cmpl-float v13, v1, v13
- if-lez v13, :cond_4
- .line 2416
- .end local v1 # "drawAt":F
- .end local v2 # "firstPos":I
- .end local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v4 # "itemCount":I
- .end local v5 # "itemIndex":I
- .end local v6 # "lastPos":I
- .end local v7 # "marginOffset":F
- .end local v8 # "offset":F
- .end local v9 # "pos":I
- .end local v10 # "scrollX":I
- .end local v11 # "width":I
- :cond_2
- return-void
- .line 2400
- .restart local v2 # "firstPos":I
- .restart local v3 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v4 # "itemCount":I
- .restart local v5 # "itemIndex":I
- .restart local v6 # "lastPos":I
- .restart local v7 # "marginOffset":F
- .restart local v8 # "offset":F
- .restart local v9 # "pos":I
- .restart local v10 # "scrollX":I
- .restart local v11 # "width":I
- :cond_3
- move-object/from16 v0, p0
- iget-object v13, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v13, v9}, Landroid/support/v4/view/PagerAdapter;->getPageWidth(I)F
- move-result v12
- .line 2401
- .local v12, "widthFactor":F
- add-float v13, v8, v12
- int-to-float v14, v11
- mul-float v1, v13, v14
- .line 2402
- .restart local v1 # "drawAt":F
- add-float v13, v12, v7
- add-float/2addr v8, v13
- goto :goto_2
- .line 2390
- .end local v12 # "widthFactor":F
- :cond_4
- add-int/lit8 v9, v9, 0x1
- goto :goto_0
- .end method
- .method public onInterceptTouchEvent(Landroid/view/MotionEvent;)Z
- .locals 14
- .param p1, "ev" # Landroid/view/MotionEvent;
- .prologue
- .line 1946
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I
- move-result v0
- and-int/lit16 v6, v0, 0xff
- .line 1949
- .local v6, "action":I
- const/4 v0, 0x3
- if-eq v6, v0, :cond_0
- const/4 v0, 0x1
- if-ne v6, v0, :cond_1
- .line 1952
- :cond_0
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->resetTouch()Z
- .line 1953
- const/4 v0, 0x0
- .line 2074
- :goto_0
- return v0
- .line 1958
- :cond_1
- if-eqz v6, :cond_3
- .line 1959
- iget-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- if-eqz v0, :cond_2
- .line 1961
- const/4 v0, 0x1
- goto :goto_0
- .line 1963
- :cond_2
- iget-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsUnableToDrag:Z
- if-eqz v0, :cond_3
- .line 1965
- const/4 v0, 0x0
- goto :goto_0
- .line 1969
- :cond_3
- sparse-switch v6, :sswitch_data_0
- .line 2065
- :cond_4
- :goto_1
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- if-nez v0, :cond_5
- .line 2066
- invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker;
- move-result-object v0
- iput-object v0, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- .line 2068
- :cond_5
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {v0, p1}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
- .line 2074
- iget-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- goto :goto_0
- .line 1980
- :sswitch_0
- iget v7, p0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- .line 1981
- .local v7, "activePointerId":I
- const/4 v0, -0x1
- if-eq v7, v0, :cond_4
- .line 1986
- invoke-static {p1, v7}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
- move-result v9
- .line 1987
- .local v9, "pointerIndex":I
- invoke-static {p1, v9}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v10
- .line 1988
- .local v10, "x":F
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- sub-float v8, v10, v0
- .line 1989
- .local v8, "dx":F
- invoke-static {v8}, Ljava/lang/Math;->abs(F)F
- move-result v11
- .line 1990
- .local v11, "xDiff":F
- invoke-static {p1, v9}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
- move-result v12
- .line 1991
- .local v12, "y":F
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mInitialMotionY:F
- sub-float v0, v12, v0
- invoke-static {v0}, Ljava/lang/Math;->abs(F)F
- move-result v13
- .line 1994
- .local v13, "yDiff":F
- const/4 v0, 0x0
- cmpl-float v0, v8, v0
- if-eqz v0, :cond_6
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- invoke-direct {p0, v0, v8}, Landroid/support/v4/view/ViewPager;->isGutterDrag(FF)Z
- move-result v0
- if-nez v0, :cond_6
- const/4 v2, 0x0
- float-to-int v3, v8
- float-to-int v4, v10
- float-to-int v5, v12
- move-object v0, p0
- move-object v1, p0
- invoke-virtual/range {v0 .. v5}, Landroid/support/v4/view/ViewPager;->canScroll(Landroid/view/View;ZIII)Z
- move-result v0
- if-eqz v0, :cond_6
- .line 1997
- iput v10, p0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 1998
- iput v12, p0, Landroid/support/v4/view/ViewPager;->mLastMotionY:F
- .line 1999
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsUnableToDrag:Z
- .line 2000
- const/4 v0, 0x0
- goto :goto_0
- .line 2002
- :cond_6
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mTouchSlop:I
- int-to-float v0, v0
- cmpl-float v0, v11, v0
- if-lez v0, :cond_9
- const/high16 v0, 0x3f000000 # 0.5f
- mul-float/2addr v0, v11
- cmpl-float v0, v0, v13
- if-lez v0, :cond_9
- .line 2004
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- .line 2005
- const/4 v0, 0x1
- invoke-direct {p0, v0}, Landroid/support/v4/view/ViewPager;->requestParentDisallowInterceptTouchEvent(Z)V
- .line 2006
- const/4 v0, 0x1
- invoke-direct {p0, v0}, Landroid/support/v4/view/ViewPager;->setScrollState(I)V
- .line 2007
- const/4 v0, 0x0
- cmpl-float v0, v8, v0
- if-lez v0, :cond_8
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mTouchSlop:I
- int-to-float v1, v1
- add-float/2addr v0, v1
- :goto_2
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2009
- iput v12, p0, Landroid/support/v4/view/ViewPager;->mLastMotionY:F
- .line 2010
- const/4 v0, 0x1
- invoke-direct {p0, v0}, Landroid/support/v4/view/ViewPager;->setScrollingCacheEnabled(Z)V
- .line 2019
- :cond_7
- :goto_3
- iget-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- if-eqz v0, :cond_4
- .line 2021
- invoke-direct {p0, v10}, Landroid/support/v4/view/ViewPager;->performDrag(F)Z
- move-result v0
- if-eqz v0, :cond_4
- .line 2022
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- goto/16 :goto_1
- .line 2007
- :cond_8
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mTouchSlop:I
- int-to-float v1, v1
- sub-float/2addr v0, v1
- goto :goto_2
- .line 2011
- :cond_9
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mTouchSlop:I
- int-to-float v0, v0
- cmpl-float v0, v13, v0
- if-lez v0, :cond_7
- .line 2017
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsUnableToDrag:Z
- goto :goto_3
- .line 2033
- .end local v7 # "activePointerId":I
- .end local v8 # "dx":F
- .end local v9 # "pointerIndex":I
- .end local v10 # "x":F
- .end local v11 # "xDiff":F
- .end local v12 # "y":F
- .end local v13 # "yDiff":F
- :sswitch_1
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F
- move-result v0
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2034
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F
- move-result v0
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mInitialMotionY:F
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mLastMotionY:F
- .line 2035
- const/4 v0, 0x0
- invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v0
- iput v0, p0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- .line 2036
- const/4 v0, 0x0
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsUnableToDrag:Z
- .line 2038
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsScrollStarted:Z
- .line 2039
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v0}, Landroid/widget/Scroller;->computeScrollOffset()Z
- .line 2040
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mScrollState:I
- const/4 v1, 0x2
- if-ne v0, v1, :cond_a
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v0}, Landroid/widget/Scroller;->getFinalX()I
- move-result v0
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v1}, Landroid/widget/Scroller;->getCurrX()I
- move-result v1
- sub-int/2addr v0, v1
- invoke-static {v0}, Ljava/lang/Math;->abs(I)I
- move-result v0
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mCloseEnough:I
- if-le v0, v1, :cond_a
- .line 2043
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v0}, Landroid/widget/Scroller;->abortAnimation()V
- .line 2044
- const/4 v0, 0x0
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- .line 2045
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->populate()V
- .line 2046
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- .line 2047
- const/4 v0, 0x1
- invoke-direct {p0, v0}, Landroid/support/v4/view/ViewPager;->requestParentDisallowInterceptTouchEvent(Z)V
- .line 2048
- const/4 v0, 0x1
- invoke-direct {p0, v0}, Landroid/support/v4/view/ViewPager;->setScrollState(I)V
- goto/16 :goto_1
- .line 2050
- :cond_a
- const/4 v0, 0x0
- invoke-direct {p0, v0}, Landroid/support/v4/view/ViewPager;->completeScroll(Z)V
- .line 2051
- const/4 v0, 0x0
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- goto/16 :goto_1
- .line 2061
- :sswitch_2
- invoke-direct {p0, p1}, Landroid/support/v4/view/ViewPager;->onSecondaryPointerUp(Landroid/view/MotionEvent;)V
- goto/16 :goto_1
- .line 1969
- :sswitch_data_0
- .sparse-switch
- 0x0 -> :sswitch_1
- 0x2 -> :sswitch_0
- 0x6 -> :sswitch_2
- .end sparse-switch
- .end method
- .method protected onLayout(ZIIII)V
- .locals 30
- .param p1, "changed" # Z
- .param p2, "l" # I
- .param p3, "t" # I
- .param p4, "r" # I
- .param p5, "b" # I
- .prologue
- .line 1604
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v9
- .line 1605
- .local v9, "count":I
- sub-int v24, p4, p2
- .line 1606
- .local v24, "width":I
- sub-int v11, p5, p3
- .line 1607
- .local v11, "height":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingLeft()I
- move-result v19
- .line 1608
- .local v19, "paddingLeft":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingTop()I
- move-result v21
- .line 1609
- .local v21, "paddingTop":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingRight()I
- move-result v20
- .line 1610
- .local v20, "paddingRight":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingBottom()I
- move-result v18
- .line 1611
- .local v18, "paddingBottom":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v22
- .line 1613
- .local v22, "scrollX":I
- const/4 v10, 0x0
- .line 1617
- .local v10, "decorCount":I
- const/4 v14, 0x0
- .local v14, "i":I
- :goto_0
- if-ge v14, v9, :cond_1
- .line 1618
- move-object/from16 v0, p0
- invoke-virtual {v0, v14}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v5
- .line 1619
- .local v5, "child":Landroid/view/View;
- invoke-virtual {v5}, Landroid/view/View;->getVisibility()I
- move-result v26
- const/16 v27, 0x8
- move/from16 v0, v26
- move/from16 v1, v27
- if-eq v0, v1, :cond_0
- .line 1620
- invoke-virtual {v5}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v17
- check-cast v17, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1621
- .local v17, "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- const/4 v6, 0x0
- .line 1622
- .local v6, "childLeft":I
- const/4 v7, 0x0
- .line 1623
- .local v7, "childTop":I
- move-object/from16 v0, v17
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- move/from16 v26, v0
- if-eqz v26, :cond_0
- .line 1624
- move-object/from16 v0, v17
- iget v0, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->gravity:I
- move/from16 v26, v0
- and-int/lit8 v13, v26, 0x7
- .line 1625
- .local v13, "hgrav":I
- move-object/from16 v0, v17
- iget v0, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->gravity:I
- move/from16 v26, v0
- and-int/lit8 v23, v26, 0x70
- .line 1626
- .local v23, "vgrav":I
- packed-switch v13, :pswitch_data_0
- .line 1628
- :pswitch_0
- move/from16 v6, v19
- .line 1643
- :goto_1
- sparse-switch v23, :sswitch_data_0
- .line 1645
- move/from16 v7, v21
- .line 1660
- :goto_2
- add-int v6, v6, v22
- .line 1661
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredWidth()I
- move-result v26
- add-int v26, v26, v6
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredHeight()I
- move-result v27
- add-int v27, v27, v7
- move/from16 v0, v26
- move/from16 v1, v27
- invoke-virtual {v5, v6, v7, v0, v1}, Landroid/view/View;->layout(IIII)V
- .line 1664
- add-int/lit8 v10, v10, 0x1
- .line 1617
- .end local v6 # "childLeft":I
- .end local v7 # "childTop":I
- .end local v13 # "hgrav":I
- .end local v17 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .end local v23 # "vgrav":I
- :cond_0
- add-int/lit8 v14, v14, 0x1
- goto :goto_0
- .line 1631
- .restart local v6 # "childLeft":I
- .restart local v7 # "childTop":I
- .restart local v13 # "hgrav":I
- .restart local v17 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .restart local v23 # "vgrav":I
- :pswitch_1
- move/from16 v6, v19
- .line 1632
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredWidth()I
- move-result v26
- add-int v19, v19, v26
- .line 1633
- goto :goto_1
- .line 1635
- :pswitch_2
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredWidth()I
- move-result v26
- sub-int v26, v24, v26
- div-int/lit8 v26, v26, 0x2
- move/from16 v0, v26
- move/from16 v1, v19
- invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I
- move-result v6
- .line 1637
- goto :goto_1
- .line 1639
- :pswitch_3
- sub-int v26, v24, v20
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredWidth()I
- move-result v27
- sub-int v6, v26, v27
- .line 1640
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredWidth()I
- move-result v26
- add-int v20, v20, v26
- goto :goto_1
- .line 1648
- :sswitch_0
- move/from16 v7, v21
- .line 1649
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredHeight()I
- move-result v26
- add-int v21, v21, v26
- .line 1650
- goto :goto_2
- .line 1652
- :sswitch_1
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredHeight()I
- move-result v26
- sub-int v26, v11, v26
- div-int/lit8 v26, v26, 0x2
- move/from16 v0, v26
- move/from16 v1, v21
- invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I
- move-result v7
- .line 1654
- goto :goto_2
- .line 1656
- :sswitch_2
- sub-int v26, v11, v18
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredHeight()I
- move-result v27
- sub-int v7, v26, v27
- .line 1657
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredHeight()I
- move-result v26
- add-int v18, v18, v26
- goto :goto_2
- .line 1669
- .end local v5 # "child":Landroid/view/View;
- .end local v6 # "childLeft":I
- .end local v7 # "childTop":I
- .end local v13 # "hgrav":I
- .end local v17 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .end local v23 # "vgrav":I
- :cond_1
- sub-int v26, v24, v19
- sub-int v8, v26, v20
- .line 1671
- .local v8, "childWidth":I
- const/4 v14, 0x0
- :goto_3
- if-ge v14, v9, :cond_4
- .line 1672
- move-object/from16 v0, p0
- invoke-virtual {v0, v14}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v5
- .line 1673
- .restart local v5 # "child":Landroid/view/View;
- invoke-virtual {v5}, Landroid/view/View;->getVisibility()I
- move-result v26
- const/16 v27, 0x8
- move/from16 v0, v26
- move/from16 v1, v27
- if-eq v0, v1, :cond_3
- .line 1674
- invoke-virtual {v5}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v17
- check-cast v17, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1676
- .restart local v17 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- move-object/from16 v0, v17
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- move/from16 v26, v0
- if-nez v26, :cond_3
- move-object/from16 v0, p0
- invoke-virtual {v0, v5}, Landroid/support/v4/view/ViewPager;->infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v15
- .local v15, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- if-eqz v15, :cond_3
- .line 1677
- int-to-float v0, v8
- move/from16 v26, v0
- iget v0, v15, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- move/from16 v27, v0
- mul-float v26, v26, v27
- move/from16 v0, v26
- float-to-int v0, v0
- move/from16 v16, v0
- .line 1678
- .local v16, "loff":I
- add-int v6, v19, v16
- .line 1679
- .restart local v6 # "childLeft":I
- move/from16 v7, v21
- .line 1680
- .restart local v7 # "childTop":I
- move-object/from16 v0, v17
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->needsMeasure:Z
- move/from16 v26, v0
- if-eqz v26, :cond_2
- .line 1683
- const/16 v26, 0x0
- move/from16 v0, v26
- move-object/from16 v1, v17
- iput-boolean v0, v1, Landroid/support/v4/view/ViewPager$LayoutParams;->needsMeasure:Z
- .line 1684
- int-to-float v0, v8
- move/from16 v26, v0
- move-object/from16 v0, v17
- iget v0, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->widthFactor:F
- move/from16 v27, v0
- mul-float v26, v26, v27
- move/from16 v0, v26
- float-to-int v0, v0
- move/from16 v26, v0
- const/high16 v27, 0x40000000 # 2.0f
- invoke-static/range {v26 .. v27}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v25
- .line 1687
- .local v25, "widthSpec":I
- sub-int v26, v11, v21
- sub-int v26, v26, v18
- const/high16 v27, 0x40000000 # 2.0f
- invoke-static/range {v26 .. v27}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v12
- .line 1690
- .local v12, "heightSpec":I
- move/from16 v0, v25
- invoke-virtual {v5, v0, v12}, Landroid/view/View;->measure(II)V
- .line 1695
- .end local v12 # "heightSpec":I
- .end local v25 # "widthSpec":I
- :cond_2
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredWidth()I
- move-result v26
- add-int v26, v26, v6
- invoke-virtual {v5}, Landroid/view/View;->getMeasuredHeight()I
- move-result v27
- add-int v27, v27, v7
- move/from16 v0, v26
- move/from16 v1, v27
- invoke-virtual {v5, v6, v7, v0, v1}, Landroid/view/View;->layout(IIII)V
- .line 1671
- .end local v6 # "childLeft":I
- .end local v7 # "childTop":I
- .end local v15 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v16 # "loff":I
- .end local v17 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- :cond_3
- add-int/lit8 v14, v14, 0x1
- goto/16 :goto_3
- .line 1701
- .end local v5 # "child":Landroid/view/View;
- :cond_4
- move/from16 v0, v21
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mTopPageBounds:I
- .line 1702
- sub-int v26, v11, v18
- move/from16 v0, v26
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mBottomPageBounds:I
- .line 1703
- move-object/from16 v0, p0
- iput v10, v0, Landroid/support/v4/view/ViewPager;->mDecorChildCount:I
- .line 1705
- move-object/from16 v0, p0
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- move/from16 v26, v0
- if-eqz v26, :cond_5
- .line 1706
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v26, v0
- const/16 v27, 0x0
- const/16 v28, 0x0
- const/16 v29, 0x0
- move-object/from16 v0, p0
- move/from16 v1, v26
- move/from16 v2, v27
- move/from16 v3, v28
- move/from16 v4, v29
- invoke-direct {v0, v1, v2, v3, v4}, Landroid/support/v4/view/ViewPager;->scrollToItem(IZIZ)V
- .line 1708
- :cond_5
- const/16 v26, 0x0
- move/from16 v0, v26
- move-object/from16 v1, p0
- iput-boolean v0, v1, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- .line 1709
- return-void
- .line 1626
- nop
- :pswitch_data_0
- .packed-switch 0x1
- :pswitch_2
- :pswitch_0
- :pswitch_1
- :pswitch_0
- :pswitch_3
- .end packed-switch
- .line 1643
- :sswitch_data_0
- .sparse-switch
- 0x10 -> :sswitch_1
- 0x30 -> :sswitch_0
- 0x50 -> :sswitch_2
- .end sparse-switch
- .end method
- .method protected onMeasure(II)V
- .locals 23
- .param p1, "widthMeasureSpec" # I
- .param p2, "heightMeasureSpec" # I
- .prologue
- .line 1478
- const/16 v21, 0x0
- move/from16 v0, v21
- move/from16 v1, p1
- invoke-static {v0, v1}, Landroid/support/v4/view/ViewPager;->getDefaultSize(II)I
- move-result v21
- const/16 v22, 0x0
- move/from16 v0, v22
- move/from16 v1, p2
- invoke-static {v0, v1}, Landroid/support/v4/view/ViewPager;->getDefaultSize(II)I
- move-result v22
- move-object/from16 v0, p0
- move/from16 v1, v21
- move/from16 v2, v22
- invoke-virtual {v0, v1, v2}, Landroid/support/v4/view/ViewPager;->setMeasuredDimension(II)V
- .line 1481
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getMeasuredWidth()I
- move-result v15
- .line 1482
- .local v15, "measuredWidth":I
- div-int/lit8 v14, v15, 0xa
- .line 1483
- .local v14, "maxGutterSize":I
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mDefaultGutterSize:I
- move/from16 v21, v0
- move/from16 v0, v21
- invoke-static {v14, v0}, Ljava/lang/Math;->min(II)I
- move-result v21
- move/from16 v0, v21
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mGutterSize:I
- .line 1486
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingLeft()I
- move-result v21
- sub-int v21, v15, v21
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingRight()I
- move-result v22
- sub-int v5, v21, v22
- .line 1487
- .local v5, "childWidthSize":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getMeasuredHeight()I
- move-result v21
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingTop()I
- move-result v22
- sub-int v21, v21, v22
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingBottom()I
- move-result v22
- sub-int v4, v21, v22
- .line 1494
- .local v4, "childHeightSize":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v16
- .line 1495
- .local v16, "size":I
- const/4 v12, 0x0
- .local v12, "i":I
- :goto_0
- move/from16 v0, v16
- if-ge v12, v0, :cond_a
- .line 1496
- move-object/from16 v0, p0
- invoke-virtual {v0, v12}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v3
- .line 1497
- .local v3, "child":Landroid/view/View;
- invoke-virtual {v3}, Landroid/view/View;->getVisibility()I
- move-result v21
- const/16 v22, 0x8
- move/from16 v0, v21
- move/from16 v1, v22
- if-eq v0, v1, :cond_5
- .line 1498
- invoke-virtual {v3}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v13
- check-cast v13, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1499
- .local v13, "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- if-eqz v13, :cond_5
- iget-boolean v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- move/from16 v21, v0
- if-eqz v21, :cond_5
- .line 1500
- iget v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->gravity:I
- move/from16 v21, v0
- and-int/lit8 v11, v21, 0x7
- .line 1501
- .local v11, "hgrav":I
- iget v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->gravity:I
- move/from16 v21, v0
- and-int/lit8 v17, v21, 0x70
- .line 1502
- .local v17, "vgrav":I
- const/high16 v18, -0x80000000
- .line 1503
- .local v18, "widthMode":I
- const/high16 v8, -0x80000000
- .line 1504
- .local v8, "heightMode":I
- const/16 v21, 0x30
- move/from16 v0, v17
- move/from16 v1, v21
- if-eq v0, v1, :cond_0
- const/16 v21, 0x50
- move/from16 v0, v17
- move/from16 v1, v21
- if-ne v0, v1, :cond_6
- :cond_0
- const/4 v7, 0x1
- .line 1505
- .local v7, "consumeVertical":Z
- :goto_1
- const/16 v21, 0x3
- move/from16 v0, v21
- if-eq v11, v0, :cond_1
- const/16 v21, 0x5
- move/from16 v0, v21
- if-ne v11, v0, :cond_7
- :cond_1
- const/4 v6, 0x1
- .line 1507
- .local v6, "consumeHorizontal":Z
- :goto_2
- if-eqz v7, :cond_8
- .line 1508
- const/high16 v18, 0x40000000 # 2.0f
- .line 1513
- :cond_2
- :goto_3
- move/from16 v19, v5
- .line 1514
- .local v19, "widthSize":I
- move v9, v4
- .line 1515
- .local v9, "heightSize":I
- iget v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->width:I
- move/from16 v21, v0
- const/16 v22, -0x2
- move/from16 v0, v21
- move/from16 v1, v22
- if-eq v0, v1, :cond_3
- .line 1516
- const/high16 v18, 0x40000000 # 2.0f
- .line 1517
- iget v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->width:I
- move/from16 v21, v0
- const/16 v22, -0x1
- move/from16 v0, v21
- move/from16 v1, v22
- if-eq v0, v1, :cond_3
- .line 1518
- iget v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->width:I
- move/from16 v19, v0
- .line 1521
- :cond_3
- iget v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->height:I
- move/from16 v21, v0
- const/16 v22, -0x2
- move/from16 v0, v21
- move/from16 v1, v22
- if-eq v0, v1, :cond_4
- .line 1522
- const/high16 v8, 0x40000000 # 2.0f
- .line 1523
- iget v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->height:I
- move/from16 v21, v0
- const/16 v22, -0x1
- move/from16 v0, v21
- move/from16 v1, v22
- if-eq v0, v1, :cond_4
- .line 1524
- iget v9, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->height:I
- .line 1527
- :cond_4
- move/from16 v0, v19
- move/from16 v1, v18
- invoke-static {v0, v1}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v20
- .line 1528
- .local v20, "widthSpec":I
- invoke-static {v9, v8}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v10
- .line 1529
- .local v10, "heightSpec":I
- move/from16 v0, v20
- invoke-virtual {v3, v0, v10}, Landroid/view/View;->measure(II)V
- .line 1531
- if-eqz v7, :cond_9
- .line 1532
- invoke-virtual {v3}, Landroid/view/View;->getMeasuredHeight()I
- move-result v21
- sub-int v4, v4, v21
- .line 1495
- .end local v6 # "consumeHorizontal":Z
- .end local v7 # "consumeVertical":Z
- .end local v8 # "heightMode":I
- .end local v9 # "heightSize":I
- .end local v10 # "heightSpec":I
- .end local v11 # "hgrav":I
- .end local v13 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .end local v17 # "vgrav":I
- .end local v18 # "widthMode":I
- .end local v19 # "widthSize":I
- .end local v20 # "widthSpec":I
- :cond_5
- :goto_4
- add-int/lit8 v12, v12, 0x1
- goto/16 :goto_0
- .line 1504
- .restart local v8 # "heightMode":I
- .restart local v11 # "hgrav":I
- .restart local v13 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .restart local v17 # "vgrav":I
- .restart local v18 # "widthMode":I
- :cond_6
- const/4 v7, 0x0
- goto :goto_1
- .line 1505
- .restart local v7 # "consumeVertical":Z
- :cond_7
- const/4 v6, 0x0
- goto :goto_2
- .line 1509
- .restart local v6 # "consumeHorizontal":Z
- :cond_8
- if-eqz v6, :cond_2
- .line 1510
- const/high16 v8, 0x40000000 # 2.0f
- goto :goto_3
- .line 1533
- .restart local v9 # "heightSize":I
- .restart local v10 # "heightSpec":I
- .restart local v19 # "widthSize":I
- .restart local v20 # "widthSpec":I
- :cond_9
- if-eqz v6, :cond_5
- .line 1534
- invoke-virtual {v3}, Landroid/view/View;->getMeasuredWidth()I
- move-result v21
- sub-int v5, v5, v21
- goto :goto_4
- .line 1540
- .end local v3 # "child":Landroid/view/View;
- .end local v6 # "consumeHorizontal":Z
- .end local v7 # "consumeVertical":Z
- .end local v8 # "heightMode":I
- .end local v9 # "heightSize":I
- .end local v10 # "heightSpec":I
- .end local v11 # "hgrav":I
- .end local v13 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .end local v17 # "vgrav":I
- .end local v18 # "widthMode":I
- .end local v19 # "widthSize":I
- .end local v20 # "widthSpec":I
- :cond_a
- const/high16 v21, 0x40000000 # 2.0f
- move/from16 v0, v21
- invoke-static {v5, v0}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v21
- move/from16 v0, v21
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mChildWidthMeasureSpec:I
- .line 1541
- const/high16 v21, 0x40000000 # 2.0f
- move/from16 v0, v21
- invoke-static {v4, v0}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v21
- move/from16 v0, v21
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mChildHeightMeasureSpec:I
- .line 1544
- const/16 v21, 0x1
- move/from16 v0, v21
- move-object/from16 v1, p0
- iput-boolean v0, v1, Landroid/support/v4/view/ViewPager;->mInLayout:Z
- .line 1545
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->populate()V
- .line 1546
- const/16 v21, 0x0
- move/from16 v0, v21
- move-object/from16 v1, p0
- iput-boolean v0, v1, Landroid/support/v4/view/ViewPager;->mInLayout:Z
- .line 1549
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v16
- .line 1550
- const/4 v12, 0x0
- :goto_5
- move/from16 v0, v16
- if-ge v12, v0, :cond_d
- .line 1551
- move-object/from16 v0, p0
- invoke-virtual {v0, v12}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v3
- .line 1552
- .restart local v3 # "child":Landroid/view/View;
- invoke-virtual {v3}, Landroid/view/View;->getVisibility()I
- move-result v21
- const/16 v22, 0x8
- move/from16 v0, v21
- move/from16 v1, v22
- if-eq v0, v1, :cond_c
- .line 1556
- invoke-virtual {v3}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v13
- check-cast v13, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1557
- .restart local v13 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- if-eqz v13, :cond_b
- iget-boolean v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- move/from16 v21, v0
- if-nez v21, :cond_c
- .line 1558
- :cond_b
- int-to-float v0, v5
- move/from16 v21, v0
- iget v0, v13, Landroid/support/v4/view/ViewPager$LayoutParams;->widthFactor:F
- move/from16 v22, v0
- mul-float v21, v21, v22
- move/from16 v0, v21
- float-to-int v0, v0
- move/from16 v21, v0
- const/high16 v22, 0x40000000 # 2.0f
- invoke-static/range {v21 .. v22}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v20
- .line 1560
- .restart local v20 # "widthSpec":I
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mChildHeightMeasureSpec:I
- move/from16 v21, v0
- move/from16 v0, v20
- move/from16 v1, v21
- invoke-virtual {v3, v0, v1}, Landroid/view/View;->measure(II)V
- .line 1550
- .end local v13 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .end local v20 # "widthSpec":I
- :cond_c
- add-int/lit8 v12, v12, 0x1
- goto :goto_5
- .line 1564
- .end local v3 # "child":Landroid/view/View;
- :cond_d
- return-void
- .end method
- .method protected onPageScrolled(IFI)V
- .locals 14
- .param p1, "position" # I
- .param p2, "offset" # F
- .param p3, "offsetPixels" # I
- .annotation build Landroid/support/annotation/CallSuper;
- .end annotation
- .prologue
- .line 1780
- iget v12, p0, Landroid/support/v4/view/ViewPager;->mDecorChildCount:I
- if-lez v12, :cond_2
- .line 1781
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v9
- .line 1782
- .local v9, "scrollX":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingLeft()I
- move-result v7
- .line 1783
- .local v7, "paddingLeft":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getPaddingRight()I
- move-result v8
- .line 1784
- .local v8, "paddingRight":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getWidth()I
- move-result v11
- .line 1785
- .local v11, "width":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v1
- .line 1786
- .local v1, "childCount":I
- const/4 v5, 0x0
- .local v5, "i":I
- :goto_0
- if-ge v5, v1, :cond_2
- .line 1787
- invoke-virtual {p0, v5}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v0
- .line 1788
- .local v0, "child":Landroid/view/View;
- invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v6
- check-cast v6, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1789
- .local v6, "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- iget-boolean v12, v6, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- if-nez v12, :cond_1
- .line 1786
- :cond_0
- :goto_1
- add-int/lit8 v5, v5, 0x1
- goto :goto_0
- .line 1791
- :cond_1
- iget v12, v6, Landroid/support/v4/view/ViewPager$LayoutParams;->gravity:I
- and-int/lit8 v4, v12, 0x7
- .line 1792
- .local v4, "hgrav":I
- const/4 v2, 0x0
- .line 1793
- .local v2, "childLeft":I
- packed-switch v4, :pswitch_data_0
- .line 1795
- :pswitch_0
- move v2, v7
- .line 1810
- :goto_2
- add-int/2addr v2, v9
- .line 1812
- invoke-virtual {v0}, Landroid/view/View;->getLeft()I
- move-result v12
- sub-int v3, v2, v12
- .line 1813
- .local v3, "childOffset":I
- if-eqz v3, :cond_0
- .line 1814
- invoke-virtual {v0, v3}, Landroid/view/View;->offsetLeftAndRight(I)V
- goto :goto_1
- .line 1798
- .end local v3 # "childOffset":I
- :pswitch_1
- move v2, v7
- .line 1799
- invoke-virtual {v0}, Landroid/view/View;->getWidth()I
- move-result v12
- add-int/2addr v7, v12
- .line 1800
- goto :goto_2
- .line 1802
- :pswitch_2
- invoke-virtual {v0}, Landroid/view/View;->getMeasuredWidth()I
- move-result v12
- sub-int v12, v11, v12
- div-int/lit8 v12, v12, 0x2
- invoke-static {v12, v7}, Ljava/lang/Math;->max(II)I
- move-result v2
- .line 1804
- goto :goto_2
- .line 1806
- :pswitch_3
- sub-int v12, v11, v8
- invoke-virtual {v0}, Landroid/view/View;->getMeasuredWidth()I
- move-result v13
- sub-int v2, v12, v13
- .line 1807
- invoke-virtual {v0}, Landroid/view/View;->getMeasuredWidth()I
- move-result v12
- add-int/2addr v8, v12
- goto :goto_2
- .line 1819
- .end local v0 # "child":Landroid/view/View;
- .end local v1 # "childCount":I
- .end local v2 # "childLeft":I
- .end local v4 # "hgrav":I
- .end local v5 # "i":I
- .end local v6 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .end local v7 # "paddingLeft":I
- .end local v8 # "paddingRight":I
- .end local v9 # "scrollX":I
- .end local v11 # "width":I
- :cond_2
- invoke-direct/range {p0 .. p3}, Landroid/support/v4/view/ViewPager;->dispatchOnPageScrolled(IFI)V
- .line 1821
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mPageTransformer:Landroid/support/v4/view/ViewPager$PageTransformer;
- if-eqz v12, :cond_4
- .line 1822
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v9
- .line 1823
- .restart local v9 # "scrollX":I
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v1
- .line 1824
- .restart local v1 # "childCount":I
- const/4 v5, 0x0
- .restart local v5 # "i":I
- :goto_3
- if-ge v5, v1, :cond_4
- .line 1825
- invoke-virtual {p0, v5}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v0
- .line 1826
- .restart local v0 # "child":Landroid/view/View;
- invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v6
- check-cast v6, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1828
- .restart local v6 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- iget-boolean v12, v6, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- if-eqz v12, :cond_3
- .line 1824
- :goto_4
- add-int/lit8 v5, v5, 0x1
- goto :goto_3
- .line 1829
- :cond_3
- invoke-virtual {v0}, Landroid/view/View;->getLeft()I
- move-result v12
- sub-int/2addr v12, v9
- int-to-float v12, v12
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v13
- int-to-float v13, v13
- div-float v10, v12, v13
- .line 1830
- .local v10, "transformPos":F
- iget-object v12, p0, Landroid/support/v4/view/ViewPager;->mPageTransformer:Landroid/support/v4/view/ViewPager$PageTransformer;
- invoke-interface {v12, v0, v10}, Landroid/support/v4/view/ViewPager$PageTransformer;->transformPage(Landroid/view/View;F)V
- goto :goto_4
- .line 1834
- .end local v0 # "child":Landroid/view/View;
- .end local v1 # "childCount":I
- .end local v5 # "i":I
- .end local v6 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .end local v9 # "scrollX":I
- .end local v10 # "transformPos":F
- :cond_4
- const/4 v12, 0x1
- iput-boolean v12, p0, Landroid/support/v4/view/ViewPager;->mCalledSuper:Z
- .line 1835
- return-void
- .line 1793
- :pswitch_data_0
- .packed-switch 0x1
- :pswitch_2
- :pswitch_0
- :pswitch_1
- :pswitch_0
- :pswitch_3
- .end packed-switch
- .end method
- .method protected onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z
- .locals 9
- .param p1, "direction" # I
- .param p2, "previouslyFocusedRect" # Landroid/graphics/Rect;
- .prologue
- .line 2862
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v1
- .line 2863
- .local v1, "count":I
- and-int/lit8 v7, p1, 0x2
- if-eqz v7, :cond_0
- .line 2864
- const/4 v6, 0x0
- .line 2865
- .local v6, "index":I
- const/4 v5, 0x1
- .line 2866
- .local v5, "increment":I
- move v2, v1
- .line 2872
- .local v2, "end":I
- :goto_0
- move v3, v6
- .local v3, "i":I
- :goto_1
- if-eq v3, v2, :cond_2
- .line 2873
- invoke-virtual {p0, v3}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v0
- .line 2874
- .local v0, "child":Landroid/view/View;
- invoke-virtual {v0}, Landroid/view/View;->getVisibility()I
- move-result v7
- if-nez v7, :cond_1
- .line 2875
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v4
- .line 2876
- .local v4, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- if-eqz v4, :cond_1
- iget v7, v4, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- iget v8, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-ne v7, v8, :cond_1
- .line 2877
- invoke-virtual {v0, p1, p2}, Landroid/view/View;->requestFocus(ILandroid/graphics/Rect;)Z
- move-result v7
- if-eqz v7, :cond_1
- .line 2878
- const/4 v7, 0x1
- .line 2883
- .end local v0 # "child":Landroid/view/View;
- .end local v4 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_2
- return v7
- .line 2868
- .end local v2 # "end":I
- .end local v3 # "i":I
- .end local v5 # "increment":I
- .end local v6 # "index":I
- :cond_0
- add-int/lit8 v6, v1, -0x1
- .line 2869
- .restart local v6 # "index":I
- const/4 v5, -0x1
- .line 2870
- .restart local v5 # "increment":I
- const/4 v2, -0x1
- .restart local v2 # "end":I
- goto :goto_0
- .line 2872
- .restart local v0 # "child":Landroid/view/View;
- .restart local v3 # "i":I
- :cond_1
- add-int/2addr v3, v5
- goto :goto_1
- .line 2883
- .end local v0 # "child":Landroid/view/View;
- :cond_2
- const/4 v7, 0x0
- goto :goto_2
- .end method
- .method public onRestoreInstanceState(Landroid/os/Parcelable;)V
- .locals 4
- .param p1, "state" # Landroid/os/Parcelable;
- .prologue
- .line 1381
- instance-of v1, p1, Landroid/support/v4/view/ViewPager$SavedState;
- if-nez v1, :cond_0
- .line 1382
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->onRestoreInstanceState(Landroid/os/Parcelable;)V
- .line 1397
- :goto_0
- return-void
- :cond_0
- move-object v0, p1
- .line 1386
- check-cast v0, Landroid/support/v4/view/ViewPager$SavedState;
- .line 1387
- .local v0, "ss":Landroid/support/v4/view/ViewPager$SavedState;
- invoke-virtual {v0}, Landroid/support/v4/view/ViewPager$SavedState;->getSuperState()Landroid/os/Parcelable;
- move-result-object v1
- invoke-super {p0, v1}, Landroid/view/ViewGroup;->onRestoreInstanceState(Landroid/os/Parcelable;)V
- .line 1389
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v1, :cond_1
- .line 1390
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- iget-object v2, v0, Landroid/support/v4/view/ViewPager$SavedState;->adapterState:Landroid/os/Parcelable;
- iget-object v3, v0, Landroid/support/v4/view/ViewPager$SavedState;->loader:Ljava/lang/ClassLoader;
- invoke-virtual {v1, v2, v3}, Landroid/support/v4/view/PagerAdapter;->restoreState(Landroid/os/Parcelable;Ljava/lang/ClassLoader;)V
- .line 1391
- iget v1, v0, Landroid/support/v4/view/ViewPager$SavedState;->position:I
- const/4 v2, 0x0
- const/4 v3, 0x1
- invoke-virtual {p0, v1, v2, v3}, Landroid/support/v4/view/ViewPager;->setCurrentItemInternal(IZZ)V
- goto :goto_0
- .line 1393
- :cond_1
- iget v1, v0, Landroid/support/v4/view/ViewPager$SavedState;->position:I
- iput v1, p0, Landroid/support/v4/view/ViewPager;->mRestoredCurItem:I
- .line 1394
- iget-object v1, v0, Landroid/support/v4/view/ViewPager$SavedState;->adapterState:Landroid/os/Parcelable;
- iput-object v1, p0, Landroid/support/v4/view/ViewPager;->mRestoredAdapterState:Landroid/os/Parcelable;
- .line 1395
- iget-object v1, v0, Landroid/support/v4/view/ViewPager$SavedState;->loader:Ljava/lang/ClassLoader;
- iput-object v1, p0, Landroid/support/v4/view/ViewPager;->mRestoredClassLoader:Ljava/lang/ClassLoader;
- goto :goto_0
- .end method
- .method public onSaveInstanceState()Landroid/os/Parcelable;
- .locals 3
- .prologue
- .line 1370
- invoke-super {p0}, Landroid/view/ViewGroup;->onSaveInstanceState()Landroid/os/Parcelable;
- move-result-object v1
- .line 1371
- .local v1, "superState":Landroid/os/Parcelable;
- new-instance v0, Landroid/support/v4/view/ViewPager$SavedState;
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager$SavedState;-><init>(Landroid/os/Parcelable;)V
- .line 1372
- .local v0, "ss":Landroid/support/v4/view/ViewPager$SavedState;
- iget v2, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- iput v2, v0, Landroid/support/v4/view/ViewPager$SavedState;->position:I
- .line 1373
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v2, :cond_0
- .line 1374
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v2}, Landroid/support/v4/view/PagerAdapter;->saveState()Landroid/os/Parcelable;
- move-result-object v2
- iput-object v2, v0, Landroid/support/v4/view/ViewPager$SavedState;->adapterState:Landroid/os/Parcelable;
- .line 1376
- :cond_0
- return-object v0
- .end method
- .method protected onSizeChanged(IIII)V
- .locals 2
- .param p1, "w" # I
- .param p2, "h" # I
- .param p3, "oldw" # I
- .param p4, "oldh" # I
- .prologue
- .line 1568
- invoke-super {p0, p1, p2, p3, p4}, Landroid/view/ViewGroup;->onSizeChanged(IIII)V
- .line 1571
- if-eq p1, p3, :cond_0
- .line 1572
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- invoke-direct {p0, p1, p3, v0, v1}, Landroid/support/v4/view/ViewPager;->recomputeScrollPosition(IIII)V
- .line 1574
- :cond_0
- return-void
- .end method
- .method public onTouchEvent(Landroid/view/MotionEvent;)Z
- .locals 28
- .param p1, "ev" # Landroid/view/MotionEvent;
- .prologue
- .line 2079
- move-object/from16 v0, p0
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager;->mFakeDragging:Z
- move/from16 v24, v0
- if-eqz v24, :cond_0
- .line 2083
- const/16 v24, 0x1
- .line 2201
- :goto_0
- return v24
- .line 2086
- :cond_0
- invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getAction()I
- move-result v24
- if-nez v24, :cond_1
- invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getEdgeFlags()I
- move-result v24
- if-eqz v24, :cond_1
- .line 2089
- const/16 v24, 0x0
- goto :goto_0
- .line 2092
- :cond_1
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v24, v0
- if-eqz v24, :cond_2
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v24, v0
- invoke-virtual/range {v24 .. v24}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v24
- if-nez v24, :cond_3
- .line 2094
- :cond_2
- const/16 v24, 0x0
- goto :goto_0
- .line 2097
- :cond_3
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- move-object/from16 v24, v0
- if-nez v24, :cond_4
- .line 2098
- invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker;
- move-result-object v24
- move-object/from16 v0, v24
- move-object/from16 v1, p0
- iput-object v0, v1, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- .line 2100
- :cond_4
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- move-object/from16 v24, v0
- move-object/from16 v0, v24
- move-object/from16 v1, p1
- invoke-virtual {v0, v1}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
- .line 2102
- invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getAction()I
- move-result v5
- .line 2103
- .local v5, "action":I
- const/4 v11, 0x0
- .line 2105
- .local v11, "needsInvalidate":Z
- and-int/lit16 v0, v5, 0xff
- move/from16 v24, v0
- packed-switch v24, :pswitch_data_0
- .line 2198
- :cond_5
- :goto_1
- :pswitch_0
- if-eqz v11, :cond_6
- .line 2199
- invoke-static/range {p0 .. p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- .line 2201
- :cond_6
- const/16 v24, 0x1
- goto :goto_0
- .line 2107
- :pswitch_1
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- move-object/from16 v24, v0
- invoke-virtual/range {v24 .. v24}, Landroid/widget/Scroller;->abortAnimation()V
- .line 2108
- const/16 v24, 0x0
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput-boolean v0, v1, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- .line 2109
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->populate()V
- .line 2112
- invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getX()F
- move-result v24
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2113
- invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getY()F
- move-result v24
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mInitialMotionY:F
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mLastMotionY:F
- .line 2114
- const/16 v24, 0x0
- move-object/from16 v0, p1
- move/from16 v1, v24
- invoke-static {v0, v1}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v24
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- goto :goto_1
- .line 2118
- :pswitch_2
- move-object/from16 v0, p0
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- move/from16 v24, v0
- if-nez v24, :cond_8
- .line 2119
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- move/from16 v24, v0
- move-object/from16 v0, p1
- move/from16 v1, v24
- invoke-static {v0, v1}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
- move-result v15
- .line 2120
- .local v15, "pointerIndex":I
- const/16 v24, -0x1
- move/from16 v0, v24
- if-ne v15, v0, :cond_7
- .line 2122
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->resetTouch()Z
- move-result v11
- .line 2123
- goto :goto_1
- .line 2125
- :cond_7
- move-object/from16 v0, p1
- invoke-static {v0, v15}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v20
- .line 2126
- .local v20, "x":F
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- move/from16 v24, v0
- sub-float v24, v20, v24
- invoke-static/range {v24 .. v24}, Ljava/lang/Math;->abs(F)F
- move-result v21
- .line 2127
- .local v21, "xDiff":F
- move-object/from16 v0, p1
- invoke-static {v0, v15}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
- move-result v22
- .line 2128
- .local v22, "y":F
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mLastMotionY:F
- move/from16 v24, v0
- sub-float v24, v22, v24
- invoke-static/range {v24 .. v24}, Ljava/lang/Math;->abs(F)F
- move-result v23
- .line 2130
- .local v23, "yDiff":F
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mTouchSlop:I
- move/from16 v24, v0
- move/from16 v0, v24
- int-to-float v0, v0
- move/from16 v24, v0
- cmpl-float v24, v21, v24
- if-lez v24, :cond_8
- cmpl-float v24, v21, v23
- if-lez v24, :cond_8
- .line 2132
- const/16 v24, 0x1
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput-boolean v0, v1, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- .line 2133
- const/16 v24, 0x1
- move-object/from16 v0, p0
- move/from16 v1, v24
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->requestParentDisallowInterceptTouchEvent(Z)V
- .line 2134
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- move/from16 v24, v0
- sub-float v24, v20, v24
- const/16 v25, 0x0
- cmpl-float v24, v24, v25
- if-lez v24, :cond_9
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- move/from16 v24, v0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mTouchSlop:I
- move/from16 v25, v0
- move/from16 v0, v25
- int-to-float v0, v0
- move/from16 v25, v0
- add-float v24, v24, v25
- :goto_2
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2136
- move/from16 v0, v22
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mLastMotionY:F
- .line 2137
- const/16 v24, 0x1
- move-object/from16 v0, p0
- move/from16 v1, v24
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->setScrollState(I)V
- .line 2138
- const/16 v24, 0x1
- move-object/from16 v0, p0
- move/from16 v1, v24
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->setScrollingCacheEnabled(Z)V
- .line 2141
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getParent()Landroid/view/ViewParent;
- move-result-object v14
- .line 2142
- .local v14, "parent":Landroid/view/ViewParent;
- if-eqz v14, :cond_8
- .line 2143
- const/16 v24, 0x1
- move/from16 v0, v24
- invoke-interface {v14, v0}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V
- .line 2148
- .end local v14 # "parent":Landroid/view/ViewParent;
- .end local v15 # "pointerIndex":I
- .end local v20 # "x":F
- .end local v21 # "xDiff":F
- .end local v22 # "y":F
- .end local v23 # "yDiff":F
- :cond_8
- move-object/from16 v0, p0
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- move/from16 v24, v0
- if-eqz v24, :cond_5
- .line 2150
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- move/from16 v24, v0
- move-object/from16 v0, p1
- move/from16 v1, v24
- invoke-static {v0, v1}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
- move-result v6
- .line 2152
- .local v6, "activePointerIndex":I
- move-object/from16 v0, p1
- invoke-static {v0, v6}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v20
- .line 2153
- .restart local v20 # "x":F
- move-object/from16 v0, p0
- move/from16 v1, v20
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->performDrag(F)Z
- move-result v24
- or-int v11, v11, v24
- .line 2154
- goto/16 :goto_1
- .line 2134
- .end local v6 # "activePointerIndex":I
- .restart local v15 # "pointerIndex":I
- .restart local v21 # "xDiff":F
- .restart local v22 # "y":F
- .restart local v23 # "yDiff":F
- :cond_9
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- move/from16 v24, v0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mTouchSlop:I
- move/from16 v25, v0
- move/from16 v0, v25
- int-to-float v0, v0
- move/from16 v25, v0
- sub-float v24, v24, v25
- goto :goto_2
- .line 2157
- .end local v15 # "pointerIndex":I
- .end local v20 # "x":F
- .end local v21 # "xDiff":F
- .end local v22 # "y":F
- .end local v23 # "yDiff":F
- :pswitch_3
- move-object/from16 v0, p0
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- move/from16 v24, v0
- if-eqz v24, :cond_5
- .line 2158
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mVelocityTracker:Landroid/view/VelocityTracker;
- move-object/from16 v18, v0
- .line 2159
- .local v18, "velocityTracker":Landroid/view/VelocityTracker;
- const/16 v24, 0x3e8
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mMaximumVelocity:I
- move/from16 v25, v0
- move/from16 v0, v25
- int-to-float v0, v0
- move/from16 v25, v0
- move-object/from16 v0, v18
- move/from16 v1, v24
- move/from16 v2, v25
- invoke-virtual {v0, v1, v2}, Landroid/view/VelocityTracker;->computeCurrentVelocity(IF)V
- .line 2160
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- move/from16 v24, v0
- move-object/from16 v0, v18
- move/from16 v1, v24
- invoke-static {v0, v1}, Landroid/support/v4/view/VelocityTrackerCompat;->getXVelocity(Landroid/view/VelocityTracker;I)F
- move-result v24
- move/from16 v0, v24
- float-to-int v10, v0
- .line 2162
- .local v10, "initialVelocity":I
- const/16 v24, 0x1
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput-boolean v0, v1, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- .line 2163
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v19
- .line 2164
- .local v19, "width":I
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v16
- .line 2165
- .local v16, "scrollX":I
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->infoForCurrentScrollPosition()Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v8
- .line 2166
- .local v8, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget v7, v8, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- .line 2167
- .local v7, "currentPage":I
- move/from16 v0, v16
- int-to-float v0, v0
- move/from16 v24, v0
- move/from16 v0, v19
- int-to-float v0, v0
- move/from16 v25, v0
- div-float v24, v24, v25
- iget v0, v8, Landroid/support/v4/view/ViewPager$ItemInfo;->offset:F
- move/from16 v25, v0
- sub-float v24, v24, v25
- iget v0, v8, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- move/from16 v25, v0
- div-float v13, v24, v25
- .line 2168
- .local v13, "pageOffset":F
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- move/from16 v24, v0
- move-object/from16 v0, p1
- move/from16 v1, v24
- invoke-static {v0, v1}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
- move-result v6
- .line 2170
- .restart local v6 # "activePointerIndex":I
- move-object/from16 v0, p1
- invoke-static {v0, v6}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v20
- .line 2171
- .restart local v20 # "x":F
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mInitialMotionX:F
- move/from16 v24, v0
- sub-float v24, v20, v24
- move/from16 v0, v24
- float-to-int v0, v0
- move/from16 v17, v0
- .line 2172
- .local v17, "totalDelta":I
- move-object/from16 v0, p0
- move/from16 v1, v17
- invoke-direct {v0, v7, v13, v10, v1}, Landroid/support/v4/view/ViewPager;->determineTargetPage(IFII)I
- move-result v12
- .line 2174
- .local v12, "nextPage":I
- const/16 v24, 0x1
- const/16 v25, 0x1
- move-object/from16 v0, p0
- move/from16 v1, v24
- move/from16 v2, v25
- invoke-virtual {v0, v12, v1, v2, v10}, Landroid/support/v4/view/ViewPager;->setCurrentItemInternal(IZZI)V
- .line 2176
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->resetTouch()Z
- move-result v11
- .line 2177
- goto/16 :goto_1
- .line 2180
- .end local v6 # "activePointerIndex":I
- .end local v7 # "currentPage":I
- .end local v8 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v10 # "initialVelocity":I
- .end local v12 # "nextPage":I
- .end local v13 # "pageOffset":F
- .end local v16 # "scrollX":I
- .end local v17 # "totalDelta":I
- .end local v18 # "velocityTracker":Landroid/view/VelocityTracker;
- .end local v19 # "width":I
- .end local v20 # "x":F
- :pswitch_4
- move-object/from16 v0, p0
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager;->mIsBeingDragged:Z
- move/from16 v24, v0
- if-eqz v24, :cond_5
- .line 2181
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v24, v0
- const/16 v25, 0x1
- const/16 v26, 0x0
- const/16 v27, 0x0
- move-object/from16 v0, p0
- move/from16 v1, v24
- move/from16 v2, v25
- move/from16 v3, v26
- move/from16 v4, v27
- invoke-direct {v0, v1, v2, v3, v4}, Landroid/support/v4/view/ViewPager;->scrollToItem(IZIZ)V
- .line 2182
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->resetTouch()Z
- move-result v11
- goto/16 :goto_1
- .line 2186
- :pswitch_5
- invoke-static/range {p1 .. p1}, Landroid/support/v4/view/MotionEventCompat;->getActionIndex(Landroid/view/MotionEvent;)I
- move-result v9
- .line 2187
- .local v9, "index":I
- move-object/from16 v0, p1
- invoke-static {v0, v9}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v20
- .line 2188
- .restart local v20 # "x":F
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- .line 2189
- move-object/from16 v0, p1
- invoke-static {v0, v9}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v24
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- goto/16 :goto_1
- .line 2193
- .end local v9 # "index":I
- .end local v20 # "x":F
- :pswitch_6
- invoke-direct/range {p0 .. p1}, Landroid/support/v4/view/ViewPager;->onSecondaryPointerUp(Landroid/view/MotionEvent;)V
- .line 2194
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mActivePointerId:I
- move/from16 v24, v0
- move-object/from16 v0, p1
- move/from16 v1, v24
- invoke-static {v0, v1}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
- move-result v24
- move-object/from16 v0, p1
- move/from16 v1, v24
- invoke-static {v0, v1}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v24
- move/from16 v0, v24
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mLastMotionX:F
- goto/16 :goto_1
- .line 2105
- nop
- :pswitch_data_0
- .packed-switch 0x0
- :pswitch_1
- :pswitch_3
- :pswitch_2
- :pswitch_4
- :pswitch_0
- :pswitch_5
- :pswitch_6
- .end packed-switch
- .end method
- .method pageLeft()Z
- .locals 2
- .prologue
- const/4 v0, 0x1
- .line 2775
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-lez v1, :cond_0
- .line 2776
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- add-int/lit8 v1, v1, -0x1
- invoke-virtual {p0, v1, v0}, Landroid/support/v4/view/ViewPager;->setCurrentItem(IZ)V
- .line 2779
- :goto_0
- return v0
- :cond_0
- const/4 v0, 0x0
- goto :goto_0
- .end method
- .method pageRight()Z
- .locals 3
- .prologue
- const/4 v0, 0x1
- .line 2783
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v1, :cond_0
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v2}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v2
- add-int/lit8 v2, v2, -0x1
- if-ge v1, v2, :cond_0
- .line 2784
- iget v1, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- add-int/lit8 v1, v1, 0x1
- invoke-virtual {p0, v1, v0}, Landroid/support/v4/view/ViewPager;->setCurrentItem(IZ)V
- .line 2787
- :goto_0
- return v0
- :cond_0
- const/4 v0, 0x0
- goto :goto_0
- .end method
- .method populate()V
- .locals 1
- .prologue
- .line 1025
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->populate(I)V
- .line 1026
- return-void
- .end method
- .method populate(I)V
- .locals 29
- .param p1, "newCurrentItem" # I
- .prologue
- .line 1029
- const/16 v20, 0x0
- .line 1030
- .local v20, "oldCurInfo":Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v26, v0
- move/from16 v0, v26
- move/from16 v1, p1
- if-eq v0, v1, :cond_0
- .line 1031
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v26, v0
- move-object/from16 v0, p0
- move/from16 v1, v26
- invoke-virtual {v0, v1}, Landroid/support/v4/view/ViewPager;->infoForPosition(I)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v20
- .line 1032
- move/from16 v0, p1
- move-object/from16 v1, p0
- iput v0, v1, Landroid/support/v4/view/ViewPager;->mCurItem:I
- .line 1035
- :cond_0
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v26, v0
- if-nez v26, :cond_2
- .line 1036
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->sortChildDrawingOrder()V
- .line 1212
- :cond_1
- :goto_0
- return-void
- .line 1044
- :cond_2
- move-object/from16 v0, p0
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- move/from16 v26, v0
- if-eqz v26, :cond_3
- .line 1046
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->sortChildDrawingOrder()V
- goto :goto_0
- .line 1053
- :cond_3
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getWindowToken()Landroid/os/IBinder;
- move-result-object v26
- if-eqz v26, :cond_1
- .line 1057
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move-object/from16 v1, p0
- invoke-virtual {v0, v1}, Landroid/support/v4/view/PagerAdapter;->startUpdate(Landroid/view/ViewGroup;)V
- .line 1059
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mOffscreenPageLimit:I
- move/from16 v21, v0
- .line 1060
- .local v21, "pageLimit":I
- const/16 v26, 0x0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v27, v0
- sub-int v27, v27, v21
- invoke-static/range {v26 .. v27}, Ljava/lang/Math;->max(II)I
- move-result v25
- .line 1061
- .local v25, "startPos":I
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v26, v0
- invoke-virtual/range {v26 .. v26}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v4
- .line 1062
- .local v4, "N":I
- add-int/lit8 v26, v4, -0x1
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v27, v0
- add-int v27, v27, v21
- invoke-static/range {v26 .. v27}, Ljava/lang/Math;->min(II)I
- move-result v12
- .line 1064
- .local v12, "endPos":I
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mExpectedAdapterCount:I
- move/from16 v26, v0
- move/from16 v0, v26
- if-eq v4, v0, :cond_4
- .line 1067
- :try_start_0
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getResources()Landroid/content/res/Resources;
- move-result-object v26
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getId()I
- move-result v27
- invoke-virtual/range {v26 .. v27}, Landroid/content/res/Resources;->getResourceName(I)Ljava/lang/String;
- :try_end_0
- .catch Landroid/content/res/Resources$NotFoundException; {:try_start_0 .. :try_end_0} :catch_0
- move-result-object v23
- .line 1071
- .local v23, "resName":Ljava/lang/String;
- :goto_1
- new-instance v26, Ljava/lang/IllegalStateException;
- new-instance v27, Ljava/lang/StringBuilder;
- invoke-direct/range {v27 .. v27}, Ljava/lang/StringBuilder;-><init>()V
- const-string v28, "The application\'s PagerAdapter changed the adapter\'s contents without calling PagerAdapter#notifyDataSetChanged! Expected adapter item count: "
- invoke-virtual/range {v27 .. v28}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v27
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mExpectedAdapterCount:I
- move/from16 v28, v0
- invoke-virtual/range {v27 .. v28}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v27
- const-string v28, ", found: "
- invoke-virtual/range {v27 .. v28}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v27
- move-object/from16 v0, v27
- invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v27
- const-string v28, " Pager id: "
- invoke-virtual/range {v27 .. v28}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v27
- move-object/from16 v0, v27
- move-object/from16 v1, v23
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v27
- const-string v28, " Pager class: "
- invoke-virtual/range {v27 .. v28}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v27
- invoke-virtual/range {p0 .. p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
- move-result-object v28
- invoke-virtual/range {v27 .. v28}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v27
- const-string v28, " Problematic adapter: "
- invoke-virtual/range {v27 .. v28}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v27
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v28, v0
- invoke-virtual/range {v28 .. v28}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
- move-result-object v28
- invoke-virtual/range {v27 .. v28}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v27
- invoke-virtual/range {v27 .. v27}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v27
- invoke-direct/range {v26 .. v27}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v26
- .line 1068
- .end local v23 # "resName":Ljava/lang/String;
- :catch_0
- move-exception v11
- .line 1069
- .local v11, "e":Landroid/content/res/Resources$NotFoundException;
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getId()I
- move-result v26
- invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
- move-result-object v23
- .restart local v23 # "resName":Ljava/lang/String;
- goto :goto_1
- .line 1080
- .end local v11 # "e":Landroid/content/res/Resources$NotFoundException;
- .end local v23 # "resName":Ljava/lang/String;
- :cond_4
- const/4 v8, -0x1
- .line 1081
- .local v8, "curIndex":I
- const/4 v9, 0x0
- .line 1082
- .local v9, "curItem":Landroid/support/v4/view/ViewPager$ItemInfo;
- const/4 v8, 0x0
- :goto_2
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- invoke-virtual/range {v26 .. v26}, Ljava/util/ArrayList;->size()I
- move-result v26
- move/from16 v0, v26
- if-ge v8, v0, :cond_5
- .line 1083
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- invoke-virtual {v0, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v16
- check-cast v16, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 1084
- .local v16, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v27, v0
- move/from16 v0, v26
- move/from16 v1, v27
- if-lt v0, v1, :cond_b
- .line 1085
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v27, v0
- move/from16 v0, v26
- move/from16 v1, v27
- if-ne v0, v1, :cond_5
- move-object/from16 v9, v16
- .line 1090
- .end local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_5
- if-nez v9, :cond_6
- if-lez v4, :cond_6
- .line 1091
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v26, v0
- move-object/from16 v0, p0
- move/from16 v1, v26
- invoke-virtual {v0, v1, v8}, Landroid/support/v4/view/ViewPager;->addNewItem(II)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v9
- .line 1097
- :cond_6
- if-eqz v9, :cond_9
- .line 1098
- const/4 v13, 0x0
- .line 1099
- .local v13, "extraWidthLeft":F
- add-int/lit8 v17, v8, -0x1
- .line 1100
- .local v17, "itemIndex":I
- if-ltz v17, :cond_c
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v26
- check-cast v26, Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v16, v26
- .line 1101
- .restart local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_3
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v7
- .line 1102
- .local v7, "clientWidth":I
- if-gtz v7, :cond_d
- const/16 v18, 0x0
- .line 1104
- .local v18, "leftWidthNeeded":F
- :goto_4
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v26, v0
- add-int/lit8 v22, v26, -0x1
- .local v22, "pos":I
- :goto_5
- if-ltz v22, :cond_7
- .line 1105
- cmpl-float v26, v13, v18
- if-ltz v26, :cond_11
- move/from16 v0, v22
- move/from16 v1, v25
- if-ge v0, v1, :cond_11
- .line 1106
- if-nez v16, :cond_e
- .line 1132
- :cond_7
- iget v14, v9, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- .line 1133
- .local v14, "extraWidthRight":F
- add-int/lit8 v17, v8, 0x1
- .line 1134
- const/high16 v26, 0x40000000 # 2.0f
- cmpg-float v26, v14, v26
- if-gez v26, :cond_8
- .line 1135
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- invoke-virtual/range {v26 .. v26}, Ljava/util/ArrayList;->size()I
- move-result v26
- move/from16 v0, v17
- move/from16 v1, v26
- if-ge v0, v1, :cond_15
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v26
- check-cast v26, Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v16, v26
- .line 1136
- :goto_6
- if-gtz v7, :cond_16
- const/16 v24, 0x0
- .line 1138
- .local v24, "rightWidthNeeded":F
- :goto_7
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v26, v0
- add-int/lit8 v22, v26, 0x1
- :goto_8
- move/from16 v0, v22
- if-ge v0, v4, :cond_8
- .line 1139
- cmpl-float v26, v14, v24
- if-ltz v26, :cond_1a
- move/from16 v0, v22
- if-le v0, v12, :cond_1a
- .line 1140
- if-nez v16, :cond_17
- .line 1165
- .end local v24 # "rightWidthNeeded":F
- :cond_8
- move-object/from16 v0, p0
- move-object/from16 v1, v20
- invoke-direct {v0, v9, v8, v1}, Landroid/support/v4/view/ViewPager;->calculatePageOffsets(Landroid/support/v4/view/ViewPager$ItemInfo;ILandroid/support/v4/view/ViewPager$ItemInfo;)V
- .line 1175
- .end local v7 # "clientWidth":I
- .end local v13 # "extraWidthLeft":F
- .end local v14 # "extraWidthRight":F
- .end local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v17 # "itemIndex":I
- .end local v18 # "leftWidthNeeded":F
- .end local v22 # "pos":I
- :cond_9
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v27, v0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v28, v0
- if-eqz v9, :cond_1e
- iget-object v0, v9, Landroid/support/v4/view/ViewPager$ItemInfo;->object:Ljava/lang/Object;
- move-object/from16 v26, v0
- :goto_9
- move-object/from16 v0, v27
- move-object/from16 v1, p0
- move/from16 v2, v28
- move-object/from16 v3, v26
- invoke-virtual {v0, v1, v2, v3}, Landroid/support/v4/view/PagerAdapter;->setPrimaryItem(Landroid/view/ViewGroup;ILjava/lang/Object;)V
- .line 1177
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move-object/from16 v1, p0
- invoke-virtual {v0, v1}, Landroid/support/v4/view/PagerAdapter;->finishUpdate(Landroid/view/ViewGroup;)V
- .line 1181
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v6
- .line 1182
- .local v6, "childCount":I
- const/4 v15, 0x0
- .local v15, "i":I
- :goto_a
- if-ge v15, v6, :cond_1f
- .line 1183
- move-object/from16 v0, p0
- invoke-virtual {v0, v15}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v5
- .line 1184
- .local v5, "child":Landroid/view/View;
- invoke-virtual {v5}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v19
- check-cast v19, Landroid/support/v4/view/ViewPager$LayoutParams;
- .line 1185
- .local v19, "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- move-object/from16 v0, v19
- iput v15, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->childIndex:I
- .line 1186
- move-object/from16 v0, v19
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->isDecor:Z
- move/from16 v26, v0
- if-nez v26, :cond_a
- move-object/from16 v0, v19
- iget v0, v0, Landroid/support/v4/view/ViewPager$LayoutParams;->widthFactor:F
- move/from16 v26, v0
- const/16 v27, 0x0
- cmpl-float v26, v26, v27
- if-nez v26, :cond_a
- .line 1188
- move-object/from16 v0, p0
- invoke-virtual {v0, v5}, Landroid/support/v4/view/ViewPager;->infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v16
- .line 1189
- .restart local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- if-eqz v16, :cond_a
- .line 1190
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- move/from16 v26, v0
- move/from16 v0, v26
- move-object/from16 v1, v19
- iput v0, v1, Landroid/support/v4/view/ViewPager$LayoutParams;->widthFactor:F
- .line 1191
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move/from16 v0, v26
- move-object/from16 v1, v19
- iput v0, v1, Landroid/support/v4/view/ViewPager$LayoutParams;->position:I
- .line 1182
- .end local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_a
- add-int/lit8 v15, v15, 0x1
- goto :goto_a
- .line 1082
- .end local v5 # "child":Landroid/view/View;
- .end local v6 # "childCount":I
- .end local v15 # "i":I
- .end local v19 # "lp":Landroid/support/v4/view/ViewPager$LayoutParams;
- .restart local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_b
- add-int/lit8 v8, v8, 0x1
- goto/16 :goto_2
- .line 1100
- .end local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .restart local v13 # "extraWidthLeft":F
- .restart local v17 # "itemIndex":I
- :cond_c
- const/16 v16, 0x0
- goto/16 :goto_3
- .line 1102
- .restart local v7 # "clientWidth":I
- .restart local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_d
- const/high16 v26, 0x40000000 # 2.0f
- iget v0, v9, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- move/from16 v27, v0
- sub-float v26, v26, v27
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingLeft()I
- move-result v27
- move/from16 v0, v27
- int-to-float v0, v0
- move/from16 v27, v0
- int-to-float v0, v7
- move/from16 v28, v0
- div-float v27, v27, v28
- add-float v18, v26, v27
- goto/16 :goto_4
- .line 1109
- .restart local v18 # "leftWidthNeeded":F
- .restart local v22 # "pos":I
- :cond_e
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move/from16 v0, v22
- move/from16 v1, v26
- if-ne v0, v1, :cond_f
- move-object/from16 v0, v16
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->scrolling:Z
- move/from16 v26, v0
- if-nez v26, :cond_f
- .line 1110
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object;
- .line 1111
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v26, v0
- move-object/from16 v0, v16
- iget-object v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->object:Ljava/lang/Object;
- move-object/from16 v27, v0
- move-object/from16 v0, v26
- move-object/from16 v1, p0
- move/from16 v2, v22
- move-object/from16 v3, v27
- invoke-virtual {v0, v1, v2, v3}, Landroid/support/v4/view/PagerAdapter;->destroyItem(Landroid/view/ViewGroup;ILjava/lang/Object;)V
- .line 1116
- add-int/lit8 v17, v17, -0x1
- .line 1117
- add-int/lit8 v8, v8, -0x1
- .line 1118
- if-ltz v17, :cond_10
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v26
- check-cast v26, Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v16, v26
- .line 1104
- :cond_f
- :goto_b
- add-int/lit8 v22, v22, -0x1
- goto/16 :goto_5
- .line 1118
- :cond_10
- const/16 v16, 0x0
- goto :goto_b
- .line 1120
- :cond_11
- if-eqz v16, :cond_13
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move/from16 v0, v22
- move/from16 v1, v26
- if-ne v0, v1, :cond_13
- .line 1121
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- move/from16 v26, v0
- add-float v13, v13, v26
- .line 1122
- add-int/lit8 v17, v17, -0x1
- .line 1123
- if-ltz v17, :cond_12
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v26
- check-cast v26, Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v16, v26
- :goto_c
- goto :goto_b
- :cond_12
- const/16 v16, 0x0
- goto :goto_c
- .line 1125
- :cond_13
- add-int/lit8 v26, v17, 0x1
- move-object/from16 v0, p0
- move/from16 v1, v22
- move/from16 v2, v26
- invoke-virtual {v0, v1, v2}, Landroid/support/v4/view/ViewPager;->addNewItem(II)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v16
- .line 1126
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- move/from16 v26, v0
- add-float v13, v13, v26
- .line 1127
- add-int/lit8 v8, v8, 0x1
- .line 1128
- if-ltz v17, :cond_14
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v26
- check-cast v26, Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v16, v26
- :goto_d
- goto :goto_b
- :cond_14
- const/16 v16, 0x0
- goto :goto_d
- .line 1135
- .restart local v14 # "extraWidthRight":F
- :cond_15
- const/16 v16, 0x0
- goto/16 :goto_6
- .line 1136
- :cond_16
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getPaddingRight()I
- move-result v26
- move/from16 v0, v26
- int-to-float v0, v0
- move/from16 v26, v0
- int-to-float v0, v7
- move/from16 v27, v0
- div-float v26, v26, v27
- const/high16 v27, 0x40000000 # 2.0f
- add-float v24, v26, v27
- goto/16 :goto_7
- .line 1143
- .restart local v24 # "rightWidthNeeded":F
- :cond_17
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move/from16 v0, v22
- move/from16 v1, v26
- if-ne v0, v1, :cond_18
- move-object/from16 v0, v16
- iget-boolean v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->scrolling:Z
- move/from16 v26, v0
- if-nez v26, :cond_18
- .line 1144
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object;
- .line 1145
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v26, v0
- move-object/from16 v0, v16
- iget-object v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->object:Ljava/lang/Object;
- move-object/from16 v27, v0
- move-object/from16 v0, v26
- move-object/from16 v1, p0
- move/from16 v2, v22
- move-object/from16 v3, v27
- invoke-virtual {v0, v1, v2, v3}, Landroid/support/v4/view/PagerAdapter;->destroyItem(Landroid/view/ViewGroup;ILjava/lang/Object;)V
- .line 1150
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- invoke-virtual/range {v26 .. v26}, Ljava/util/ArrayList;->size()I
- move-result v26
- move/from16 v0, v17
- move/from16 v1, v26
- if-ge v0, v1, :cond_19
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v26
- check-cast v26, Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v16, v26
- .line 1138
- :cond_18
- :goto_e
- add-int/lit8 v22, v22, 0x1
- goto/16 :goto_8
- .line 1150
- :cond_19
- const/16 v16, 0x0
- goto :goto_e
- .line 1152
- :cond_1a
- if-eqz v16, :cond_1c
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move/from16 v0, v22
- move/from16 v1, v26
- if-ne v0, v1, :cond_1c
- .line 1153
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- move/from16 v26, v0
- add-float v14, v14, v26
- .line 1154
- add-int/lit8 v17, v17, 0x1
- .line 1155
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- invoke-virtual/range {v26 .. v26}, Ljava/util/ArrayList;->size()I
- move-result v26
- move/from16 v0, v17
- move/from16 v1, v26
- if-ge v0, v1, :cond_1b
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v26
- check-cast v26, Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v16, v26
- :goto_f
- goto :goto_e
- :cond_1b
- const/16 v16, 0x0
- goto :goto_f
- .line 1157
- :cond_1c
- move-object/from16 v0, p0
- move/from16 v1, v22
- move/from16 v2, v17
- invoke-virtual {v0, v1, v2}, Landroid/support/v4/view/ViewPager;->addNewItem(II)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v16
- .line 1158
- add-int/lit8 v17, v17, 0x1
- .line 1159
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->widthFactor:F
- move/from16 v26, v0
- add-float v14, v14, v26
- .line 1160
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- invoke-virtual/range {v26 .. v26}, Ljava/util/ArrayList;->size()I
- move-result v26
- move/from16 v0, v17
- move/from16 v1, v26
- if-ge v0, v1, :cond_1d
- move-object/from16 v0, p0
- iget-object v0, v0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- move-object/from16 v26, v0
- move-object/from16 v0, v26
- move/from16 v1, v17
- invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v26
- check-cast v26, Landroid/support/v4/view/ViewPager$ItemInfo;
- move-object/from16 v16, v26
- :goto_10
- goto :goto_e
- :cond_1d
- const/16 v16, 0x0
- goto :goto_10
- .line 1175
- .end local v7 # "clientWidth":I
- .end local v13 # "extraWidthLeft":F
- .end local v14 # "extraWidthRight":F
- .end local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- .end local v17 # "itemIndex":I
- .end local v18 # "leftWidthNeeded":F
- .end local v22 # "pos":I
- .end local v24 # "rightWidthNeeded":F
- :cond_1e
- const/16 v26, 0x0
- goto/16 :goto_9
- .line 1195
- .restart local v6 # "childCount":I
- .restart local v15 # "i":I
- :cond_1f
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->sortChildDrawingOrder()V
- .line 1197
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->hasFocus()Z
- move-result v26
- if-eqz v26, :cond_1
- .line 1198
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->findFocus()Landroid/view/View;
- move-result-object v10
- .line 1199
- .local v10, "currentFocused":Landroid/view/View;
- if-eqz v10, :cond_22
- move-object/from16 v0, p0
- invoke-virtual {v0, v10}, Landroid/support/v4/view/ViewPager;->infoForAnyChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v16
- .line 1200
- .restart local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :goto_11
- if-eqz v16, :cond_20
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v27, v0
- move/from16 v0, v26
- move/from16 v1, v27
- if-eq v0, v1, :cond_1
- .line 1201
- :cond_20
- const/4 v15, 0x0
- :goto_12
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v26
- move/from16 v0, v26
- if-ge v15, v0, :cond_1
- .line 1202
- move-object/from16 v0, p0
- invoke-virtual {v0, v15}, Landroid/support/v4/view/ViewPager;->getChildAt(I)Landroid/view/View;
- move-result-object v5
- .line 1203
- .restart local v5 # "child":Landroid/view/View;
- move-object/from16 v0, p0
- invoke-virtual {v0, v5}, Landroid/support/v4/view/ViewPager;->infoForChild(Landroid/view/View;)Landroid/support/v4/view/ViewPager$ItemInfo;
- move-result-object v16
- .line 1204
- if-eqz v16, :cond_21
- move-object/from16 v0, v16
- iget v0, v0, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- move/from16 v26, v0
- move-object/from16 v0, p0
- iget v0, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- move/from16 v27, v0
- move/from16 v0, v26
- move/from16 v1, v27
- if-ne v0, v1, :cond_21
- .line 1205
- const/16 v26, 0x2
- move/from16 v0, v26
- invoke-virtual {v5, v0}, Landroid/view/View;->requestFocus(I)Z
- move-result v26
- if-nez v26, :cond_1
- .line 1201
- :cond_21
- add-int/lit8 v15, v15, 0x1
- goto :goto_12
- .line 1199
- .end local v5 # "child":Landroid/view/View;
- .end local v16 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_22
- const/16 v16, 0x0
- goto :goto_11
- .end method
- .method public removeOnPageChangeListener(Landroid/support/v4/view/ViewPager$OnPageChangeListener;)V
- .locals 1
- .param p1, "listener" # Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .prologue
- .line 675
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- if-eqz v0, :cond_0
- .line 676
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListeners:Ljava/util/List;
- invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z
- .line 678
- :cond_0
- return-void
- .end method
- .method public removeView(Landroid/view/View;)V
- .locals 1
- .param p1, "view" # Landroid/view/View;
- .prologue
- .line 1427
- iget-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mInLayout:Z
- if-eqz v0, :cond_0
- .line 1428
- invoke-virtual {p0, p1}, Landroid/support/v4/view/ViewPager;->removeViewInLayout(Landroid/view/View;)V
- .line 1432
- :goto_0
- return-void
- .line 1430
- :cond_0
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->removeView(Landroid/view/View;)V
- goto :goto_0
- .end method
- .method public setAdapter(Landroid/support/v4/view/PagerAdapter;)V
- .locals 10
- .param p1, "adapter" # Landroid/support/v4/view/PagerAdapter;
- .prologue
- const/4 v9, 0x1
- const/4 v8, 0x0
- const/4 v7, 0x0
- .line 469
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v4, :cond_1
- .line 470
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v4, v8}, Landroid/support/v4/view/PagerAdapter;->setViewPagerObserver(Landroid/database/DataSetObserver;)V
- .line 471
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v4, p0}, Landroid/support/v4/view/PagerAdapter;->startUpdate(Landroid/view/ViewGroup;)V
- .line 472
- const/4 v0, 0x0
- .local v0, "i":I
- :goto_0
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v4}, Ljava/util/ArrayList;->size()I
- move-result v4
- if-ge v0, v4, :cond_0
- .line 473
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v4, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v4/view/ViewPager$ItemInfo;
- .line 474
- .local v1, "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- iget v5, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->position:I
- iget-object v6, v1, Landroid/support/v4/view/ViewPager$ItemInfo;->object:Ljava/lang/Object;
- invoke-virtual {v4, p0, v5, v6}, Landroid/support/v4/view/PagerAdapter;->destroyItem(Landroid/view/ViewGroup;ILjava/lang/Object;)V
- .line 472
- add-int/lit8 v0, v0, 0x1
- goto :goto_0
- .line 476
- .end local v1 # "ii":Landroid/support/v4/view/ViewPager$ItemInfo;
- :cond_0
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v4, p0}, Landroid/support/v4/view/PagerAdapter;->finishUpdate(Landroid/view/ViewGroup;)V
- .line 477
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v4}, Ljava/util/ArrayList;->clear()V
- .line 478
- invoke-direct {p0}, Landroid/support/v4/view/ViewPager;->removeNonDecorViews()V
- .line 479
- iput v7, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- .line 480
- invoke-virtual {p0, v7, v7}, Landroid/support/v4/view/ViewPager;->scrollTo(II)V
- .line 483
- .end local v0 # "i":I
- :cond_1
- iget-object v2, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- .line 484
- .local v2, "oldAdapter":Landroid/support/v4/view/PagerAdapter;
- iput-object p1, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- .line 485
- iput v7, p0, Landroid/support/v4/view/ViewPager;->mExpectedAdapterCount:I
- .line 487
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v4, :cond_3
- .line 488
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mObserver:Landroid/support/v4/view/ViewPager$PagerObserver;
- if-nez v4, :cond_2
- .line 489
- new-instance v4, Landroid/support/v4/view/ViewPager$PagerObserver;
- invoke-direct {v4, p0, v8}, Landroid/support/v4/view/ViewPager$PagerObserver;-><init>(Landroid/support/v4/view/ViewPager;Landroid/support/v4/view/ViewPager$1;)V
- iput-object v4, p0, Landroid/support/v4/view/ViewPager;->mObserver:Landroid/support/v4/view/ViewPager$PagerObserver;
- .line 491
- :cond_2
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mObserver:Landroid/support/v4/view/ViewPager$PagerObserver;
- invoke-virtual {v4, v5}, Landroid/support/v4/view/PagerAdapter;->setViewPagerObserver(Landroid/database/DataSetObserver;)V
- .line 492
- iput-boolean v7, p0, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- .line 493
- iget-boolean v3, p0, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- .line 494
- .local v3, "wasFirstLayout":Z
- iput-boolean v9, p0, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- .line 495
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v4}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v4
- iput v4, p0, Landroid/support/v4/view/ViewPager;->mExpectedAdapterCount:I
- .line 496
- iget v4, p0, Landroid/support/v4/view/ViewPager;->mRestoredCurItem:I
- if-ltz v4, :cond_5
- .line 497
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- iget-object v5, p0, Landroid/support/v4/view/ViewPager;->mRestoredAdapterState:Landroid/os/Parcelable;
- iget-object v6, p0, Landroid/support/v4/view/ViewPager;->mRestoredClassLoader:Ljava/lang/ClassLoader;
- invoke-virtual {v4, v5, v6}, Landroid/support/v4/view/PagerAdapter;->restoreState(Landroid/os/Parcelable;Ljava/lang/ClassLoader;)V
- .line 498
- iget v4, p0, Landroid/support/v4/view/ViewPager;->mRestoredCurItem:I
- invoke-virtual {p0, v4, v7, v9}, Landroid/support/v4/view/ViewPager;->setCurrentItemInternal(IZZ)V
- .line 499
- const/4 v4, -0x1
- iput v4, p0, Landroid/support/v4/view/ViewPager;->mRestoredCurItem:I
- .line 500
- iput-object v8, p0, Landroid/support/v4/view/ViewPager;->mRestoredAdapterState:Landroid/os/Parcelable;
- .line 501
- iput-object v8, p0, Landroid/support/v4/view/ViewPager;->mRestoredClassLoader:Ljava/lang/ClassLoader;
- .line 509
- .end local v3 # "wasFirstLayout":Z
- :cond_3
- :goto_1
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapterChangeListener:Landroid/support/v4/view/ViewPager$OnAdapterChangeListener;
- if-eqz v4, :cond_4
- if-eq v2, p1, :cond_4
- .line 510
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mAdapterChangeListener:Landroid/support/v4/view/ViewPager$OnAdapterChangeListener;
- invoke-interface {v4, v2, p1}, Landroid/support/v4/view/ViewPager$OnAdapterChangeListener;->onAdapterChanged(Landroid/support/v4/view/PagerAdapter;Landroid/support/v4/view/PagerAdapter;)V
- .line 512
- :cond_4
- return-void
- .line 502
- .restart local v3 # "wasFirstLayout":Z
- :cond_5
- if-nez v3, :cond_6
- .line 503
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->populate()V
- goto :goto_1
- .line 505
- :cond_6
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->requestLayout()V
- goto :goto_1
- .end method
- .method setChildrenDrawingOrderEnabledCompat(Z)V
- .locals 6
- .param p1, "enable" # Z
- .prologue
- .line 717
- sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
- const/4 v2, 0x7
- if-lt v1, v2, :cond_1
- .line 718
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mSetChildrenDrawingOrderEnabled:Ljava/lang/reflect/Method;
- if-nez v1, :cond_0
- .line 720
- :try_start_0
- const-class v1, Landroid/view/ViewGroup;
- const-string v2, "setChildrenDrawingOrderEnabled"
- const/4 v3, 0x1
- new-array v3, v3, [Ljava/lang/Class;
- const/4 v4, 0x0
- sget-object v5, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
- aput-object v5, v3, v4
- invoke-virtual {v1, v2, v3}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
- move-result-object v1
- iput-object v1, p0, Landroid/support/v4/view/ViewPager;->mSetChildrenDrawingOrderEnabled:Ljava/lang/reflect/Method;
- :try_end_0
- .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0
- .line 727
- :cond_0
- :goto_0
- :try_start_1
- iget-object v1, p0, Landroid/support/v4/view/ViewPager;->mSetChildrenDrawingOrderEnabled:Ljava/lang/reflect/Method;
- const/4 v2, 0x1
- new-array v2, v2, [Ljava/lang/Object;
- const/4 v3, 0x0
- invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
- move-result-object v4
- aput-object v4, v2, v3
- invoke-virtual {v1, p0, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
- :try_end_1
- .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1
- .line 732
- :cond_1
- :goto_1
- return-void
- .line 722
- :catch_0
- move-exception v0
- .line 723
- .local v0, "e":Ljava/lang/NoSuchMethodException;
- const-string v1, "ViewPager"
- const-string v2, "Can\'t find setChildrenDrawingOrderEnabled"
- invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
- goto :goto_0
- .line 728
- .end local v0 # "e":Ljava/lang/NoSuchMethodException;
- :catch_1
- move-exception v0
- .line 729
- .local v0, "e":Ljava/lang/Exception;
- const-string v1, "ViewPager"
- const-string v2, "Error changing children drawing order"
- invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
- goto :goto_1
- .end method
- .method public setCurrentItem(I)V
- .locals 2
- .param p1, "item" # I
- .prologue
- const/4 v1, 0x0
- .line 550
- iput-boolean v1, p0, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- .line 551
- iget-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- if-nez v0, :cond_0
- const/4 v0, 0x1
- :goto_0
- invoke-virtual {p0, p1, v0, v1}, Landroid/support/v4/view/ViewPager;->setCurrentItemInternal(IZZ)V
- .line 552
- return-void
- :cond_0
- move v0, v1
- .line 551
- goto :goto_0
- .end method
- .method public setCurrentItem(IZ)V
- .locals 1
- .param p1, "item" # I
- .param p2, "smoothScroll" # Z
- .prologue
- const/4 v0, 0x0
- .line 561
- iput-boolean v0, p0, Landroid/support/v4/view/ViewPager;->mPopulatePending:Z
- .line 562
- invoke-virtual {p0, p1, p2, v0}, Landroid/support/v4/view/ViewPager;->setCurrentItemInternal(IZZ)V
- .line 563
- return-void
- .end method
- .method setCurrentItemInternal(IZZ)V
- .locals 1
- .param p1, "item" # I
- .param p2, "smoothScroll" # Z
- .param p3, "always" # Z
- .prologue
- .line 570
- const/4 v0, 0x0
- invoke-virtual {p0, p1, p2, p3, v0}, Landroid/support/v4/view/ViewPager;->setCurrentItemInternal(IZZI)V
- .line 571
- return-void
- .end method
- .method setCurrentItemInternal(IZZI)V
- .locals 5
- .param p1, "item" # I
- .param p2, "smoothScroll" # Z
- .param p3, "always" # Z
- .param p4, "velocity" # I
- .prologue
- const/4 v0, 0x1
- const/4 v4, 0x0
- .line 574
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- if-eqz v3, :cond_0
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v3}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v3
- if-gtz v3, :cond_1
- .line 575
- :cond_0
- invoke-direct {p0, v4}, Landroid/support/v4/view/ViewPager;->setScrollingCacheEnabled(Z)V
- .line 611
- :goto_0
- return-void
- .line 578
- :cond_1
- if-nez p3, :cond_2
- iget v3, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-ne v3, p1, :cond_2
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v3}, Ljava/util/ArrayList;->size()I
- move-result v3
- if-eqz v3, :cond_2
- .line 579
- invoke-direct {p0, v4}, Landroid/support/v4/view/ViewPager;->setScrollingCacheEnabled(Z)V
- goto :goto_0
- .line 583
- :cond_2
- if-gez p1, :cond_5
- .line 584
- const/4 p1, 0x0
- .line 588
- :cond_3
- :goto_1
- iget v2, p0, Landroid/support/v4/view/ViewPager;->mOffscreenPageLimit:I
- .line 589
- .local v2, "pageLimit":I
- iget v3, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- add-int/2addr v3, v2
- if-gt p1, v3, :cond_4
- iget v3, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- sub-int/2addr v3, v2
- if-ge p1, v3, :cond_6
- .line 593
- :cond_4
- const/4 v1, 0x0
- .local v1, "i":I
- :goto_2
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v3}, Ljava/util/ArrayList;->size()I
- move-result v3
- if-ge v1, v3, :cond_6
- .line 594
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mItems:Ljava/util/ArrayList;
- invoke-virtual {v3, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- check-cast v3, Landroid/support/v4/view/ViewPager$ItemInfo;
- iput-boolean v0, v3, Landroid/support/v4/view/ViewPager$ItemInfo;->scrolling:Z
- .line 593
- add-int/lit8 v1, v1, 0x1
- goto :goto_2
- .line 585
- .end local v1 # "i":I
- .end local v2 # "pageLimit":I
- :cond_5
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v3}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v3
- if-lt p1, v3, :cond_3
- .line 586
- iget-object v3, p0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- invoke-virtual {v3}, Landroid/support/v4/view/PagerAdapter;->getCount()I
- move-result v3
- add-int/lit8 p1, v3, -0x1
- goto :goto_1
- .line 597
- .restart local v2 # "pageLimit":I
- :cond_6
- iget v3, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- if-eq v3, p1, :cond_8
- .line 599
- .local v0, "dispatchSelected":Z
- :goto_3
- iget-boolean v3, p0, Landroid/support/v4/view/ViewPager;->mFirstLayout:Z
- if-eqz v3, :cond_9
- .line 602
- iput p1, p0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- .line 603
- if-eqz v0, :cond_7
- .line 604
- invoke-direct {p0, p1}, Landroid/support/v4/view/ViewPager;->dispatchOnPageSelected(I)V
- .line 606
- :cond_7
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->requestLayout()V
- goto :goto_0
- .end local v0 # "dispatchSelected":Z
- :cond_8
- move v0, v4
- .line 597
- goto :goto_3
- .line 608
- .restart local v0 # "dispatchSelected":Z
- :cond_9
- invoke-virtual {p0, p1}, Landroid/support/v4/view/ViewPager;->populate(I)V
- .line 609
- invoke-direct {p0, p1, p2, p4, v0}, Landroid/support/v4/view/ViewPager;->scrollToItem(IZIZ)V
- goto :goto_0
- .end method
- .method setInternalPageChangeListener(Landroid/support/v4/view/ViewPager$OnPageChangeListener;)Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .locals 1
- .param p1, "listener" # Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .prologue
- .line 748
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .line 749
- .local v0, "oldListener":Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- iput-object p1, p0, Landroid/support/v4/view/ViewPager;->mInternalPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .line 750
- return-object v0
- .end method
- .method public setOffscreenPageLimit(I)V
- .locals 4
- .param p1, "limit" # I
- .prologue
- const/4 v3, 0x1
- .line 782
- if-ge p1, v3, :cond_0
- .line 783
- const-string v0, "ViewPager"
- new-instance v1, Ljava/lang/StringBuilder;
- invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
- const-string v2, "Requested offscreen page limit "
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v1
- invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v1
- const-string v2, " too small; defaulting to "
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v1
- invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v1
- invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v1
- invoke-static {v0, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- .line 785
- const/4 p1, 0x1
- .line 787
- :cond_0
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mOffscreenPageLimit:I
- if-eq p1, v0, :cond_1
- .line 788
- iput p1, p0, Landroid/support/v4/view/ViewPager;->mOffscreenPageLimit:I
- .line 789
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->populate()V
- .line 791
- :cond_1
- return-void
- .end method
- .method setOnAdapterChangeListener(Landroid/support/v4/view/ViewPager$OnAdapterChangeListener;)V
- .locals 0
- .param p1, "listener" # Landroid/support/v4/view/ViewPager$OnAdapterChangeListener;
- .prologue
- .line 535
- iput-object p1, p0, Landroid/support/v4/view/ViewPager;->mAdapterChangeListener:Landroid/support/v4/view/ViewPager$OnAdapterChangeListener;
- .line 536
- return-void
- .end method
- .method public setOnPageChangeListener(Landroid/support/v4/view/ViewPager$OnPageChangeListener;)V
- .locals 0
- .param p1, "listener" # Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .annotation runtime Ljava/lang/Deprecated;
- .end annotation
- .prologue
- .line 648
- iput-object p1, p0, Landroid/support/v4/view/ViewPager;->mOnPageChangeListener:Landroid/support/v4/view/ViewPager$OnPageChangeListener;
- .line 649
- return-void
- .end method
- .method public setPageMargin(I)V
- .locals 2
- .param p1, "marginPixels" # I
- .prologue
- .line 802
- iget v0, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- .line 803
- .local v0, "oldMargin":I
- iput p1, p0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- .line 805
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getWidth()I
- move-result v1
- .line 806
- .local v1, "width":I
- invoke-direct {p0, v1, v1, p1, v0}, Landroid/support/v4/view/ViewPager;->recomputeScrollPosition(IIII)V
- .line 808
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->requestLayout()V
- .line 809
- return-void
- .end method
- .method public setPageMarginDrawable(I)V
- .locals 1
- .param p1, "resId" # I
- .annotation build Landroid/support/annotation/DrawableRes;
- .end annotation
- .end param
- .prologue
- .line 838
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->getContext()Landroid/content/Context;
- move-result-object v0
- invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
- move-result-object v0
- invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable;
- move-result-object v0
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->setPageMarginDrawable(Landroid/graphics/drawable/Drawable;)V
- .line 839
- return-void
- .end method
- .method public setPageMarginDrawable(Landroid/graphics/drawable/Drawable;)V
- .locals 1
- .param p1, "d" # Landroid/graphics/drawable/Drawable;
- .prologue
- .line 826
- iput-object p1, p0, Landroid/support/v4/view/ViewPager;->mMarginDrawable:Landroid/graphics/drawable/Drawable;
- .line 827
- if-eqz p1, :cond_0
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->refreshDrawableState()V
- .line 828
- :cond_0
- if-nez p1, :cond_1
- const/4 v0, 0x1
- :goto_0
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->setWillNotDraw(Z)V
- .line 829
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->invalidate()V
- .line 830
- return-void
- .line 828
- :cond_1
- const/4 v0, 0x0
- goto :goto_0
- .end method
- .method public setPageTransformer(ZLandroid/support/v4/view/ViewPager$PageTransformer;)V
- .locals 6
- .param p1, "reverseDrawingOrder" # Z
- .param p2, "transformer" # Landroid/support/v4/view/ViewPager$PageTransformer;
- .prologue
- const/4 v2, 0x1
- const/4 v3, 0x0
- .line 702
- sget v4, Landroid/os/Build$VERSION;->SDK_INT:I
- const/16 v5, 0xb
- if-lt v4, v5, :cond_1
- .line 703
- if-eqz p2, :cond_2
- move v0, v2
- .line 704
- .local v0, "hasTransformer":Z
- :goto_0
- iget-object v4, p0, Landroid/support/v4/view/ViewPager;->mPageTransformer:Landroid/support/v4/view/ViewPager$PageTransformer;
- if-eqz v4, :cond_3
- move v4, v2
- :goto_1
- if-eq v0, v4, :cond_4
- move v1, v2
- .line 705
- .local v1, "needsPopulate":Z
- :goto_2
- iput-object p2, p0, Landroid/support/v4/view/ViewPager;->mPageTransformer:Landroid/support/v4/view/ViewPager$PageTransformer;
- .line 706
- invoke-virtual {p0, v0}, Landroid/support/v4/view/ViewPager;->setChildrenDrawingOrderEnabledCompat(Z)V
- .line 707
- if-eqz v0, :cond_5
- .line 708
- if-eqz p1, :cond_0
- const/4 v2, 0x2
- :cond_0
- iput v2, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrder:I
- .line 712
- :goto_3
- if-eqz v1, :cond_1
- invoke-virtual {p0}, Landroid/support/v4/view/ViewPager;->populate()V
- .line 714
- .end local v0 # "hasTransformer":Z
- .end local v1 # "needsPopulate":Z
- :cond_1
- return-void
- :cond_2
- move v0, v3
- .line 703
- goto :goto_0
- .restart local v0 # "hasTransformer":Z
- :cond_3
- move v4, v3
- .line 704
- goto :goto_1
- :cond_4
- move v1, v3
- goto :goto_2
- .line 710
- .restart local v1 # "needsPopulate":Z
- :cond_5
- iput v3, p0, Landroid/support/v4/view/ViewPager;->mDrawingOrder:I
- goto :goto_3
- .end method
- .method smoothScrollTo(II)V
- .locals 1
- .param p1, "x" # I
- .param p2, "y" # I
- .prologue
- .line 872
- const/4 v0, 0x0
- invoke-virtual {p0, p1, p2, v0}, Landroid/support/v4/view/ViewPager;->smoothScrollTo(III)V
- .line 873
- return-void
- .end method
- .method smoothScrollTo(III)V
- .locals 16
- .param p1, "x" # I
- .param p2, "y" # I
- .param p3, "velocity" # I
- .prologue
- .line 883
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getChildCount()I
- move-result v1
- if-nez v1, :cond_0
- .line 885
- const/4 v1, 0x0
- move-object/from16 v0, p0
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->setScrollingCacheEnabled(Z)V
- .line 938
- :goto_0
- return-void
- .line 890
- :cond_0
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- if-eqz v1, :cond_1
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v1}, Landroid/widget/Scroller;->isFinished()Z
- move-result v1
- if-nez v1, :cond_1
- const/4 v12, 0x1
- .line 891
- .local v12, "wasScrolling":Z
- :goto_1
- if-eqz v12, :cond_3
- .line 896
- move-object/from16 v0, p0
- iget-boolean v1, v0, Landroid/support/v4/view/ViewPager;->mIsScrollStarted:Z
- if-eqz v1, :cond_2
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v1}, Landroid/widget/Scroller;->getCurrX()I
- move-result v2
- .line 898
- .local v2, "sx":I
- :goto_2
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v1}, Landroid/widget/Scroller;->abortAnimation()V
- .line 899
- const/4 v1, 0x0
- move-object/from16 v0, p0
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->setScrollingCacheEnabled(Z)V
- .line 903
- :goto_3
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollY()I
- move-result v3
- .line 904
- .local v3, "sy":I
- sub-int v4, p1, v2
- .line 905
- .local v4, "dx":I
- sub-int v5, p2, v3
- .line 906
- .local v5, "dy":I
- if-nez v4, :cond_4
- if-nez v5, :cond_4
- .line 907
- const/4 v1, 0x0
- move-object/from16 v0, p0
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->completeScroll(Z)V
- .line 908
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->populate()V
- .line 909
- const/4 v1, 0x0
- move-object/from16 v0, p0
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->setScrollState(I)V
- goto :goto_0
- .line 890
- .end local v2 # "sx":I
- .end local v3 # "sy":I
- .end local v4 # "dx":I
- .end local v5 # "dy":I
- .end local v12 # "wasScrolling":Z
- :cond_1
- const/4 v12, 0x0
- goto :goto_1
- .line 896
- .restart local v12 # "wasScrolling":Z
- :cond_2
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual {v1}, Landroid/widget/Scroller;->getStartX()I
- move-result v2
- goto :goto_2
- .line 901
- :cond_3
- invoke-virtual/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getScrollX()I
- move-result v2
- .restart local v2 # "sx":I
- goto :goto_3
- .line 913
- .restart local v3 # "sy":I
- .restart local v4 # "dx":I
- .restart local v5 # "dy":I
- :cond_4
- const/4 v1, 0x1
- move-object/from16 v0, p0
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->setScrollingCacheEnabled(Z)V
- .line 914
- const/4 v1, 0x2
- move-object/from16 v0, p0
- invoke-direct {v0, v1}, Landroid/support/v4/view/ViewPager;->setScrollState(I)V
- .line 916
- invoke-direct/range {p0 .. p0}, Landroid/support/v4/view/ViewPager;->getClientWidth()I
- move-result v13
- .line 917
- .local v13, "width":I
- div-int/lit8 v9, v13, 0x2
- .line 918
- .local v9, "halfWidth":I
- const/high16 v1, 0x3f800000 # 1.0f
- const/high16 v14, 0x3f800000 # 1.0f
- invoke-static {v4}, Ljava/lang/Math;->abs(I)I
- move-result v15
- int-to-float v15, v15
- mul-float/2addr v14, v15
- int-to-float v15, v13
- div-float/2addr v14, v15
- invoke-static {v1, v14}, Ljava/lang/Math;->min(FF)F
- move-result v8
- .line 919
- .local v8, "distanceRatio":F
- int-to-float v1, v9
- int-to-float v14, v9
- move-object/from16 v0, p0
- invoke-virtual {v0, v8}, Landroid/support/v4/view/ViewPager;->distanceInfluenceForSnapDuration(F)F
- move-result v15
- mul-float/2addr v14, v15
- add-float v7, v1, v14
- .line 923
- .local v7, "distance":F
- invoke-static/range {p3 .. p3}, Ljava/lang/Math;->abs(I)I
- move-result p3
- .line 924
- if-lez p3, :cond_5
- .line 925
- const/high16 v1, 0x447a0000 # 1000.0f
- move/from16 v0, p3
- int-to-float v14, v0
- div-float v14, v7, v14
- invoke-static {v14}, Ljava/lang/Math;->abs(F)F
- move-result v14
- mul-float/2addr v1, v14
- invoke-static {v1}, Ljava/lang/Math;->round(F)I
- move-result v1
- mul-int/lit8 v6, v1, 0x4
- .line 931
- .local v6, "duration":I
- :goto_4
- const/16 v1, 0x258
- invoke-static {v6, v1}, Ljava/lang/Math;->min(II)I
- move-result v6
- .line 935
- const/4 v1, 0x0
- move-object/from16 v0, p0
- iput-boolean v1, v0, Landroid/support/v4/view/ViewPager;->mIsScrollStarted:Z
- .line 936
- move-object/from16 v0, p0
- iget-object v1, v0, Landroid/support/v4/view/ViewPager;->mScroller:Landroid/widget/Scroller;
- invoke-virtual/range {v1 .. v6}, Landroid/widget/Scroller;->startScroll(IIIII)V
- .line 937
- invoke-static/range {p0 .. p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- goto/16 :goto_0
- .line 927
- .end local v6 # "duration":I
- :cond_5
- int-to-float v1, v13
- move-object/from16 v0, p0
- iget-object v14, v0, Landroid/support/v4/view/ViewPager;->mAdapter:Landroid/support/v4/view/PagerAdapter;
- move-object/from16 v0, p0
- iget v15, v0, Landroid/support/v4/view/ViewPager;->mCurItem:I
- invoke-virtual {v14, v15}, Landroid/support/v4/view/PagerAdapter;->getPageWidth(I)F
- move-result v14
- mul-float v11, v1, v14
- .line 928
- .local v11, "pageWidth":F
- invoke-static {v4}, Ljava/lang/Math;->abs(I)I
- move-result v1
- int-to-float v1, v1
- move-object/from16 v0, p0
- iget v14, v0, Landroid/support/v4/view/ViewPager;->mPageMargin:I
- int-to-float v14, v14
- add-float/2addr v14, v11
- div-float v10, v1, v14
- .line 929
- .local v10, "pageDelta":F
- const/high16 v1, 0x3f800000 # 1.0f
- add-float/2addr v1, v10
- const/high16 v14, 0x42c80000 # 100.0f
- mul-float/2addr v1, v14
- float-to-int v6, v1
- .restart local v6 # "duration":I
- goto :goto_4
- .end method
- .method protected verifyDrawable(Landroid/graphics/drawable/Drawable;)Z
- .locals 1
- .param p1, "who" # Landroid/graphics/drawable/Drawable;
- .prologue
- .line 843
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->verifyDrawable(Landroid/graphics/drawable/Drawable;)Z
- move-result v0
- if-nez v0, :cond_0
- iget-object v0, p0, Landroid/support/v4/view/ViewPager;->mMarginDrawable:Landroid/graphics/drawable/Drawable;
- if-ne p1, v0, :cond_1
- :cond_0
- const/4 v0, 0x1
- :goto_0
- return v0
- :cond_1
- const/4 v0, 0x0
- goto :goto_0
- .end method
|