1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195 |
- .class public Landroid/support/v7/widget/RecyclerView;
- .super Landroid/view/ViewGroup;
- .source ""
- # interfaces
- .implements Landroid/support/v4/view/ScrollingView;
- .implements Landroid/support/v4/view/NestedScrollingChild;
- # annotations
- .annotation system Ldalvik/annotation/MemberClasses;
- value = {
- Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;,
- Landroid/support/v7/widget/RecyclerView$ItemAnimator;,
- Landroid/support/v7/widget/RecyclerView$ItemAnimatorRestoreListener;,
- Landroid/support/v7/widget/RecyclerView$State;,
- Landroid/support/v7/widget/RecyclerView$SavedState;,
- Landroid/support/v7/widget/RecyclerView$AdapterDataObservable;,
- Landroid/support/v7/widget/RecyclerView$SmoothScroller;,
- Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;,
- Landroid/support/v7/widget/RecyclerView$LayoutParams;,
- Landroid/support/v7/widget/RecyclerView$ViewHolder;,
- Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;,
- Landroid/support/v7/widget/RecyclerView$RecyclerListener;,
- Landroid/support/v7/widget/RecyclerView$OnScrollListener;,
- Landroid/support/v7/widget/RecyclerView$SimpleOnItemTouchListener;,
- Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;,
- Landroid/support/v7/widget/RecyclerView$ItemDecoration;,
- Landroid/support/v7/widget/RecyclerView$LayoutManager;,
- Landroid/support/v7/widget/RecyclerView$Adapter;,
- Landroid/support/v7/widget/RecyclerView$ViewCacheExtension;,
- Landroid/support/v7/widget/RecyclerView$Recycler;,
- Landroid/support/v7/widget/RecyclerView$RecycledViewPool;,
- Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;,
- Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- }
- .end annotation
- # static fields
- .field static final ALLOW_SIZE_IN_UNSPECIFIED_SPEC:Z
- .field private static final CLIP_TO_PADDING_ATTR:[I
- .field private static final DEBUG:Z = false
- .field static final DISPATCH_TEMP_DETACH:Z = false
- .field private static final FORCE_INVALIDATE_DISPLAY_LIST:Z
- .field public static final HORIZONTAL:I = 0x0
- .field private static final INVALID_POINTER:I = -0x1
- .field public static final INVALID_TYPE:I = -0x1
- .field private static final LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "[",
- "Ljava/lang/Class<",
- "*>;"
- }
- .end annotation
- .end field
- .field private static final MAX_SCROLL_DURATION:I = 0x7d0
- .field private static final NESTED_SCROLLING_ATTRS:[I
- .field public static final NO_ID:J = -0x1L
- .field public static final NO_POSITION:I = -0x1
- .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; = "RecyclerView"
- .field public static final TOUCH_SLOP_DEFAULT:I = 0x0
- .field public static final TOUCH_SLOP_PAGING:I = 0x1
- .field private static final TRACE_BIND_VIEW_TAG:Ljava/lang/String; = "RV OnBindView"
- .field private static final TRACE_CREATE_VIEW_TAG:Ljava/lang/String; = "RV CreateView"
- .field private static final TRACE_HANDLE_ADAPTER_UPDATES_TAG:Ljava/lang/String; = "RV PartialInvalidate"
- .field private static final TRACE_ON_DATA_SET_CHANGE_LAYOUT_TAG:Ljava/lang/String; = "RV FullInvalidate"
- .field private static final TRACE_ON_LAYOUT_TAG:Ljava/lang/String; = "RV OnLayout"
- .field private static final TRACE_SCROLL_TAG:Ljava/lang/String; = "RV Scroll"
- .field public static final VERTICAL:I = 0x1
- .field private static final sQuinticInterpolator:Landroid/view/animation/Interpolator;
- # instance fields
- .field private mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
- .field private final mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager;
- .field private mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- .field private mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- .field mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- .field private mAdapterUpdateDuringMeasure:Z
- .field private mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- .field private mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
- .field mChildHelper:Landroid/support/v7/widget/ChildHelper;
- .field private mClipToPadding:Z
- .field private mDataSetHasChangedAfterLayout:Z
- .field private mEatRequestLayout:I
- .field private mEatenAccessibilityChangeFlags:I
- .field mFirstLayoutComplete:Z
- .annotation build Landroid/support/annotation/VisibleForTesting;
- .end annotation
- .end field
- .field private mHasFixedSize:Z
- .field private mIgnoreMotionEventTillDown:Z
- .field private mInitialTouchX:I
- .field private mInitialTouchY:I
- .field private mIsAttached:Z
- .field mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- .field private mItemAnimatorListener:Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;
- .field private mItemAnimatorRunner:Ljava/lang/Runnable;
- .field private final mItemDecorations:Ljava/util/ArrayList;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/ArrayList<",
- "Landroid/support/v7/widget/RecyclerView$ItemDecoration;",
- ">;"
- }
- .end annotation
- .end field
- .field mItemsAddedOrRemoved:Z
- .field mItemsChanged:Z
- .field private mLastTouchX:I
- .field private mLastTouchY:I
- .field mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- .annotation build Landroid/support/annotation/VisibleForTesting;
- .end annotation
- .end field
- .field private mLayoutFrozen:Z
- .field private mLayoutOrScrollCounter:I
- .field private mLayoutRequestEaten:Z
- .field private mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- .field private final mMaxFlingVelocity:I
- .field private final mMinFlingVelocity:I
- .field private final mMinMaxLayoutPositions:[I
- .field private final mNestedOffsets:[I
- .field private final mObserver:Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
- .field private mOnChildAttachStateListeners:Ljava/util/List;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/List<",
- "Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;",
- ">;"
- }
- .end annotation
- .end field
- .field private final mOnItemTouchListeners:Ljava/util/ArrayList;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/ArrayList<",
- "Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;",
- ">;"
- }
- .end annotation
- .end field
- .field private mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
- .field private final mPostUpdatesOnAnimation:Z
- .field private mPostedAnimatorRunner:Z
- .field private mPreserveFocusAfterLayout:Z
- .field final mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- .field private mRecyclerListener:Landroid/support/v7/widget/RecyclerView$RecyclerListener;
- .field private mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- .field private final mScrollConsumed:[I
- .field private mScrollFactor:F
- .field private mScrollListener:Landroid/support/v7/widget/RecyclerView$OnScrollListener;
- .field private mScrollListeners:Ljava/util/List;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/List<",
- "Landroid/support/v7/widget/RecyclerView$OnScrollListener;",
- ">;"
- }
- .end annotation
- .end field
- .field private final mScrollOffset:[I
- .field private mScrollPointerId:I
- .field private mScrollState:I
- .field private mScrollingChildHelper:Landroid/support/v4/view/NestedScrollingChildHelper;
- .field final mState:Landroid/support/v7/widget/RecyclerView$State;
- .field private final mTempRect:Landroid/graphics/Rect;
- .field private final mTempRect2:Landroid/graphics/Rect;
- .field private final mTempRectF:Landroid/graphics/RectF;
- .field private mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- .field private mTouchSlop:I
- .field private final mUpdateChildViewsRunnable:Ljava/lang/Runnable;
- .field private mVelocityTracker:Landroid/view/VelocityTracker;
- .field private final mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- .field private final mViewInfoProcessCallback:Landroid/support/v7/widget/ViewInfoStore$ProcessCallback;
- .field final mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- # direct methods
- .method static constructor <clinit>()V
- .locals 4
- const/4 v0, 0x1
- new-array v1, v0, [I
- const/4 v2, 0x0
- const v3, 0x1010436
- aput v3, v1, v2
- sput-object v1, Landroid/support/v7/widget/RecyclerView;->NESTED_SCROLLING_ATTRS:[I
- new-array v1, v0, [I
- const v3, 0x10100eb
- aput v3, v1, v2
- sput-object v1, Landroid/support/v7/widget/RecyclerView;->CLIP_TO_PADDING_ATTR:[I
- sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
- const/16 v3, 0x12
- if-eq v1, v3, :cond_1
- const/16 v3, 0x13
- if-eq v1, v3, :cond_1
- const/16 v3, 0x14
- if-ne v1, v3, :cond_0
- goto :goto_0
- :cond_0
- const/4 v1, 0x0
- goto :goto_1
- :cond_1
- :goto_0
- const/4 v1, 0x1
- :goto_1
- sput-boolean v1, Landroid/support/v7/widget/RecyclerView;->FORCE_INVALIDATE_DISPLAY_LIST:Z
- sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
- const/16 v3, 0x17
- if-lt v1, v3, :cond_2
- const/4 v1, 0x1
- goto :goto_2
- :cond_2
- const/4 v1, 0x0
- :goto_2
- sput-boolean v1, Landroid/support/v7/widget/RecyclerView;->ALLOW_SIZE_IN_UNSPECIFIED_SPEC:Z
- const/4 v1, 0x4
- new-array v1, v1, [Ljava/lang/Class;
- const-class v3, Landroid/content/Context;
- aput-object v3, v1, v2
- const-class v2, Landroid/util/AttributeSet;
- aput-object v2, v1, v0
- const/4 v0, 0x2
- sget-object v2, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
- aput-object v2, v1, v0
- const/4 v0, 0x3
- aput-object v2, v1, v0
- sput-object v1, Landroid/support/v7/widget/RecyclerView;->LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class;
- new-instance v0, Landroid/support/v7/widget/RecyclerView$3;
- invoke-direct {v0}, Landroid/support/v7/widget/RecyclerView$3;-><init>()V
- sput-object v0, Landroid/support/v7/widget/RecyclerView;->sQuinticInterpolator:Landroid/view/animation/Interpolator;
- return-void
- .end method
- .method public constructor <init>(Landroid/content/Context;)V
- .locals 1
- const/4 v0, 0x0
- invoke-direct {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
- return-void
- .end method
- .method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
- .locals 1
- .param p2 # Landroid/util/AttributeSet;
- .annotation build Landroid/support/annotation/Nullable;
- .end annotation
- .end param
- const/4 v0, 0x0
- invoke-direct {p0, p1, p2, v0}, Landroid/support/v7/widget/RecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
- return-void
- .end method
- .method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
- .locals 12
- .param p2 # Landroid/util/AttributeSet;
- .annotation build Landroid/support/annotation/Nullable;
- .end annotation
- .end param
- invoke-direct {p0, p1, p2, p3}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
- new-instance v0, Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
- const/4 v1, 0x0
- invoke-direct {v0, p0, v1}, Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;-><init>(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$1;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mObserver:Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
- new-instance v0, Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-direct {v0, p0}, Landroid/support/v7/widget/RecyclerView$Recycler;-><init>(Landroid/support/v7/widget/RecyclerView;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- new-instance v0, Landroid/support/v7/widget/ViewInfoStore;
- invoke-direct {v0}, Landroid/support/v7/widget/ViewInfoStore;-><init>()V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- new-instance v0, Landroid/support/v7/widget/RecyclerView$1;
- invoke-direct {v0, p0}, Landroid/support/v7/widget/RecyclerView$1;-><init>(Landroid/support/v7/widget/RecyclerView;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mUpdateChildViewsRunnable:Ljava/lang/Runnable;
- new-instance v0, Landroid/graphics/Rect;
- invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- new-instance v0, Landroid/graphics/Rect;
- invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- new-instance v0, Landroid/graphics/RectF;
- invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRectF:Landroid/graphics/RectF;
- new-instance v0, Ljava/util/ArrayList;
- invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- new-instance v0, Ljava/util/ArrayList;
- invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- const/4 v0, 0x0
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- new-instance v2, Landroid/support/v7/widget/DefaultItemAnimator;
- invoke-direct {v2}, Landroid/support/v7/widget/DefaultItemAnimator;-><init>()V
- iput-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- const/4 v2, -0x1
- iput v2, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- const/4 v3, 0x1
- iput v3, p0, Landroid/support/v7/widget/RecyclerView;->mScrollFactor:F
- const/4 v3, 0x1
- iput-boolean v3, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
- new-instance v4, Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- invoke-direct {v4, p0}, Landroid/support/v7/widget/RecyclerView$ViewFlinger;-><init>(Landroid/support/v7/widget/RecyclerView;)V
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- new-instance v4, Landroid/support/v7/widget/RecyclerView$State;
- invoke-direct {v4}, Landroid/support/v7/widget/RecyclerView$State;-><init>()V
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemsAddedOrRemoved:Z
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemsChanged:Z
- new-instance v4, Landroid/support/v7/widget/RecyclerView$ItemAnimatorRestoreListener;
- invoke-direct {v4, p0, v1}, Landroid/support/v7/widget/RecyclerView$ItemAnimatorRestoreListener;-><init>(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$1;)V
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorListener:Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
- const/4 v1, 0x2
- new-array v4, v1, [I
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
- new-array v4, v1, [I
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
- new-array v4, v1, [I
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollConsumed:[I
- new-array v4, v1, [I
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
- new-instance v4, Landroid/support/v7/widget/RecyclerView$2;
- invoke-direct {v4, p0}, Landroid/support/v7/widget/RecyclerView$2;-><init>(Landroid/support/v7/widget/RecyclerView;)V
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable;
- new-instance v4, Landroid/support/v7/widget/RecyclerView$4;
- invoke-direct {v4, p0}, Landroid/support/v7/widget/RecyclerView$4;-><init>(Landroid/support/v7/widget/RecyclerView;)V
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoProcessCallback:Landroid/support/v7/widget/ViewInfoStore$ProcessCallback;
- if-eqz p2, :cond_0
- sget-object v4, Landroid/support/v7/widget/RecyclerView;->CLIP_TO_PADDING_ATTR:[I
- invoke-virtual {p1, p2, v4, p3, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
- move-result-object v4
- invoke-virtual {v4, v0, v3}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
- move-result v5
- iput-boolean v5, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- invoke-virtual {v4}, Landroid/content/res/TypedArray;->recycle()V
- goto :goto_0
- :cond_0
- iput-boolean v3, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- :goto_0
- invoke-virtual {p0, v3}, Landroid/view/ViewGroup;->setScrollContainer(Z)V
- invoke-virtual {p0, v3}, Landroid/view/ViewGroup;->setFocusableInTouchMode(Z)V
- sget v4, Landroid/os/Build$VERSION;->SDK_INT:I
- const/16 v5, 0x10
- if-lt v4, v5, :cond_1
- const/4 v4, 0x1
- goto :goto_1
- :cond_1
- const/4 v4, 0x0
- :goto_1
- iput-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mPostUpdatesOnAnimation:Z
- invoke-static {p1}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;
- move-result-object v4
- invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I
- move-result v5
- iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
- invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledMinimumFlingVelocity()I
- move-result v5
- iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mMinFlingVelocity:I
- invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledMaximumFlingVelocity()I
- move-result v4
- iput v4, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getOverScrollMode(Landroid/view/View;)I
- move-result v4
- if-ne v4, v1, :cond_2
- const/4 v1, 0x1
- goto :goto_2
- :cond_2
- const/4 v1, 0x0
- :goto_2
- invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->setWillNotDraw(Z)V
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorListener:Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;
- invoke-virtual {v1, v4}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->setListener(Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->initAdapterManager()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->initChildrenHelper()V
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getImportantForAccessibility(Landroid/view/View;)I
- move-result v1
- if-nez v1, :cond_3
- invoke-static {p0, v3}, Landroid/support/v4/view/ViewCompat;->setImportantForAccessibility(Landroid/view/View;I)V
- :cond_3
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v1
- const-string v4, "accessibility"
- invoke-virtual {v1, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/view/accessibility/AccessibilityManager;
- iput-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager;
- new-instance v1, Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
- invoke-direct {v1, p0}, Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;-><init>(Landroid/support/v7/widget/RecyclerView;)V
- invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->setAccessibilityDelegateCompat(Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;)V
- const/high16 v1, 0x40000
- if-eqz p2, :cond_5
- sget-object v4, Landroid/support/v7/recyclerview/R$styleable;->RecyclerView:[I
- invoke-virtual {p1, p2, v4, p3, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
- move-result-object v4
- sget v5, Landroid/support/v7/recyclerview/R$styleable;->RecyclerView_layoutManager:I
- invoke-virtual {v4, v5}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String;
- move-result-object v8
- sget v5, Landroid/support/v7/recyclerview/R$styleable;->RecyclerView_android_descendantFocusability:I
- invoke-virtual {v4, v5, v2}, Landroid/content/res/TypedArray;->getInt(II)I
- move-result v5
- if-ne v5, v2, :cond_4
- invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->setDescendantFocusability(I)V
- :cond_4
- invoke-virtual {v4}, Landroid/content/res/TypedArray;->recycle()V
- const/4 v11, 0x0
- move-object v6, p0
- move-object v7, p1
- move-object v9, p2
- move v10, p3
- invoke-direct/range {v6 .. v11}, Landroid/support/v7/widget/RecyclerView;->createLayoutManager(Landroid/content/Context;Ljava/lang/String;Landroid/util/AttributeSet;II)V
- sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
- const/16 v2, 0x15
- if-lt v1, v2, :cond_6
- sget-object v1, Landroid/support/v7/widget/RecyclerView;->NESTED_SCROLLING_ATTRS:[I
- invoke-virtual {p1, p2, v1, p3, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
- move-result-object p1
- invoke-virtual {p1, v0, v3}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
- move-result p2
- invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
- move v3, p2
- goto :goto_3
- :cond_5
- invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->setDescendantFocusability(I)V
- :cond_6
- :goto_3
- invoke-virtual {p0, v3}, Landroid/support/v7/widget/RecyclerView;->setNestedScrollingEnabled(Z)V
- return-void
- .end method
- .method static synthetic access$100(Landroid/support/v7/widget/RecyclerView;)Z
- .locals 0
- iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
- return p0
- .end method
- .method static synthetic access$1000(Landroid/support/v7/widget/RecyclerView;)V
- .locals 0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->postAnimationRunner()V
- return-void
- .end method
- .method static synthetic access$1100(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;)V
- .locals 0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchChildAttached(Landroid/view/View;)V
- return-void
- .end method
- .method static synthetic access$1200(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;)V
- .locals 0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchChildDetached(Landroid/view/View;)V
- return-void
- .end method
- .method static synthetic access$1300(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
- .locals 0
- invoke-virtual {p0, p1, p2, p3}, Landroid/view/ViewGroup;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
- return-void
- .end method
- .method static synthetic access$1400(Landroid/support/v7/widget/RecyclerView;I)V
- .locals 0
- invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->detachViewFromParent(I)V
- return-void
- .end method
- .method static synthetic access$200(Landroid/support/v7/widget/RecyclerView;)Z
- .locals 0
- iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- return p0
- .end method
- .method static synthetic access$3000()Landroid/view/animation/Interpolator;
- .locals 1
- sget-object v0, Landroid/support/v7/widget/RecyclerView;->sQuinticInterpolator:Landroid/view/animation/Interpolator;
- return-object v0
- .end method
- .method static synthetic access$302(Landroid/support/v7/widget/RecyclerView;Z)Z
- .locals 0
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- return p1
- .end method
- .method static synthetic access$3100(Landroid/support/v7/widget/RecyclerView;)Landroid/support/v7/widget/RecyclerView$Adapter;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- return-object p0
- .end method
- .method static synthetic access$3200(Landroid/support/v7/widget/RecyclerView;)V
- .locals 0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
- return-void
- .end method
- .method static synthetic access$3300(Landroid/support/v7/widget/RecyclerView;)V
- .locals 0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->repositionShadowingViews()V
- return-void
- .end method
- .method static synthetic access$3400(Landroid/support/v7/widget/RecyclerView;)V
- .locals 0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
- return-void
- .end method
- .method static synthetic access$3600(Landroid/support/v7/widget/RecyclerView;)Ljava/util/ArrayList;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- return-object p0
- .end method
- .method static synthetic access$3700(Landroid/support/v7/widget/RecyclerView;II)V
- .locals 0
- invoke-direct {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->considerReleasingGlowsOnScroll(II)V
- return-void
- .end method
- .method static synthetic access$3800(Landroid/support/v7/widget/RecyclerView;)Z
- .locals 0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->awakenScrollBars()Z
- move-result p0
- return p0
- .end method
- .method static synthetic access$3900(Landroid/support/v7/widget/RecyclerView;I)V
- .locals 0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
- return-void
- .end method
- .method static synthetic access$400(Landroid/support/v7/widget/RecyclerView;)V
- .locals 0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->consumePendingUpdateOperations()V
- return-void
- .end method
- .method static synthetic access$4000(Landroid/support/v7/widget/RecyclerView;)V
- .locals 0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->setDataSetChangedAfterLayout()V
- return-void
- .end method
- .method static synthetic access$4100(Landroid/support/v7/widget/RecyclerView;)Z
- .locals 0
- iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mPostUpdatesOnAnimation:Z
- return p0
- .end method
- .method static synthetic access$4200(Landroid/support/v7/widget/RecyclerView;)Z
- .locals 0
- iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mHasFixedSize:Z
- return p0
- .end method
- .method static synthetic access$4300(Landroid/support/v7/widget/RecyclerView;)Ljava/lang/Runnable;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mUpdateChildViewsRunnable:Ljava/lang/Runnable;
- return-object p0
- .end method
- .method static synthetic access$4402(Landroid/support/v7/widget/RecyclerView;Z)Z
- .locals 0
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z
- return p1
- .end method
- .method static synthetic access$4500()Z
- .locals 1
- sget-boolean v0, Landroid/support/v7/widget/RecyclerView;->FORCE_INVALIDATE_DISPLAY_LIST:Z
- return v0
- .end method
- .method static synthetic access$4600(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- .locals 0
- invoke-direct {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->recordAnimationInfoIfBouncedHiddenView(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- return-void
- .end method
- .method static synthetic access$4700(Landroid/support/v7/widget/RecyclerView;)Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
- return-object p0
- .end method
- .method static synthetic access$5100(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
- .locals 0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->canReuseUpdatedViewHolder(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
- move-result p0
- return p0
- .end method
- .method static synthetic access$5200(Landroid/support/v7/widget/RecyclerView;)Landroid/support/v7/widget/RecyclerView$RecyclerListener;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mRecyclerListener:Landroid/support/v7/widget/RecyclerView$RecyclerListener;
- return-object p0
- .end method
- .method static synthetic access$5300(Landroid/support/v7/widget/RecyclerView;)Landroid/graphics/Rect;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- return-object p0
- .end method
- .method static synthetic access$5400(Landroid/support/v7/widget/RecyclerView;)Z
- .locals 0
- iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- return p0
- .end method
- .method static synthetic access$5500(Landroid/support/v7/widget/RecyclerView;)Landroid/graphics/RectF;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRectF:Landroid/graphics/RectF;
- return-object p0
- .end method
- .method static synthetic access$5600(Landroid/support/v7/widget/RecyclerView;II)V
- .locals 0
- invoke-virtual {p0, p1, p2}, Landroid/view/ViewGroup;->setMeasuredDimension(II)V
- return-void
- .end method
- .method static synthetic access$5700(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
- .locals 0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->getAdapterPositionFor(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
- move-result p0
- return p0
- .end method
- .method static synthetic access$5900(Landroid/support/v7/widget/RecyclerView;)Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- .locals 0
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- return-object p0
- .end method
- .method static synthetic access$602(Landroid/support/v7/widget/RecyclerView;Z)Z
- .locals 0
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
- return p1
- .end method
- .method static synthetic access$6200(Landroid/support/v7/widget/RecyclerView;I)V
- .locals 0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->jumpToPositionForSmoothScroller(I)V
- return-void
- .end method
- .method static synthetic access$6400(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;)Z
- .locals 0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->removeAnimatingView(Landroid/view/View;)Z
- move-result p0
- return p0
- .end method
- .method static synthetic access$700(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- .locals 0
- invoke-direct {p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView;->animateDisappearance(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- return-void
- .end method
- .method static synthetic access$800(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- .locals 0
- invoke-direct {p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView;->animateAppearance(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- return-void
- .end method
- .method static synthetic access$900(Landroid/support/v7/widget/RecyclerView;)Z
- .locals 0
- iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- return p0
- .end method
- .method private addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- .locals 5
- iget-object v0, p1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- invoke-virtual {v0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
- move-result-object v1
- const/4 v2, 0x1
- if-ne v1, p0, :cond_0
- const/4 v1, 0x1
- goto :goto_0
- :cond_0
- const/4 v1, 0x0
- :goto_0
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v4
- invoke-virtual {v3, v4}, Landroid/support/v7/widget/RecyclerView$Recycler;->unscrapView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isTmpDetached()Z
- move-result p1
- if-eqz p1, :cond_1
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- const/4 v1, -0x1
- invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v3
- invoke-virtual {p1, v0, v1, v3, v2}, Landroid/support/v7/widget/ChildHelper;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)V
- goto :goto_1
- :cond_1
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- if-nez v1, :cond_2
- invoke-virtual {p1, v0, v2}, Landroid/support/v7/widget/ChildHelper;->addView(Landroid/view/View;Z)V
- goto :goto_1
- :cond_2
- invoke-virtual {p1, v0}, Landroid/support/v7/widget/ChildHelper;->hide(Landroid/view/View;)V
- :goto_1
- return-void
- .end method
- .method private animateAppearance(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- .locals 1
- .param p1 # Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .annotation build Landroid/support/annotation/NonNull;
- .end annotation
- .end param
- .param p2 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- .annotation build Landroid/support/annotation/Nullable;
- .end annotation
- .end param
- .param p3 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- .annotation build Landroid/support/annotation/NonNull;
- .end annotation
- .end param
- const/4 v0, 0x0
- invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- invoke-virtual {v0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->animateAppearance(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)Z
- move-result p1
- if-eqz p1, :cond_0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->postAnimationRunner()V
- :cond_0
- return-void
- .end method
- .method private animateChange(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;ZZ)V
- .locals 1
- .param p1 # Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .annotation build Landroid/support/annotation/NonNull;
- .end annotation
- .end param
- .param p2 # Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .annotation build Landroid/support/annotation/NonNull;
- .end annotation
- .end param
- .param p3 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- .annotation build Landroid/support/annotation/NonNull;
- .end annotation
- .end param
- .param p4 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- .annotation build Landroid/support/annotation/NonNull;
- .end annotation
- .end param
- const/4 v0, 0x0
- invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V
- if-eqz p5, :cond_0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- :cond_0
- if-eq p1, p2, :cond_2
- if-eqz p6, :cond_1
- invoke-direct {p0, p2}, Landroid/support/v7/widget/RecyclerView;->addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- :cond_1
- iput-object p2, p1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mShadowedHolder:Landroid/support/v7/widget/RecyclerView$ViewHolder;
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- iget-object p5, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {p5, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->unscrapView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- invoke-virtual {p2, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V
- iput-object p1, p2, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroid/support/v7/widget/RecyclerView$ViewHolder;
- :cond_2
- iget-object p5, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- invoke-virtual {p5, p1, p2, p3, p4}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->animateChange(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)Z
- move-result p1
- if-eqz p1, :cond_3
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->postAnimationRunner()V
- :cond_3
- return-void
- .end method
- .method private animateDisappearance(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- .locals 1
- .param p1 # Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .annotation build Landroid/support/annotation/NonNull;
- .end annotation
- .end param
- .param p2 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- .annotation build Landroid/support/annotation/NonNull;
- .end annotation
- .end param
- .param p3 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- .annotation build Landroid/support/annotation/Nullable;
- .end annotation
- .end param
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- const/4 v0, 0x0
- invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- invoke-virtual {v0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->animateDisappearance(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)Z
- move-result p1
- if-eqz p1, :cond_0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->postAnimationRunner()V
- :cond_0
- return-void
- .end method
- .method private canReuseUpdatedViewHolder(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz v0, :cond_1
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List;
- move-result-object v1
- invoke-virtual {v0, p1, v1}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->canReuseUpdatedViewHolder(Landroid/support/v7/widget/RecyclerView$ViewHolder;Ljava/util/List;)Z
- move-result p1
- if-eqz p1, :cond_0
- goto :goto_0
- :cond_0
- const/4 p1, 0x0
- goto :goto_1
- :cond_1
- :goto_0
- const/4 p1, 0x1
- :goto_1
- return p1
- .end method
- .method private cancelTouch()V
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->resetTouch()V
- const/4 v0, 0x0
- invoke-direct {p0, v0}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
- return-void
- .end method
- .method private considerReleasingGlowsOnScroll(II)V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result v0
- if-nez v0, :cond_0
- if-lez p1, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result v0
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- :goto_0
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v1, :cond_1
- invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result v1
- if-nez v1, :cond_1
- if-gez p1, :cond_1
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result p1
- or-int/2addr v0, p1
- :cond_1
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz p1, :cond_2
- invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result p1
- if-nez p1, :cond_2
- if-lez p2, :cond_2
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result p1
- or-int/2addr v0, p1
- :cond_2
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz p1, :cond_3
- invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result p1
- if-nez p1, :cond_3
- if-gez p2, :cond_3
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result p1
- or-int/2addr v0, p1
- :cond_3
- if-eqz v0, :cond_4
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- :cond_4
- return-void
- .end method
- .method private consumePendingUpdateOperations()V
- .locals 3
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
- const-string v1, "RV FullInvalidate"
- if-eqz v0, :cond_6
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- if-eqz v0, :cond_0
- goto :goto_2
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->hasPendingUpdates()Z
- move-result v0
- if-nez v0, :cond_1
- return-void
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- const/4 v2, 0x4
- invoke-virtual {v0, v2}, Landroid/support/v7/widget/AdapterHelper;->hasAnyUpdateTypes(I)Z
- move-result v0
- if-eqz v0, :cond_4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- const/16 v2, 0xb
- invoke-virtual {v0, v2}, Landroid/support/v7/widget/AdapterHelper;->hasAnyUpdateTypes(I)Z
- move-result v0
- if-nez v0, :cond_4
- const-string v0, "RV PartialInvalidate"
- invoke-static {v0}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->preProcess()V
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- if-nez v0, :cond_3
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->hasUpdatedView()Z
- move-result v0
- if-eqz v0, :cond_2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
- goto :goto_0
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->consumePostponedUpdates()V
- :cond_3
- :goto_0
- const/4 v0, 0x1
- invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- goto :goto_1
- :cond_4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->hasPendingUpdates()Z
- move-result v0
- if-eqz v0, :cond_5
- invoke-static {v1}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
- :goto_1
- invoke-static {}, Landroid/support/v4/os/TraceCompat;->endSection()V
- :cond_5
- return-void
- :cond_6
- :goto_2
- invoke-static {v1}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
- invoke-static {}, Landroid/support/v4/os/TraceCompat;->endSection()V
- return-void
- .end method
- .method private createLayoutManager(Landroid/content/Context;Ljava/lang/String;Landroid/util/AttributeSet;II)V
- .locals 7
- const-string v0, ": Could not instantiate the LayoutManager: "
- if-eqz p2, :cond_1
- invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;
- move-result-object p2
- invoke-virtual {p2}, Ljava/lang/String;->length()I
- move-result v1
- if-eqz v1, :cond_1
- invoke-direct {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->getFullClassName(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
- move-result-object p2
- :try_start_0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->isInEditMode()Z
- move-result v1
- if-eqz v1, :cond_0
- invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
- move-result-object v1
- invoke-virtual {v1}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
- move-result-object v1
- goto :goto_0
- :cond_0
- invoke-virtual {p1}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
- move-result-object v1
- :goto_0
- invoke-virtual {v1, p2}, Ljava/lang/ClassLoader;->loadClass(Ljava/lang/String;)Ljava/lang/Class;
- move-result-object v1
- const-class v2, Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v1, v2}, Ljava/lang/Class;->asSubclass(Ljava/lang/Class;)Ljava/lang/Class;
- move-result-object v1
- :try_end_0
- .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_6
- .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_0 .. :try_end_0} :catch_5
- .catch Ljava/lang/InstantiationException; {:try_start_0 .. :try_end_0} :catch_4
- .catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_3
- .catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_2
- const/4 v2, 0x0
- const/4 v3, 0x1
- const/4 v4, 0x0
- :try_start_1
- sget-object v5, Landroid/support/v7/widget/RecyclerView;->LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class;
- invoke-virtual {v1, v5}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
- move-result-object v5
- const/4 v6, 0x4
- new-array v6, v6, [Ljava/lang/Object;
- aput-object p1, v6, v4
- aput-object p3, v6, v3
- const/4 p1, 0x2
- invoke-static {p4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object p4
- aput-object p4, v6, p1
- const/4 p1, 0x3
- invoke-static {p5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object p4
- aput-object p4, v6, p1
- :try_end_1
- .catch Ljava/lang/NoSuchMethodException; {:try_start_1 .. :try_end_1} :catch_0
- .catch Ljava/lang/ClassNotFoundException; {:try_start_1 .. :try_end_1} :catch_6
- .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_1 .. :try_end_1} :catch_5
- .catch Ljava/lang/InstantiationException; {:try_start_1 .. :try_end_1} :catch_4
- .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_3
- .catch Ljava/lang/ClassCastException; {:try_start_1 .. :try_end_1} :catch_2
- move-object v2, v6
- goto :goto_1
- :catch_0
- move-exception p1
- :try_start_2
- new-array p4, v4, [Ljava/lang/Class;
- invoke-virtual {v1, p4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
- move-result-object v5
- :try_end_2
- .catch Ljava/lang/NoSuchMethodException; {:try_start_2 .. :try_end_2} :catch_1
- .catch Ljava/lang/ClassNotFoundException; {:try_start_2 .. :try_end_2} :catch_6
- .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_2 .. :try_end_2} :catch_5
- .catch Ljava/lang/InstantiationException; {:try_start_2 .. :try_end_2} :catch_4
- .catch Ljava/lang/IllegalAccessException; {:try_start_2 .. :try_end_2} :catch_3
- .catch Ljava/lang/ClassCastException; {:try_start_2 .. :try_end_2} :catch_2
- :goto_1
- :try_start_3
- invoke-virtual {v5, v3}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
- invoke-virtual {v5, v2}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
- move-result-object p1
- check-cast p1, Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->setLayoutManager(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V
- goto/16 :goto_2
- :catch_1
- move-exception p4
- invoke-virtual {p4, p1}, Ljava/lang/NoSuchMethodException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
- new-instance p1, Ljava/lang/IllegalStateException;
- new-instance p5, Ljava/lang/StringBuilder;
- invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
- invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
- move-result-object v1
- invoke-virtual {p5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- const-string v1, ": Error creating LayoutManager "
- invoke-virtual {p5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p5
- invoke-direct {p1, p5, p4}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
- throw p1
- :try_end_3
- .catch Ljava/lang/ClassNotFoundException; {:try_start_3 .. :try_end_3} :catch_6
- .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_3 .. :try_end_3} :catch_5
- .catch Ljava/lang/InstantiationException; {:try_start_3 .. :try_end_3} :catch_4
- .catch Ljava/lang/IllegalAccessException; {:try_start_3 .. :try_end_3} :catch_3
- .catch Ljava/lang/ClassCastException; {:try_start_3 .. :try_end_3} :catch_2
- :catch_2
- move-exception p1
- new-instance p4, Ljava/lang/IllegalStateException;
- new-instance p5, Ljava/lang/StringBuilder;
- invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
- invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
- move-result-object p3
- invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- const-string p3, ": Class is not a LayoutManager "
- invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
- throw p4
- :catch_3
- move-exception p1
- new-instance p4, Ljava/lang/IllegalStateException;
- new-instance p5, Ljava/lang/StringBuilder;
- invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
- invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
- move-result-object p3
- invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- const-string p3, ": Cannot access non-public constructor "
- invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
- throw p4
- :catch_4
- move-exception p1
- new-instance p4, Ljava/lang/IllegalStateException;
- new-instance p5, Ljava/lang/StringBuilder;
- invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
- invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
- move-result-object p3
- invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
- throw p4
- :catch_5
- move-exception p1
- new-instance p4, Ljava/lang/IllegalStateException;
- new-instance p5, Ljava/lang/StringBuilder;
- invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
- invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
- move-result-object p3
- invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
- throw p4
- :catch_6
- move-exception p1
- new-instance p4, Ljava/lang/IllegalStateException;
- new-instance p5, Ljava/lang/StringBuilder;
- invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
- invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
- move-result-object p3
- invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- const-string p3, ": Unable to find LayoutManager "
- invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
- throw p4
- :cond_1
- :goto_2
- return-void
- .end method
- .method private didChildRangeChange(II)Z
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- const/4 v1, 0x1
- const/4 v2, 0x0
- if-nez v0, :cond_2
- if-nez p1, :cond_1
- if-eqz p2, :cond_0
- goto :goto_0
- :cond_0
- const/4 v1, 0x0
- :cond_1
- :goto_0
- return v1
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
- invoke-direct {p0, v0}, Landroid/support/v7/widget/RecyclerView;->findMinMaxChildLayoutPositions([I)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
- aget v3, v0, v2
- if-ne v3, p1, :cond_4
- aget p1, v0, v1
- if-eq p1, p2, :cond_3
- goto :goto_1
- :cond_3
- const/4 v1, 0x0
- :cond_4
- :goto_1
- return v1
- .end method
- .method private dispatchChildAttached(Landroid/view/View;)V
- .locals 2
- invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v0
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onChildAttachedToWindow(Landroid/view/View;)V
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz v1, :cond_0
- if-eqz v0, :cond_0
- invoke-virtual {v1, v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->onViewAttachedToWindow(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- if-eqz v0, :cond_1
- invoke-interface {v0}, Ljava/util/List;->size()I
- move-result v0
- add-int/lit8 v0, v0, -0x1
- :goto_0
- if-ltz v0, :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;
- invoke-interface {v1, p1}, Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;->onChildViewAttachedToWindow(Landroid/view/View;)V
- add-int/lit8 v0, v0, -0x1
- goto :goto_0
- :cond_1
- return-void
- .end method
- .method private dispatchChildDetached(Landroid/view/View;)V
- .locals 2
- invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v0
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onChildDetachedFromWindow(Landroid/view/View;)V
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz v1, :cond_0
- if-eqz v0, :cond_0
- invoke-virtual {v1, v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->onViewDetachedFromWindow(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- if-eqz v0, :cond_1
- invoke-interface {v0}, Ljava/util/List;->size()I
- move-result v0
- add-int/lit8 v0, v0, -0x1
- :goto_0
- if-ltz v0, :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;
- invoke-interface {v1, p1}, Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;->onChildViewDetachedFromWindow(Landroid/view/View;)V
- add-int/lit8 v0, v0, -0x1
- goto :goto_0
- :cond_1
- return-void
- .end method
- .method private dispatchContentChangedIfNecessary()V
- .locals 3
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I
- const/4 v1, 0x0
- iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I
- if-eqz v0, :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isAccessibilityEnabled()Z
- move-result v1
- if-eqz v1, :cond_0
- invoke-static {}, Landroid/view/accessibility/AccessibilityEvent;->obtain()Landroid/view/accessibility/AccessibilityEvent;
- move-result-object v1
- const/16 v2, 0x800
- invoke-virtual {v1, v2}, Landroid/view/accessibility/AccessibilityEvent;->setEventType(I)V
- invoke-static {v1, v0}, Landroid/support/v4/view/accessibility/AccessibilityEventCompat;->setContentChangeTypes(Landroid/view/accessibility/AccessibilityEvent;I)V
- invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V
- :cond_0
- return-void
- .end method
- .method private dispatchLayoutStep1()V
- .locals 8
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v1, 0x1
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->assertLayoutStep(I)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v2, 0x0
- invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2202(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v0}, Landroid/support/v7/widget/ViewInfoStore;->clear()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->saveFocusInfo()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->processAdapterUpdatesAndSetAnimationFlags()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v3
- if-eqz v3, :cond_0
- iget-boolean v3, p0, Landroid/support/v7/widget/RecyclerView;->mItemsChanged:Z
- if-eqz v3, :cond_0
- goto :goto_0
- :cond_0
- const/4 v1, 0x0
- :goto_0
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2702(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iput-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemsChanged:Z
- iput-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemsAddedOrRemoved:Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2300(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v1
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$Adapter;->getItemCount()I
- move-result v1
- iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
- invoke-direct {p0, v0}, Landroid/support/v7/widget/RecyclerView;->findMinMaxChildLayoutPositions([I)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v0
- if-eqz v0, :cond_3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_1
- if-ge v1, v0, :cond_3
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v3, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v3
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v3
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v4
- if-nez v4, :cond_2
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isInvalid()Z
- move-result v4
- if-eqz v4, :cond_1
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {v4}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
- move-result v4
- if-nez v4, :cond_1
- goto :goto_2
- :cond_1
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->buildAdapterChangeFlagsForAnimations(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
- move-result v6
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List;
- move-result-object v7
- invoke-virtual {v4, v5, v3, v6, v7}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->recordPreLayoutInformation(Landroid/support/v7/widget/RecyclerView$State;Landroid/support/v7/widget/RecyclerView$ViewHolder;ILjava/util/List;)Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- move-result-object v4
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v5, v3, v4}, Landroid/support/v7/widget/ViewInfoStore;->addToPreLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v4}, Landroid/support/v7/widget/RecyclerView$State;->access$2700(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v4
- if-eqz v4, :cond_2
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isUpdated()Z
- move-result v4
- if-eqz v4, :cond_2
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
- move-result v4
- if-nez v4, :cond_2
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v4
- if-nez v4, :cond_2
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isInvalid()Z
- move-result v4
- if-nez v4, :cond_2
- invoke-virtual {p0, v3}, Landroid/support/v7/widget/RecyclerView;->getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
- move-result-wide v4
- iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v6, v4, v5, v3}, Landroid/support/v7/widget/ViewInfoStore;->addToOldChangeHolders(JLandroid/support/v7/widget/RecyclerView$ViewHolder;)V
- :cond_2
- :goto_2
- add-int/lit8 v1, v1, 0x1
- goto :goto_1
- :cond_3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2300(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v0
- if-eqz v0, :cond_8
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->saveOldPositions()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$1800(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v0
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v1, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v1, v3, v4}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onLayoutChildren(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v1, v0}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- const/4 v0, 0x0
- :goto_3
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v1}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v1
- if-ge v0, v1, :cond_8
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v1, v0}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v1
- invoke-static {v1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v1
- invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v3
- if-eqz v3, :cond_4
- goto :goto_4
- :cond_4
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v3, v1}, Landroid/support/v7/widget/ViewInfoStore;->isInPreLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
- move-result v3
- if-nez v3, :cond_7
- invoke-static {v1}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->buildAdapterChangeFlagsForAnimations(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
- move-result v3
- const/16 v4, 0x2000
- invoke-virtual {v1, v4}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->hasAnyOfTheFlags(I)Z
- move-result v4
- if-nez v4, :cond_5
- or-int/lit16 v3, v3, 0x1000
- :cond_5
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List;
- move-result-object v7
- invoke-virtual {v5, v6, v1, v3, v7}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->recordPreLayoutInformation(Landroid/support/v7/widget/RecyclerView$State;Landroid/support/v7/widget/RecyclerView$ViewHolder;ILjava/util/List;)Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- move-result-object v3
- if-eqz v4, :cond_6
- invoke-direct {p0, v1, v3}, Landroid/support/v7/widget/RecyclerView;->recordAnimationInfoIfBouncedHiddenView(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- goto :goto_4
- :cond_6
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v4, v1, v3}, Landroid/support/v7/widget/ViewInfoStore;->addToAppearedInPreLayoutHolders(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- :cond_7
- :goto_4
- add-int/lit8 v0, v0, 0x1
- goto :goto_3
- :cond_8
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->clearOldPositions()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
- invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v1, 0x2
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2102(Landroid/support/v7/widget/RecyclerView$State;I)I
- return-void
- .end method
- .method private dispatchLayoutStep2()V
- .locals 4
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v1, 0x6
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->assertLayoutStep(I)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->consumeUpdatesInOnePass()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$Adapter;->getItemCount()I
- move-result v1
- iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v1, 0x0
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$1702(Landroid/support/v7/widget/RecyclerView$State;I)I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v2, v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onLayoutChildren(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- const/4 v0, 0x0
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v2
- if-eqz v2, :cond_0
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz v2, :cond_0
- const/4 v2, 0x1
- goto :goto_0
- :cond_0
- const/4 v2, 0x0
- :goto_0
- invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2502(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v2, 0x4
- invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2102(Landroid/support/v7/widget/RecyclerView$State;I)I
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
- invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- return-void
- .end method
- .method private dispatchLayoutStep3()V
- .locals 11
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v1, 0x4
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->assertLayoutStep(I)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v1, 0x1
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2102(Landroid/support/v7/widget/RecyclerView$State;I)I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v0
- if-eqz v0, :cond_5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- sub-int/2addr v0, v1
- :goto_0
- if-ltz v0, :cond_4
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v0}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v5
- invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v2
- if-eqz v2, :cond_0
- goto :goto_2
- :cond_0
- invoke-virtual {p0, v5}, Landroid/support/v7/widget/RecyclerView;->getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
- move-result-wide v2
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v4, v6, v5}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->recordPostLayoutInformation(Landroid/support/v7/widget/RecyclerView$State;Landroid/support/v7/widget/RecyclerView$ViewHolder;)Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- move-result-object v4
- iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v6, v2, v3}, Landroid/support/v7/widget/ViewInfoStore;->getFromOldChangeHolders(J)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v6
- if-eqz v6, :cond_3
- invoke-virtual {v6}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v7
- if-nez v7, :cond_3
- iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v7, v6}, Landroid/support/v7/widget/ViewInfoStore;->isDisappearing(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
- move-result v8
- iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v7, v5}, Landroid/support/v7/widget/ViewInfoStore;->isDisappearing(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
- move-result v9
- if-eqz v8, :cond_1
- if-ne v6, v5, :cond_1
- goto :goto_1
- :cond_1
- iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v7, v6}, Landroid/support/v7/widget/ViewInfoStore;->popFromPreLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- move-result-object v7
- iget-object v10, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v10, v5, v4}, Landroid/support/v7/widget/ViewInfoStore;->addToPostLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v4, v5}, Landroid/support/v7/widget/ViewInfoStore;->popFromPostLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
- move-result-object v10
- if-nez v7, :cond_2
- invoke-direct {p0, v2, v3, v5, v6}, Landroid/support/v7/widget/RecyclerView;->handleMissingPreInfoForChangeError(JLandroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- goto :goto_2
- :cond_2
- move-object v3, p0
- move-object v4, v6
- move-object v6, v7
- move-object v7, v10
- invoke-direct/range {v3 .. v9}, Landroid/support/v7/widget/RecyclerView;->animateChange(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;ZZ)V
- goto :goto_2
- :cond_3
- :goto_1
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v2, v5, v4}, Landroid/support/v7/widget/ViewInfoStore;->addToPostLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- :goto_2
- add-int/lit8 v0, v0, -0x1
- goto :goto_0
- :cond_4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoProcessCallback:Landroid/support/v7/widget/ViewInfoStore$ProcessCallback;
- invoke-virtual {v0, v2}, Landroid/support/v7/widget/ViewInfoStore;->process(Landroid/support/v7/widget/ViewInfoStore$ProcessCallback;)V
- :cond_5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, v2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->removeAndRecycleScrapInt(Landroid/support/v7/widget/RecyclerView$Recycler;)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget v2, v0, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
- invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2802(Landroid/support/v7/widget/RecyclerView$State;I)I
- const/4 v0, 0x0
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v2, v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2502(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v2, v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2302(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-static {v2, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->access$2602(Landroid/support/v7/widget/RecyclerView$LayoutManager;Z)Z
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-static {v2}, Landroid/support/v7/widget/RecyclerView$Recycler;->access$2900(Landroid/support/v7/widget/RecyclerView$Recycler;)Ljava/util/ArrayList;
- move-result-object v2
- if-eqz v2, :cond_6
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-static {v2}, Landroid/support/v7/widget/RecyclerView$Recycler;->access$2900(Landroid/support/v7/widget/RecyclerView$Recycler;)Ljava/util/ArrayList;
- move-result-object v2
- invoke-virtual {v2}, Ljava/util/ArrayList;->clear()V
- :cond_6
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v2, v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onLayoutCompleted(Landroid/support/v7/widget/RecyclerView$State;)V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
- invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v2}, Landroid/support/v7/widget/ViewInfoStore;->clear()V
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
- aget v3, v2, v0
- aget v1, v2, v1
- invoke-direct {p0, v3, v1}, Landroid/support/v7/widget/RecyclerView;->didChildRangeChange(II)Z
- move-result v1
- if-eqz v1, :cond_7
- invoke-virtual {p0, v0, v0}, Landroid/support/v7/widget/RecyclerView;->dispatchOnScrolled(II)V
- :cond_7
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->recoverFocusFromState()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->resetFocusInfo()V
- return-void
- .end method
- .method private dispatchOnItemTouch(Landroid/view/MotionEvent;)Z
- .locals 6
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I
- move-result v0
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- const/4 v2, 0x1
- if-eqz v1, :cond_3
- const/4 v3, 0x0
- if-nez v0, :cond_0
- iput-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- goto :goto_0
- :cond_0
- invoke-interface {v1, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;->onTouchEvent(Landroid/support/v7/widget/RecyclerView;Landroid/view/MotionEvent;)V
- const/4 p1, 0x3
- if-eq v0, p1, :cond_1
- if-ne v0, v2, :cond_2
- :cond_1
- iput-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- :cond_2
- return v2
- :cond_3
- :goto_0
- const/4 v1, 0x0
- if-eqz v0, :cond_5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
- move-result v0
- const/4 v3, 0x0
- :goto_1
- if-ge v3, v0, :cond_5
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- invoke-virtual {v4, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v4
- check-cast v4, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- invoke-interface {v4, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;->onInterceptTouchEvent(Landroid/support/v7/widget/RecyclerView;Landroid/view/MotionEvent;)Z
- move-result v5
- if-eqz v5, :cond_4
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- return v2
- :cond_4
- add-int/lit8 v3, v3, 0x1
- goto :goto_1
- :cond_5
- return v1
- .end method
- .method private dispatchOnItemTouchIntercept(Landroid/view/MotionEvent;)Z
- .locals 7
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I
- move-result v0
- const/4 v1, 0x3
- if-eq v0, v1, :cond_0
- if-nez v0, :cond_1
- :cond_0
- const/4 v2, 0x0
- iput-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- :cond_1
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- invoke-virtual {v2}, Ljava/util/ArrayList;->size()I
- move-result v2
- const/4 v3, 0x0
- const/4 v4, 0x0
- :goto_0
- if-ge v4, v2, :cond_3
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- invoke-virtual {v5, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v5
- check-cast v5, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- invoke-interface {v5, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;->onInterceptTouchEvent(Landroid/support/v7/widget/RecyclerView;Landroid/view/MotionEvent;)Z
- move-result v6
- if-eqz v6, :cond_2
- if-eq v0, v1, :cond_2
- iput-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- const/4 p1, 0x1
- return p1
- :cond_2
- add-int/lit8 v4, v4, 0x1
- goto :goto_0
- :cond_3
- return v3
- .end method
- .method private findMinMaxChildLayoutPositions([I)V
- .locals 8
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- const/4 v1, 0x1
- const/4 v2, 0x0
- if-nez v0, :cond_0
- aput v2, p1, v2
- aput v2, p1, v1
- return-void
- :cond_0
- const v3, 0x7fffffff
- const/high16 v4, -0x80000000
- const/4 v3, 0x0
- const v4, 0x7fffffff
- const/high16 v5, -0x80000000
- :goto_0
- if-ge v3, v0, :cond_4
- iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v6, v3}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v6
- invoke-static {v6}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v6
- invoke-virtual {v6}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v7
- if-eqz v7, :cond_1
- goto :goto_1
- :cond_1
- invoke-virtual {v6}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getLayoutPosition()I
- move-result v6
- if-ge v6, v4, :cond_2
- move v4, v6
- :cond_2
- if-le v6, v5, :cond_3
- move v5, v6
- :cond_3
- :goto_1
- add-int/lit8 v3, v3, 0x1
- goto :goto_0
- :cond_4
- aput v4, p1, v2
- aput v5, p1, v1
- return-void
- .end method
- .method private getAdapterPositionFor(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
- .locals 1
- const/16 v0, 0x20c
- invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->hasAnyOfTheFlags(I)Z
- move-result v0
- if-nez v0, :cond_1
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isBound()Z
- move-result v0
- if-nez v0, :cond_0
- goto :goto_0
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- iget p1, p1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/AdapterHelper;->applyPendingUpdatesToPosition(I)I
- move-result p1
- return p1
- :cond_1
- :goto_0
- const/4 p1, -0x1
- return p1
- .end method
- .method static getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .locals 0
- if-nez p0, :cond_0
- const/4 p0, 0x0
- return-object p0
- :cond_0
- invoke-virtual {p0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object p0
- check-cast p0, Landroid/support/v7/widget/RecyclerView$LayoutParams;
- iget-object p0, p0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mViewHolder:Landroid/support/v7/widget/RecyclerView$ViewHolder;
- return-object p0
- .end method
- .method private getDeepestFocusedViewWithId(Landroid/view/View;)I
- .locals 3
- :goto_0
- invoke-virtual {p1}, Landroid/view/View;->getId()I
- move-result v0
- :cond_0
- invoke-virtual {p1}, Landroid/view/View;->isFocused()Z
- move-result v1
- if-nez v1, :cond_1
- instance-of v1, p1, Landroid/view/ViewGroup;
- if-eqz v1, :cond_1
- invoke-virtual {p1}, Landroid/view/View;->hasFocus()Z
- move-result v1
- if-eqz v1, :cond_1
- check-cast p1, Landroid/view/ViewGroup;
- invoke-virtual {p1}, Landroid/view/ViewGroup;->getFocusedChild()Landroid/view/View;
- move-result-object p1
- invoke-virtual {p1}, Landroid/view/View;->getId()I
- move-result v1
- const/4 v2, -0x1
- if-eq v1, v2, :cond_0
- goto :goto_0
- :cond_1
- return v0
- .end method
- .method private getFullClassName(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
- .locals 2
- const/4 v0, 0x0
- invoke-virtual {p2, v0}, Ljava/lang/String;->charAt(I)C
- move-result v0
- const/16 v1, 0x2e
- if-ne v0, v1, :cond_0
- new-instance v0, Ljava/lang/StringBuilder;
- invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
- invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
- move-result-object p1
- invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p1
- return-object p1
- :cond_0
- const-string p1, "."
- invoke-virtual {p2, p1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
- move-result p1
- if-eqz p1, :cond_1
- return-object p2
- :cond_1
- new-instance p1, Ljava/lang/StringBuilder;
- invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
- const-class v0, Landroid/support/v7/widget/RecyclerView;
- invoke-virtual {v0}, Ljava/lang/Class;->getPackage()Ljava/lang/Package;
- move-result-object v0
- invoke-virtual {v0}, Ljava/lang/Package;->getName()Ljava/lang/String;
- move-result-object v0
- invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
- invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p1
- return-object p1
- .end method
- .method private getScrollFactor()F
- .locals 4
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollFactor:F
- const/4 v1, 0x1
- cmpl-float v0, v0, v1
- if-nez v0, :cond_1
- new-instance v0, Landroid/util/TypedValue;
- invoke-direct {v0}, Landroid/util/TypedValue;-><init>()V
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-virtual {v1}, Landroid/content/Context;->getTheme()Landroid/content/res/Resources$Theme;
- move-result-object v1
- const v2, 0x101004d
- const/4 v3, 0x1
- invoke-virtual {v1, v2, v0, v3}, Landroid/content/res/Resources$Theme;->resolveAttribute(ILandroid/util/TypedValue;Z)Z
- move-result v1
- if-eqz v1, :cond_0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
- move-result-object v1
- invoke-virtual {v1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
- move-result-object v1
- invoke-virtual {v0, v1}, Landroid/util/TypedValue;->getDimension(Landroid/util/DisplayMetrics;)F
- move-result v0
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollFactor:F
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- return v0
- :cond_1
- :goto_0
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollFactor:F
- return v0
- .end method
- .method private getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollingChildHelper:Landroid/support/v4/view/NestedScrollingChildHelper;
- if-nez v0, :cond_0
- new-instance v0, Landroid/support/v4/view/NestedScrollingChildHelper;
- invoke-direct {v0, p0}, Landroid/support/v4/view/NestedScrollingChildHelper;-><init>(Landroid/view/View;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollingChildHelper:Landroid/support/v4/view/NestedScrollingChildHelper;
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollingChildHelper:Landroid/support/v4/view/NestedScrollingChildHelper;
- return-object v0
- .end method
- .method private handleMissingPreInfoForChangeError(JLandroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- .locals 6
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_3
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v2
- if-ne v2, p3, :cond_0
- goto :goto_1
- :cond_0
- invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
- move-result-wide v3
- cmp-long v5, v3, p1
- if-nez v5, :cond_2
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- const-string p2, " \n View Holder 2:"
- if-eqz p1, :cond_1
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
- move-result p1
- if-eqz p1, :cond_1
- new-instance p1, Ljava/lang/IllegalStateException;
- new-instance p4, Ljava/lang/StringBuilder;
- invoke-direct {p4}, Ljava/lang/StringBuilder;-><init>()V
- const-string v0, "Two different ViewHolders have the same stable ID. Stable IDs in your adapter MUST BE unique and SHOULD NOT change.\n ViewHolder 1:"
- invoke-virtual {p4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p4, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- invoke-virtual {p4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw p1
- :cond_1
- new-instance p1, Ljava/lang/IllegalStateException;
- new-instance p4, Ljava/lang/StringBuilder;
- invoke-direct {p4}, Ljava/lang/StringBuilder;-><init>()V
- const-string v0, "Two different ViewHolders have the same change ID. This might happen due to inconsistent Adapter update events or if the LayoutManager lays out the same View multiple times.\n ViewHolder 1:"
- invoke-virtual {p4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p4, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- invoke-virtual {p4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw p1
- :cond_2
- :goto_1
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_3
- new-instance p1, Ljava/lang/StringBuilder;
- invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
- const-string p2, "Problem while matching changed view holders with the newones. The pre-layout information for the change holder "
- invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p1, p4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- const-string p2, " cannot be found but it is necessary for "
- invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p1
- const-string p2, "RecyclerView"
- invoke-static {p2, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return-void
- .end method
- .method private hasUpdatedView()Z
- .locals 5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- const/4 v1, 0x0
- const/4 v2, 0x0
- :goto_0
- if-ge v2, v0, :cond_2
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v3
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v3
- if-eqz v3, :cond_1
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v4
- if-eqz v4, :cond_0
- goto :goto_1
- :cond_0
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isUpdated()Z
- move-result v3
- if-eqz v3, :cond_1
- const/4 v0, 0x1
- return v0
- :cond_1
- :goto_1
- add-int/lit8 v2, v2, 0x1
- goto :goto_0
- :cond_2
- return v1
- .end method
- .method private initChildrenHelper()V
- .locals 2
- new-instance v0, Landroid/support/v7/widget/ChildHelper;
- new-instance v1, Landroid/support/v7/widget/RecyclerView$5;
- invoke-direct {v1, p0}, Landroid/support/v7/widget/RecyclerView$5;-><init>(Landroid/support/v7/widget/RecyclerView;)V
- invoke-direct {v0, v1}, Landroid/support/v7/widget/ChildHelper;-><init>(Landroid/support/v7/widget/ChildHelper$Callback;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- return-void
- .end method
- .method private isPreferredNextFocus(Landroid/view/View;Landroid/view/View;I)Z
- .locals 4
- const/4 v0, 0x0
- if-eqz p2, :cond_9
- if-ne p2, p0, :cond_0
- goto :goto_4
- :cond_0
- const/4 v1, 0x1
- if-nez p1, :cond_1
- return v1
- :cond_1
- const/4 v2, 0x2
- if-eq p3, v2, :cond_3
- if-ne p3, v1, :cond_2
- goto :goto_0
- :cond_2
- invoke-direct {p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView;->isPreferredNextFocusAbsolute(Landroid/view/View;Landroid/view/View;I)Z
- move-result p1
- return p1
- :cond_3
- :goto_0
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getLayoutDirection()I
- move-result v3
- if-ne v3, v1, :cond_4
- const/4 v3, 0x1
- goto :goto_1
- :cond_4
- const/4 v3, 0x0
- :goto_1
- if-ne p3, v2, :cond_5
- const/4 v0, 0x1
- :cond_5
- xor-int/2addr v0, v3
- if-eqz v0, :cond_6
- const/16 v0, 0x42
- goto :goto_2
- :cond_6
- const/16 v0, 0x11
- :goto_2
- invoke-direct {p0, p1, p2, v0}, Landroid/support/v7/widget/RecyclerView;->isPreferredNextFocusAbsolute(Landroid/view/View;Landroid/view/View;I)Z
- move-result v0
- if-eqz v0, :cond_7
- return v1
- :cond_7
- if-ne p3, v2, :cond_8
- const/16 p3, 0x82
- :goto_3
- invoke-direct {p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView;->isPreferredNextFocusAbsolute(Landroid/view/View;Landroid/view/View;I)Z
- move-result p1
- return p1
- :cond_8
- const/16 p3, 0x21
- goto :goto_3
- :cond_9
- :goto_4
- return v0
- .end method
- .method private isPreferredNextFocusAbsolute(Landroid/view/View;Landroid/view/View;I)Z
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- invoke-virtual {p1}, Landroid/view/View;->getWidth()I
- move-result v1
- invoke-virtual {p1}, Landroid/view/View;->getHeight()I
- move-result v2
- const/4 v3, 0x0
- invoke-virtual {v0, v3, v3, v1, v2}, Landroid/graphics/Rect;->set(IIII)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- invoke-virtual {p2}, Landroid/view/View;->getWidth()I
- move-result v1
- invoke-virtual {p2}, Landroid/view/View;->getHeight()I
- move-result v2
- invoke-virtual {v0, v3, v3, v1, v2}, Landroid/graphics/Rect;->set(IIII)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- invoke-virtual {p0, p1, v0}, Landroid/view/ViewGroup;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- invoke-virtual {p0, p2, p1}, Landroid/view/ViewGroup;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V
- const/16 p1, 0x11
- const/4 p2, 0x1
- if-eq p3, p1, :cond_9
- const/16 p1, 0x21
- if-eq p3, p1, :cond_6
- const/16 p1, 0x42
- if-eq p3, p1, :cond_3
- const/16 p1, 0x82
- if-ne p3, p1, :cond_2
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget p3, p1, Landroid/graphics/Rect;->top:I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- iget v0, v0, Landroid/graphics/Rect;->top:I
- if-lt p3, v0, :cond_0
- iget p1, p1, Landroid/graphics/Rect;->bottom:I
- if-gt p1, v0, :cond_1
- :cond_0
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget p1, p1, Landroid/graphics/Rect;->bottom:I
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- iget p3, p3, Landroid/graphics/Rect;->bottom:I
- if-ge p1, p3, :cond_1
- goto :goto_0
- :cond_1
- const/4 p2, 0x0
- :goto_0
- return p2
- :cond_2
- new-instance p1, Ljava/lang/IllegalArgumentException;
- new-instance p2, Ljava/lang/StringBuilder;
- invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
- const-string v0, "direction must be absolute. received:"
- invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
- throw p1
- :cond_3
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget p3, p1, Landroid/graphics/Rect;->left:I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- iget v0, v0, Landroid/graphics/Rect;->left:I
- if-lt p3, v0, :cond_4
- iget p1, p1, Landroid/graphics/Rect;->right:I
- if-gt p1, v0, :cond_5
- :cond_4
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget p1, p1, Landroid/graphics/Rect;->right:I
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- iget p3, p3, Landroid/graphics/Rect;->right:I
- if-ge p1, p3, :cond_5
- goto :goto_1
- :cond_5
- const/4 p2, 0x0
- :goto_1
- return p2
- :cond_6
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget p3, p1, Landroid/graphics/Rect;->bottom:I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- iget v0, v0, Landroid/graphics/Rect;->bottom:I
- if-gt p3, v0, :cond_7
- iget p1, p1, Landroid/graphics/Rect;->top:I
- if-lt p1, v0, :cond_8
- :cond_7
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget p1, p1, Landroid/graphics/Rect;->top:I
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- iget p3, p3, Landroid/graphics/Rect;->top:I
- if-le p1, p3, :cond_8
- goto :goto_2
- :cond_8
- const/4 p2, 0x0
- :goto_2
- return p2
- :cond_9
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget p3, p1, Landroid/graphics/Rect;->right:I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- iget v0, v0, Landroid/graphics/Rect;->right:I
- if-gt p3, v0, :cond_a
- iget p1, p1, Landroid/graphics/Rect;->left:I
- if-lt p1, v0, :cond_b
- :cond_a
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget p1, p1, Landroid/graphics/Rect;->left:I
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
- iget p3, p3, Landroid/graphics/Rect;->left:I
- if-le p1, p3, :cond_b
- goto :goto_3
- :cond_b
- const/4 p2, 0x0
- :goto_3
- return p2
- .end method
- .method private jumpToPositionForSmoothScroller(I)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_0
- return-void
- :cond_0
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->scrollToPosition(I)V
- invoke-virtual {p0}, Landroid/view/ViewGroup;->awakenScrollBars()Z
- return-void
- .end method
- .method private onEnterLayoutOrScroll()V
- .locals 1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- add-int/lit8 v0, v0, 0x1
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- return-void
- .end method
- .method private onExitLayoutOrScroll()V
- .locals 2
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- const/4 v1, 0x1
- sub-int/2addr v0, v1
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- if-ge v0, v1, :cond_0
- const/4 v0, 0x0
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchContentChangedIfNecessary()V
- :cond_0
- return-void
- .end method
- .method private onPointerUp(Landroid/view/MotionEvent;)V
- .locals 3
- invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionIndex(Landroid/view/MotionEvent;)I
- move-result v0
- invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v1
- iget v2, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- if-ne v1, v2, :cond_1
- if-nez v0, :cond_0
- const/4 v0, 0x1
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- :goto_0
- invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v1
- iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v1
- const/high16 v2, 0x3f000000 # 0.5f
- add-float/2addr v1, v2
- float-to-int v1, v1
- iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
- invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
- move-result p1
- add-float/2addr p1, v2
- float-to-int p1, p1
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
- :cond_1
- return-void
- .end method
- .method private postAnimationRunner()V
- .locals 1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
- if-nez v0, :cond_0
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable;
- invoke-static {p0, v0}, Landroid/support/v4/view/ViewCompat;->postOnAnimation(Landroid/view/View;Ljava/lang/Runnable;)V
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
- :cond_0
- return-void
- .end method
- .method private predictiveItemAnimationsEnabled()Z
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->supportsPredictiveItemAnimations()Z
- move-result v0
- if-eqz v0, :cond_0
- const/4 v0, 0x1
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- :goto_0
- return v0
- .end method
- .method private processAdapterUpdatesAndSetAnimationFlags()V
- .locals 5
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->reset()V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markKnownViewsInvalid()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onItemsChanged(Landroid/support/v7/widget/RecyclerView;)V
- :cond_0
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->predictiveItemAnimationsEnabled()Z
- move-result v0
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->preProcess()V
- goto :goto_0
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->consumeUpdatesInOnePass()V
- :goto_0
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemsAddedOrRemoved:Z
- const/4 v1, 0x0
- const/4 v2, 0x1
- if-nez v0, :cond_3
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemsChanged:Z
- if-eqz v0, :cond_2
- goto :goto_1
- :cond_2
- const/4 v0, 0x0
- goto :goto_2
- :cond_3
- :goto_1
- const/4 v0, 0x1
- :goto_2
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
- if-eqz v4, :cond_6
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz v4, :cond_6
- iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- if-nez v4, :cond_4
- if-nez v0, :cond_4
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-static {v4}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->access$2600(Landroid/support/v7/widget/RecyclerView$LayoutManager;)Z
- move-result v4
- if-eqz v4, :cond_6
- :cond_4
- iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- if-eqz v4, :cond_5
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {v4}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
- move-result v4
- if-eqz v4, :cond_6
- :cond_5
- const/4 v4, 0x1
- goto :goto_3
- :cond_6
- const/4 v4, 0x0
- :goto_3
- invoke-static {v3, v4}, Landroid/support/v7/widget/RecyclerView$State;->access$2502(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v4
- if-eqz v4, :cond_7
- if-eqz v0, :cond_7
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- if-nez v0, :cond_7
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->predictiveItemAnimationsEnabled()Z
- move-result v0
- if-eqz v0, :cond_7
- const/4 v1, 0x1
- :cond_7
- invoke-static {v3, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2302(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- return-void
- .end method
- .method private pullGlows(FFFF)V
- .locals 6
- const/high16 v0, 0x3f800000 # 1.0f
- const/4 v1, 0x1
- const/4 v2, 0x0
- cmpg-float v3, p2, v2
- if-gez v3, :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureLeftGlow()V
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- neg-float v4, p2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
- move-result v5
- int-to-float v5, v5
- div-float/2addr v4, v5
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
- move-result v5
- int-to-float v5, v5
- div-float/2addr p3, v5
- sub-float p3, v0, p3
- invoke-virtual {v3, v4, p3}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(FF)Z
- move-result p3
- if-eqz p3, :cond_1
- :goto_0
- const/4 p3, 0x1
- goto :goto_1
- :cond_0
- cmpl-float v3, p2, v2
- if-lez v3, :cond_1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureRightGlow()V
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
- move-result v4
- int-to-float v4, v4
- div-float v4, p2, v4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
- move-result v5
- int-to-float v5, v5
- div-float/2addr p3, v5
- invoke-virtual {v3, v4, p3}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(FF)Z
- move-result p3
- if-eqz p3, :cond_1
- goto :goto_0
- :cond_1
- const/4 p3, 0x0
- :goto_1
- cmpg-float v3, p4, v2
- if-gez v3, :cond_2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureTopGlow()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- neg-float v3, p4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
- move-result v4
- int-to-float v4, v4
- div-float/2addr v3, v4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
- move-result v4
- int-to-float v4, v4
- div-float/2addr p1, v4
- invoke-virtual {v0, v3, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(FF)Z
- move-result p1
- if-eqz p1, :cond_3
- goto :goto_2
- :cond_2
- cmpl-float v3, p4, v2
- if-lez v3, :cond_3
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureBottomGlow()V
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
- move-result v4
- int-to-float v4, v4
- div-float v4, p4, v4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
- move-result v5
- int-to-float v5, v5
- div-float/2addr p1, v5
- sub-float/2addr v0, p1
- invoke-virtual {v3, v4, v0}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(FF)Z
- move-result p1
- if-eqz p1, :cond_3
- goto :goto_2
- :cond_3
- move v1, p3
- :goto_2
- if-nez v1, :cond_4
- cmpl-float p1, p2, v2
- if-nez p1, :cond_4
- cmpl-float p1, p4, v2
- if-eqz p1, :cond_5
- :cond_4
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- :cond_5
- return-void
- .end method
- .method private recordAnimationInfoIfBouncedHiddenView(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- .locals 3
- const/4 v0, 0x0
- const/16 v1, 0x2000
- invoke-virtual {p1, v0, v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setFlags(II)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2700(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v0
- if-eqz v0, :cond_0
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isUpdated()Z
- move-result v0
- if-eqz v0, :cond_0
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
- move-result v0
- if-nez v0, :cond_0
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v0
- if-nez v0, :cond_0
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
- move-result-wide v0
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v2, v0, v1, p1}, Landroid/support/v7/widget/ViewInfoStore;->addToOldChangeHolders(JLandroid/support/v7/widget/RecyclerView$ViewHolder;)V
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/ViewInfoStore;->addToPreLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
- return-void
- .end method
- .method private recoverFocusFromState()V
- .locals 7
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
- if-eqz v0, :cond_7
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz v0, :cond_7
- invoke-virtual {p0}, Landroid/view/ViewGroup;->hasFocus()Z
- move-result v0
- if-nez v0, :cond_0
- goto :goto_0
- :cond_0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->isFocused()Z
- move-result v0
- if-nez v0, :cond_2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getFocusedChild()Landroid/view/View;
- move-result-object v0
- if-eqz v0, :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v1, v0}, Landroid/support/v7/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
- move-result v0
- if-nez v0, :cond_2
- :cond_1
- return-void
- :cond_2
- const/4 v0, 0x0
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget v1, v1, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemPosition:I
- const/4 v2, -0x1
- if-eq v1, v2, :cond_3
- invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->findViewHolderForAdapterPosition(I)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v0
- :cond_3
- const-wide/16 v1, -0x1
- if-nez v0, :cond_4
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget-wide v3, v3, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemId:J
- cmp-long v5, v3, v1
- if-eqz v5, :cond_4
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
- move-result v3
- if-eqz v3, :cond_4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget-wide v3, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemId:J
- invoke-virtual {p0, v3, v4}, Landroid/support/v7/widget/RecyclerView;->findViewHolderForItemId(J)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v0
- :cond_4
- if-eqz v0, :cond_7
- iget-object v3, v0, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- invoke-virtual {v3}, Landroid/view/View;->hasFocus()Z
- move-result v3
- if-nez v3, :cond_7
- iget-object v3, v0, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- invoke-virtual {v3}, Landroid/view/View;->hasFocusable()Z
- move-result v3
- if-nez v3, :cond_5
- goto :goto_0
- :cond_5
- iget-object v0, v0, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget v3, v3, Landroid/support/v7/widget/RecyclerView$State;->mFocusedSubChildId:I
- int-to-long v4, v3
- cmp-long v6, v4, v1
- if-eqz v6, :cond_6
- invoke-virtual {v0, v3}, Landroid/view/View;->findViewById(I)Landroid/view/View;
- move-result-object v1
- if-eqz v1, :cond_6
- invoke-virtual {v1}, Landroid/view/View;->isFocusable()Z
- move-result v2
- if-eqz v2, :cond_6
- move-object v0, v1
- :cond_6
- invoke-virtual {v0}, Landroid/view/View;->requestFocus()Z
- :cond_7
- :goto_0
- return-void
- .end method
- .method private releaseGlows()V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result v0
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- :goto_0
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v1, :cond_1
- invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result v1
- or-int/2addr v0, v1
- :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v1, :cond_2
- invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result v1
- or-int/2addr v0, v1
- :cond_2
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v1, :cond_3
- invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
- move-result v1
- or-int/2addr v0, v1
- :cond_3
- if-eqz v0, :cond_4
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- :cond_4
- return-void
- .end method
- .method private removeAnimatingView(Landroid/view/View;)Z
- .locals 2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/ChildHelper;->removeViewIfHidden(Landroid/view/View;)Z
- move-result v0
- if-eqz v0, :cond_0
- invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object p1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v1, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->unscrapView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v1, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->recycleViewHolderInternal(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
- :cond_0
- xor-int/lit8 p1, v0, 0x1
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- return v0
- .end method
- .method private repositionShadowingViews()V
- .locals 7
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_2
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v3
- if-eqz v3, :cond_1
- iget-object v3, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroid/support/v7/widget/RecyclerView$ViewHolder;
- if-eqz v3, :cond_1
- iget-object v3, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- invoke-virtual {v2}, Landroid/view/View;->getLeft()I
- move-result v4
- invoke-virtual {v2}, Landroid/view/View;->getTop()I
- move-result v2
- invoke-virtual {v3}, Landroid/view/View;->getLeft()I
- move-result v5
- if-ne v4, v5, :cond_0
- invoke-virtual {v3}, Landroid/view/View;->getTop()I
- move-result v5
- if-eq v2, v5, :cond_1
- :cond_0
- invoke-virtual {v3}, Landroid/view/View;->getWidth()I
- move-result v5
- add-int/2addr v5, v4
- invoke-virtual {v3}, Landroid/view/View;->getHeight()I
- move-result v6
- add-int/2addr v6, v2
- invoke-virtual {v3, v4, v2, v5, v6}, Landroid/view/View;->layout(IIII)V
- :cond_1
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_2
- return-void
- .end method
- .method private resetFocusInfo()V
- .locals 3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const-wide/16 v1, -0x1
- iput-wide v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemId:J
- const/4 v1, -0x1
- iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemPosition:I
- iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedSubChildId:I
- return-void
- .end method
- .method private resetTouch()V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/view/VelocityTracker;->clear()V
- :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopNestedScroll()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->releaseGlows()V
- return-void
- .end method
- .method private saveFocusInfo()V
- .locals 4
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
- const/4 v1, 0x0
- if-eqz v0, :cond_0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->hasFocus()Z
- move-result v0
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz v0, :cond_0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getFocusedChild()Landroid/view/View;
- move-result-object v0
- goto :goto_0
- :cond_0
- move-object v0, v1
- :goto_0
- if-nez v0, :cond_1
- goto :goto_1
- :cond_1
- invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->findContainingViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v1
- :goto_1
- if-nez v1, :cond_2
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->resetFocusInfo()V
- goto :goto_4
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
- move-result v2
- if-eqz v2, :cond_3
- invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getItemId()J
- move-result-wide v2
- goto :goto_2
- :cond_3
- const-wide/16 v2, -0x1
- :goto_2
- iput-wide v2, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemId:J
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- if-eqz v2, :cond_4
- const/4 v2, -0x1
- goto :goto_3
- :cond_4
- invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getAdapterPosition()I
- move-result v2
- :goto_3
- iput v2, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemPosition:I
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iget-object v1, v1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- invoke-direct {p0, v1}, Landroid/support/v7/widget/RecyclerView;->getDeepestFocusedViewWithId(Landroid/view/View;)I
- move-result v1
- iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedSubChildId:I
- :goto_4
- return-void
- .end method
- .method private setAdapterInternal(Landroid/support/v7/widget/RecyclerView$Adapter;ZZ)V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz v0, :cond_0
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mObserver:Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$Adapter;->unregisterAdapterDataObserver(Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {v0, p0}, Landroid/support/v7/widget/RecyclerView$Adapter;->onDetachedFromRecyclerView(Landroid/support/v7/widget/RecyclerView;)V
- :cond_0
- if-eqz p2, :cond_1
- if-eqz p3, :cond_4
- :cond_1
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz p3, :cond_2
- invoke-virtual {p3}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->endAnimations()V
- :cond_2
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz p3, :cond_3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {p3, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->removeAndRecycleAllViews(Landroid/support/v7/widget/RecyclerView$Recycler;)V
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {p3, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->removeAndRecycleScrapInt(Landroid/support/v7/widget/RecyclerView$Recycler;)V
- :cond_3
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {p3}, Landroid/support/v7/widget/RecyclerView$Recycler;->clear()V
- :cond_4
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {p3}, Landroid/support/v7/widget/AdapterHelper;->reset()V
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz p1, :cond_5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mObserver:Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
- invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->registerAdapterDataObserver(Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;)V
- invoke-virtual {p1, p0}, Landroid/support/v7/widget/RecyclerView$Adapter;->onAttachedToRecyclerView(Landroid/support/v7/widget/RecyclerView;)V
- :cond_5
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz p1, :cond_6
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {p1, p3, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onAdapterChanged(Landroid/support/v7/widget/RecyclerView$Adapter;Landroid/support/v7/widget/RecyclerView$Adapter;)V
- :cond_6
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {p1, p3, v0, p2}, Landroid/support/v7/widget/RecyclerView$Recycler;->onAdapterChanged(Landroid/support/v7/widget/RecyclerView$Adapter;Landroid/support/v7/widget/RecyclerView$Adapter;Z)V
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 p2, 0x1
- invoke-static {p1, p2}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markKnownViewsInvalid()V
- return-void
- .end method
- .method private setDataSetChangedAfterLayout()V
- .locals 4
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- if-eqz v0, :cond_0
- return-void
- :cond_0
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_2
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v2
- if-eqz v2, :cond_1
- invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v3
- if-nez v3, :cond_1
- const/16 v3, 0x200
- invoke-virtual {v2, v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->addFlags(I)V
- :cond_1
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->setAdapterPositionsAsUnknown()V
- return-void
- .end method
- .method private setScrollState(I)V
- .locals 1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- if-ne p1, v0, :cond_0
- return-void
- :cond_0
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- const/4 v0, 0x2
- if-eq p1, v0, :cond_1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->stopScrollersInternal()V
- :cond_1
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchOnScrollStateChanged(I)V
- return-void
- .end method
- .method private stopScrollersInternal()V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ViewFlinger;->stop()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->stopSmoothScroller()V
- :cond_0
- return-void
- .end method
- # virtual methods
- .method absorbGlows(II)V
- .locals 2
- if-gez p1, :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureLeftGlow()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- neg-int v1, p1
- invoke-virtual {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onAbsorb(I)Z
- goto :goto_0
- :cond_0
- if-lez p1, :cond_1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureRightGlow()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v0, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onAbsorb(I)Z
- :cond_1
- :goto_0
- if-gez p2, :cond_2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureTopGlow()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- neg-int v1, p2
- invoke-virtual {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onAbsorb(I)Z
- goto :goto_1
- :cond_2
- if-lez p2, :cond_3
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureBottomGlow()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {v0, p2}, Landroid/support/v4/widget/EdgeEffectCompat;->onAbsorb(I)Z
- :cond_3
- :goto_1
- if-nez p1, :cond_4
- if-eqz p2, :cond_5
- :cond_4
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- :cond_5
- return-void
- .end method
- .method public addFocusables(Ljava/util/ArrayList;II)V
- .locals 1
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "(",
- "Ljava/util/ArrayList<",
- "Landroid/view/View;",
- ">;II)V"
- }
- .end annotation
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- invoke-virtual {v0, p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onAddFocusables(Landroid/support/v7/widget/RecyclerView;Ljava/util/ArrayList;II)Z
- move-result v0
- if-nez v0, :cond_1
- :cond_0
- invoke-super {p0, p1, p2, p3}, Landroid/view/ViewGroup;->addFocusables(Ljava/util/ArrayList;II)V
- :cond_1
- return-void
- .end method
- .method public addItemDecoration(Landroid/support/v7/widget/RecyclerView$ItemDecoration;)V
- .locals 1
- const/4 v0, -0x1
- invoke-virtual {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;->addItemDecoration(Landroid/support/v7/widget/RecyclerView$ItemDecoration;I)V
- return-void
- .end method
- .method public addItemDecoration(Landroid/support/v7/widget/RecyclerView$ItemDecoration;I)V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- const-string v1, "Cannot add item decoration during a scroll or layout"
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v0}, Ljava/util/ArrayList;->isEmpty()Z
- move-result v0
- if-eqz v0, :cond_1
- const/4 v0, 0x0
- invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->setWillNotDraw(Z)V
- :cond_1
- if-gez p2, :cond_2
- iget-object p2, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {p2, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
- goto :goto_0
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v0, p2, p1}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
- :goto_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markItemDecorInsetsDirty()V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method public addOnChildAttachStateChangeListener(Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- if-nez v0, :cond_0
- new-instance v0, Ljava/util/ArrayList;
- invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
- return-void
- .end method
- .method public addOnItemTouchListener(Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
- return-void
- .end method
- .method public addOnScrollListener(Landroid/support/v7/widget/RecyclerView$OnScrollListener;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- if-nez v0, :cond_0
- new-instance v0, Ljava/util/ArrayList;
- invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
- return-void
- .end method
- .method assertInLayoutOrScroll(Ljava/lang/String;)V
- .locals 1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
- move-result v0
- if-nez v0, :cond_1
- if-nez p1, :cond_0
- new-instance p1, Ljava/lang/IllegalStateException;
- const-string v0, "Cannot call this method unless RecyclerView is computing a layout or scrolling"
- invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw p1
- :cond_0
- new-instance v0, Ljava/lang/IllegalStateException;
- invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v0
- :cond_1
- return-void
- .end method
- .method assertNotInLayoutOrScroll(Ljava/lang/String;)V
- .locals 1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
- move-result v0
- if-eqz v0, :cond_1
- if-nez p1, :cond_0
- new-instance p1, Ljava/lang/IllegalStateException;
- const-string v0, "Cannot call this method while RecyclerView is computing a layout or scrolling"
- invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw p1
- :cond_0
- new-instance v0, Ljava/lang/IllegalStateException;
- invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v0
- :cond_1
- return-void
- .end method
- .method protected checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z
- .locals 1
- instance-of v0, p1, Landroid/support/v7/widget/RecyclerView$LayoutParams;
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- check-cast p1, Landroid/support/v7/widget/RecyclerView$LayoutParams;
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->checkLayoutParams(Landroid/support/v7/widget/RecyclerView$LayoutParams;)Z
- move-result p1
- if-eqz p1, :cond_0
- const/4 p1, 0x1
- goto :goto_0
- :cond_0
- const/4 p1, 0x0
- :goto_0
- return p1
- .end method
- .method clearOldPositions()V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_1
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v2
- invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v3
- if-nez v3, :cond_0
- invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->clearOldPosition()V
- :cond_0
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->clearOldPositions()V
- return-void
- .end method
- .method public clearOnChildAttachStateChangeListeners()V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- if-eqz v0, :cond_0
- invoke-interface {v0}, Ljava/util/List;->clear()V
- :cond_0
- return-void
- .end method
- .method public clearOnScrollListeners()V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- if-eqz v0, :cond_0
- invoke-interface {v0}, Ljava/util/List;->clear()V
- :cond_0
- return-void
- .end method
- .method public computeHorizontalScrollExtent()I
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- if-nez v0, :cond_0
- return v1
- :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v0
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeHorizontalScrollExtent(Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v1
- :cond_1
- return v1
- .end method
- .method public computeHorizontalScrollOffset()I
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- if-nez v0, :cond_0
- return v1
- :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v0
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeHorizontalScrollOffset(Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v1
- :cond_1
- return v1
- .end method
- .method public computeHorizontalScrollRange()I
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- if-nez v0, :cond_0
- return v1
- :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v0
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeHorizontalScrollRange(Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v1
- :cond_1
- return v1
- .end method
- .method public computeVerticalScrollExtent()I
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- if-nez v0, :cond_0
- return v1
- :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v0
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeVerticalScrollExtent(Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v1
- :cond_1
- return v1
- .end method
- .method public computeVerticalScrollOffset()I
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- if-nez v0, :cond_0
- return v1
- :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v0
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeVerticalScrollOffset(Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v1
- :cond_1
- return v1
- .end method
- .method public computeVerticalScrollRange()I
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- if-nez v0, :cond_0
- return v1
- :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v0
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeVerticalScrollRange(Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v1
- :cond_1
- return v1
- .end method
- .method defaultOnMeasure(II)V
- .locals 2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
- move-result v0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
- move-result v1
- add-int/2addr v0, v1
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getMinimumWidth(Landroid/view/View;)I
- move-result v1
- invoke-static {p1, v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->chooseSize(III)I
- move-result p1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
- move-result v0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
- move-result v1
- add-int/2addr v0, v1
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getMinimumHeight(Landroid/view/View;)I
- move-result v1
- invoke-static {p2, v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->chooseSize(III)I
- move-result p2
- invoke-virtual {p0, p1, p2}, Landroid/view/ViewGroup;->setMeasuredDimension(II)V
- return-void
- .end method
- .method dispatchLayout()V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- const-string v1, "RecyclerView"
- if-nez v0, :cond_0
- const-string v0, "No adapter attached; skipping layout"
- :goto_0
- invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return-void
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_1
- const-string v0, "No layout manager attached; skipping layout"
- goto :goto_0
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v1, 0x0
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2202(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2100(Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v0
- const/4 v1, 0x1
- if-ne v0, v1, :cond_3
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep1()V
- :cond_2
- :goto_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setExactMeasureSpecsFrom(Landroid/support/v7/widget/RecyclerView;)V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep2()V
- goto :goto_2
- :cond_3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->hasUpdates()Z
- move-result v0
- if-nez v0, :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getWidth()I
- move-result v0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
- move-result v1
- if-ne v0, v1, :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getHeight()I
- move-result v0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
- move-result v1
- if-eq v0, v1, :cond_4
- goto :goto_1
- :cond_4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setExactMeasureSpecsFrom(Landroid/support/v7/widget/RecyclerView;)V
- :goto_2
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep3()V
- return-void
- .end method
- .method public dispatchNestedFling(FFZ)Z
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- invoke-virtual {v0, p1, p2, p3}, Landroid/support/v4/view/NestedScrollingChildHelper;->dispatchNestedFling(FFZ)Z
- move-result p1
- return p1
- .end method
- .method public dispatchNestedPreFling(FF)Z
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- invoke-virtual {v0, p1, p2}, Landroid/support/v4/view/NestedScrollingChildHelper;->dispatchNestedPreFling(FF)Z
- move-result p1
- return p1
- .end method
- .method public dispatchNestedPreScroll(II[I[I)Z
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- invoke-virtual {v0, p1, p2, p3, p4}, Landroid/support/v4/view/NestedScrollingChildHelper;->dispatchNestedPreScroll(II[I[I)Z
- move-result p1
- return p1
- .end method
- .method public dispatchNestedScroll(IIII[I)Z
- .locals 6
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- move v1, p1
- move v2, p2
- move v3, p3
- move v4, p4
- move-object v5, p5
- invoke-virtual/range {v0 .. v5}, Landroid/support/v4/view/NestedScrollingChildHelper;->dispatchNestedScroll(IIII[I)Z
- move-result p1
- return p1
- .end method
- .method dispatchOnScrollStateChanged(I)V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onScrollStateChanged(I)V
- :cond_0
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onScrollStateChanged(I)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListener:Landroid/support/v7/widget/RecyclerView$OnScrollListener;
- if-eqz v0, :cond_1
- invoke-virtual {v0, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnScrollListener;->onScrollStateChanged(Landroid/support/v7/widget/RecyclerView;I)V
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- if-eqz v0, :cond_2
- invoke-interface {v0}, Ljava/util/List;->size()I
- move-result v0
- add-int/lit8 v0, v0, -0x1
- :goto_0
- if-ltz v0, :cond_2
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v7/widget/RecyclerView$OnScrollListener;
- invoke-virtual {v1, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnScrollListener;->onScrollStateChanged(Landroid/support/v7/widget/RecyclerView;I)V
- add-int/lit8 v0, v0, -0x1
- goto :goto_0
- :cond_2
- return-void
- .end method
- .method dispatchOnScrolled(II)V
- .locals 2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getScrollX()I
- move-result v0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getScrollY()I
- move-result v1
- invoke-virtual {p0, v0, v1, v0, v1}, Landroid/view/ViewGroup;->onScrollChanged(IIII)V
- invoke-virtual {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->onScrolled(II)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListener:Landroid/support/v7/widget/RecyclerView$OnScrollListener;
- if-eqz v0, :cond_0
- invoke-virtual {v0, p0, p1, p2}, Landroid/support/v7/widget/RecyclerView$OnScrollListener;->onScrolled(Landroid/support/v7/widget/RecyclerView;II)V
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- if-eqz v0, :cond_1
- invoke-interface {v0}, Ljava/util/List;->size()I
- move-result v0
- add-int/lit8 v0, v0, -0x1
- :goto_0
- if-ltz v0, :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
- move-result-object v1
- check-cast v1, Landroid/support/v7/widget/RecyclerView$OnScrollListener;
- invoke-virtual {v1, p0, p1, p2}, Landroid/support/v7/widget/RecyclerView$OnScrollListener;->onScrolled(Landroid/support/v7/widget/RecyclerView;II)V
- add-int/lit8 v0, v0, -0x1
- goto :goto_0
- :cond_1
- return-void
- .end method
- .method protected dispatchRestoreInstanceState(Landroid/util/SparseArray;)V
- .locals 0
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "(",
- "Landroid/util/SparseArray<",
- "Landroid/os/Parcelable;",
- ">;)V"
- }
- .end annotation
- invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->dispatchThawSelfOnly(Landroid/util/SparseArray;)V
- return-void
- .end method
- .method protected dispatchSaveInstanceState(Landroid/util/SparseArray;)V
- .locals 0
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "(",
- "Landroid/util/SparseArray<",
- "Landroid/os/Parcelable;",
- ">;)V"
- }
- .end annotation
- invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->dispatchFreezeSelfOnly(Landroid/util/SparseArray;)V
- return-void
- .end method
- .method public draw(Landroid/graphics/Canvas;)V
- .locals 7
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->draw(Landroid/graphics/Canvas;)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
- move-result v0
- const/4 v1, 0x0
- const/4 v2, 0x0
- :goto_0
- if-ge v2, v0, :cond_0
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v3, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v3
- check-cast v3, Landroid/support/v7/widget/RecyclerView$ItemDecoration;
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v3, p1, p0, v4}, Landroid/support/v7/widget/RecyclerView$ItemDecoration;->onDrawOver(Landroid/graphics/Canvas;Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;)V
- add-int/lit8 v2, v2, 0x1
- goto :goto_0
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- const/4 v2, 0x1
- if-eqz v0, :cond_3
- invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result v0
- if-nez v0, :cond_3
- invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
- move-result v0
- iget-boolean v3, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eqz v3, :cond_1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
- move-result v3
- goto :goto_1
- :cond_1
- const/4 v3, 0x0
- :goto_1
- const/high16 v4, 0x43870000 # 270.0f
- invoke-virtual {p1, v4}, Landroid/graphics/Canvas;->rotate(F)V
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
- move-result v4
- neg-int v4, v4
- add-int/2addr v4, v3
- int-to-float v3, v4
- const/4 v4, 0x0
- invoke-virtual {p1, v3, v4}, Landroid/graphics/Canvas;->translate(FF)V
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v3, :cond_2
- invoke-virtual {v3, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
- move-result v3
- if-eqz v3, :cond_2
- const/4 v3, 0x1
- goto :goto_2
- :cond_2
- const/4 v3, 0x0
- :goto_2
- invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
- goto :goto_3
- :cond_3
- const/4 v3, 0x0
- :goto_3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_6
- invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result v0
- if-nez v0, :cond_6
- invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
- move-result v0
- iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eqz v4, :cond_4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
- move-result v4
- int-to-float v4, v4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
- move-result v5
- int-to-float v5, v5
- invoke-virtual {p1, v4, v5}, Landroid/graphics/Canvas;->translate(FF)V
- :cond_4
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v4, :cond_5
- invoke-virtual {v4, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
- move-result v4
- if-eqz v4, :cond_5
- const/4 v4, 0x1
- goto :goto_4
- :cond_5
- const/4 v4, 0x0
- :goto_4
- or-int/2addr v3, v4
- invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
- :cond_6
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_9
- invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result v0
- if-nez v0, :cond_9
- invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
- move-result v0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
- move-result v4
- iget-boolean v5, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eqz v5, :cond_7
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
- move-result v5
- goto :goto_5
- :cond_7
- const/4 v5, 0x0
- :goto_5
- const/high16 v6, 0x42b40000 # 90.0f
- invoke-virtual {p1, v6}, Landroid/graphics/Canvas;->rotate(F)V
- neg-int v5, v5
- int-to-float v5, v5
- neg-int v4, v4
- int-to-float v4, v4
- invoke-virtual {p1, v5, v4}, Landroid/graphics/Canvas;->translate(FF)V
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v4, :cond_8
- invoke-virtual {v4, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
- move-result v4
- if-eqz v4, :cond_8
- const/4 v4, 0x1
- goto :goto_6
- :cond_8
- const/4 v4, 0x0
- :goto_6
- or-int/2addr v3, v4
- invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
- :cond_9
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_c
- invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
- move-result v0
- if-nez v0, :cond_c
- invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
- move-result v0
- const/high16 v4, 0x43340000 # 180.0f
- invoke-virtual {p1, v4}, Landroid/graphics/Canvas;->rotate(F)V
- iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eqz v4, :cond_a
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
- move-result v4
- neg-int v4, v4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
- move-result v5
- add-int/2addr v4, v5
- int-to-float v4, v4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
- move-result v5
- neg-int v5, v5
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
- move-result v6
- add-int/2addr v5, v6
- goto :goto_7
- :cond_a
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
- move-result v4
- neg-int v4, v4
- int-to-float v4, v4
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
- move-result v5
- neg-int v5, v5
- :goto_7
- int-to-float v5, v5
- invoke-virtual {p1, v4, v5}, Landroid/graphics/Canvas;->translate(FF)V
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v4, :cond_b
- invoke-virtual {v4, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
- move-result v4
- if-eqz v4, :cond_b
- const/4 v1, 0x1
- :cond_b
- or-int/2addr v1, v3
- invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
- goto :goto_8
- :cond_c
- move v1, v3
- :goto_8
- if-nez v1, :cond_d
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz p1, :cond_d
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {p1}, Ljava/util/ArrayList;->size()I
- move-result p1
- if-lez p1, :cond_d
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->isRunning()Z
- move-result p1
- if-eqz p1, :cond_d
- const/4 v1, 0x1
- :cond_d
- if-eqz v1, :cond_e
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
- :cond_e
- return-void
- .end method
- .method public drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z
- .locals 0
- invoke-super {p0, p1, p2, p3, p4}, Landroid/view/ViewGroup;->drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z
- move-result p1
- return p1
- .end method
- .method eatRequestLayout()V
- .locals 2
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- const/4 v1, 0x1
- add-int/2addr v0, v1
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- if-ne v0, v1, :cond_0
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-nez v0, :cond_0
- const/4 v0, 0x0
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- :cond_0
- return-void
- .end method
- .method ensureBottomGlow()V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_0
- return-void
- :cond_0
- new-instance v0, Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-direct {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
- move-result v2
- sub-int/2addr v1, v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
- move-result v2
- sub-int/2addr v1, v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
- move-result v3
- sub-int/2addr v2, v3
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
- move-result v3
- sub-int/2addr v2, v3
- goto :goto_0
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v2
- :goto_0
- invoke-virtual {v0, v1, v2}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
- return-void
- .end method
- .method ensureLeftGlow()V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_0
- return-void
- :cond_0
- new-instance v0, Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-direct {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
- move-result v2
- sub-int/2addr v1, v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
- move-result v2
- sub-int/2addr v1, v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
- move-result v3
- sub-int/2addr v2, v3
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
- move-result v3
- sub-int/2addr v2, v3
- goto :goto_0
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v2
- :goto_0
- invoke-virtual {v0, v1, v2}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
- return-void
- .end method
- .method ensureRightGlow()V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_0
- return-void
- :cond_0
- new-instance v0, Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-direct {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
- move-result v2
- sub-int/2addr v1, v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
- move-result v2
- sub-int/2addr v1, v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
- move-result v3
- sub-int/2addr v2, v3
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
- move-result v3
- sub-int/2addr v2, v3
- goto :goto_0
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v2
- :goto_0
- invoke-virtual {v0, v1, v2}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
- return-void
- .end method
- .method ensureTopGlow()V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- if-eqz v0, :cond_0
- return-void
- :cond_0
- new-instance v0, Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-direct {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
- move-result v2
- sub-int/2addr v1, v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
- move-result v2
- sub-int/2addr v1, v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
- move-result v3
- sub-int/2addr v2, v3
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
- move-result v3
- sub-int/2addr v2, v3
- goto :goto_0
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v1
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v2
- :goto_0
- invoke-virtual {v0, v1, v2}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
- return-void
- .end method
- .method public findChildViewUnder(FF)Landroid/view/View;
- .locals 5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- add-int/lit8 v0, v0, -0x1
- :goto_0
- if-ltz v0, :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v1, v0}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v1
- invoke-static {v1}, Landroid/support/v4/view/ViewCompat;->getTranslationX(Landroid/view/View;)F
- move-result v2
- invoke-static {v1}, Landroid/support/v4/view/ViewCompat;->getTranslationY(Landroid/view/View;)F
- move-result v3
- invoke-virtual {v1}, Landroid/view/View;->getLeft()I
- move-result v4
- int-to-float v4, v4
- add-float/2addr v4, v2
- cmpl-float v4, p1, v4
- if-ltz v4, :cond_0
- invoke-virtual {v1}, Landroid/view/View;->getRight()I
- move-result v4
- int-to-float v4, v4
- add-float/2addr v4, v2
- cmpg-float v2, p1, v4
- if-gtz v2, :cond_0
- invoke-virtual {v1}, Landroid/view/View;->getTop()I
- move-result v2
- int-to-float v2, v2
- add-float/2addr v2, v3
- cmpl-float v2, p2, v2
- if-ltz v2, :cond_0
- invoke-virtual {v1}, Landroid/view/View;->getBottom()I
- move-result v2
- int-to-float v2, v2
- add-float/2addr v2, v3
- cmpg-float v2, p2, v2
- if-gtz v2, :cond_0
- return-object v1
- :cond_0
- add-int/lit8 v0, v0, -0x1
- goto :goto_0
- :cond_1
- const/4 p1, 0x0
- return-object p1
- .end method
- .method public findContainingItemView(Landroid/view/View;)Landroid/view/View;
- .locals 2
- .annotation build Landroid/support/annotation/Nullable;
- .end annotation
- :goto_0
- invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
- move-result-object v0
- if-eqz v0, :cond_0
- if-eq v0, p0, :cond_0
- instance-of v1, v0, Landroid/view/View;
- if-eqz v1, :cond_0
- move-object p1, v0
- check-cast p1, Landroid/view/View;
- goto :goto_0
- :cond_0
- if-ne v0, p0, :cond_1
- goto :goto_1
- :cond_1
- const/4 p1, 0x0
- :goto_1
- return-object p1
- .end method
- .method public findContainingViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .locals 0
- .annotation build Landroid/support/annotation/Nullable;
- .end annotation
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View;
- move-result-object p1
- if-nez p1, :cond_0
- const/4 p1, 0x0
- goto :goto_0
- :cond_0
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object p1
- :goto_0
- return-object p1
- .end method
- .method public findViewHolderForAdapterPosition(I)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .locals 5
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- const/4 v1, 0x0
- if-eqz v0, :cond_0
- return-object v1
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v2, 0x0
- :goto_0
- if-ge v2, v0, :cond_3
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v3
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v3
- if-eqz v3, :cond_2
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
- move-result v4
- if-nez v4, :cond_2
- invoke-direct {p0, v3}, Landroid/support/v7/widget/RecyclerView;->getAdapterPositionFor(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
- move-result v4
- if-ne v4, p1, :cond_2
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- iget-object v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- invoke-virtual {v1, v4}, Landroid/support/v7/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
- move-result v1
- if-eqz v1, :cond_1
- move-object v1, v3
- goto :goto_1
- :cond_1
- return-object v3
- :cond_2
- :goto_1
- add-int/lit8 v2, v2, 0x1
- goto :goto_0
- :cond_3
- return-object v1
- .end method
- .method public findViewHolderForItemId(J)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .locals 7
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- const/4 v1, 0x0
- if-eqz v0, :cond_3
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
- move-result v0
- if-nez v0, :cond_0
- goto :goto_2
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v2, 0x0
- :goto_0
- if-ge v2, v0, :cond_3
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v3
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v3
- if-eqz v3, :cond_2
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
- move-result v4
- if-nez v4, :cond_2
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getItemId()J
- move-result-wide v4
- cmp-long v6, v4, p1
- if-nez v6, :cond_2
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- iget-object v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- invoke-virtual {v1, v4}, Landroid/support/v7/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
- move-result v1
- if-eqz v1, :cond_1
- move-object v1, v3
- goto :goto_1
- :cond_1
- return-object v3
- :cond_2
- :goto_1
- add-int/lit8 v2, v2, 0x1
- goto :goto_0
- :cond_3
- :goto_2
- return-object v1
- .end method
- .method public findViewHolderForLayoutPosition(I)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .locals 1
- const/4 v0, 0x0
- invoke-virtual {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;->findViewHolderForPosition(IZ)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object p1
- return-object p1
- .end method
- .method public findViewHolderForPosition(I)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .locals 1
- .annotation runtime Ljava/lang/Deprecated;
- .end annotation
- const/4 v0, 0x0
- invoke-virtual {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;->findViewHolderForPosition(IZ)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object p1
- return-object p1
- .end method
- .method findViewHolderForPosition(IZ)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .locals 5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v1, 0x0
- const/4 v2, 0x0
- :goto_0
- if-ge v2, v0, :cond_4
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v3
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v3
- if-eqz v3, :cond_3
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
- move-result v4
- if-nez v4, :cond_3
- if-eqz p2, :cond_0
- iget v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
- if-eq v4, p1, :cond_1
- goto :goto_1
- :cond_0
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getLayoutPosition()I
- move-result v4
- if-eq v4, p1, :cond_1
- goto :goto_1
- :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- iget-object v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
- invoke-virtual {v1, v4}, Landroid/support/v7/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
- move-result v1
- if-eqz v1, :cond_2
- move-object v1, v3
- goto :goto_1
- :cond_2
- return-object v3
- :cond_3
- :goto_1
- add-int/lit8 v2, v2, 0x1
- goto :goto_0
- :cond_4
- return-object v1
- .end method
- .method public fling(II)Z
- .locals 6
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- if-nez v0, :cond_0
- const-string p1, "RecyclerView"
- const-string p2, "Cannot fling without a LayoutManager set. Call setLayoutManager with a non-null argument."
- invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return v1
- :cond_0
- iget-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-eqz v2, :cond_1
- return v1
- :cond_1
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v0
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v2
- if-eqz v0, :cond_2
- invoke-static {p1}, Ljava/lang/Math;->abs(I)I
- move-result v3
- iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mMinFlingVelocity:I
- if-ge v3, v4, :cond_3
- :cond_2
- const/4 p1, 0x0
- :cond_3
- if-eqz v2, :cond_4
- invoke-static {p2}, Ljava/lang/Math;->abs(I)I
- move-result v3
- iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mMinFlingVelocity:I
- if-ge v3, v4, :cond_5
- :cond_4
- const/4 p2, 0x0
- :cond_5
- if-nez p1, :cond_6
- if-nez p2, :cond_6
- return v1
- :cond_6
- int-to-float v3, p1
- int-to-float v4, p2
- invoke-virtual {p0, v3, v4}, Landroid/support/v7/widget/RecyclerView;->dispatchNestedPreFling(FF)Z
- move-result v5
- if-nez v5, :cond_9
- const/4 v5, 0x1
- if-nez v0, :cond_8
- if-eqz v2, :cond_7
- goto :goto_0
- :cond_7
- const/4 v0, 0x0
- goto :goto_1
- :cond_8
- :goto_0
- const/4 v0, 0x1
- :goto_1
- invoke-virtual {p0, v3, v4, v0}, Landroid/support/v7/widget/RecyclerView;->dispatchNestedFling(FFZ)Z
- if-eqz v0, :cond_9
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
- neg-int v1, v0
- invoke-static {p1, v0}, Ljava/lang/Math;->min(II)I
- move-result p1
- invoke-static {v1, p1}, Ljava/lang/Math;->max(II)I
- move-result p1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
- neg-int v1, v0
- invoke-static {p2, v0}, Ljava/lang/Math;->min(II)I
- move-result p2
- invoke-static {v1, p2}, Ljava/lang/Math;->max(II)I
- move-result p2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$ViewFlinger;->fling(II)V
- return v5
- :cond_9
- return v1
- .end method
- .method public focusSearch(Landroid/view/View;I)Landroid/view/View;
- .locals 7
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onInterceptFocusSearch(Landroid/view/View;I)Landroid/view/View;
- move-result-object v0
- if-eqz v0, :cond_0
- return-object v0
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- const/4 v1, 0x1
- const/4 v2, 0x0
- if-eqz v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
- move-result v0
- if-nez v0, :cond_1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-nez v0, :cond_1
- const/4 v0, 0x1
- goto :goto_0
- :cond_1
- const/4 v0, 0x0
- :goto_0
- invoke-static {}, Landroid/view/FocusFinder;->getInstance()Landroid/view/FocusFinder;
- move-result-object v3
- const/4 v4, 0x0
- if-eqz v0, :cond_c
- const/4 v5, 0x2
- if-eq p2, v5, :cond_2
- if-ne p2, v1, :cond_c
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v0
- if-eqz v0, :cond_4
- if-ne p2, v5, :cond_3
- const/16 v0, 0x82
- goto :goto_1
- :cond_3
- const/16 v0, 0x21
- :goto_1
- invoke-virtual {v3, p0, p1, v0}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
- move-result-object v0
- if-nez v0, :cond_4
- const/4 v0, 0x1
- goto :goto_2
- :cond_4
- const/4 v0, 0x0
- :goto_2
- if-nez v0, :cond_9
- iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v6}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v6
- if-eqz v6, :cond_9
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getLayoutDirection()I
- move-result v0
- if-ne v0, v1, :cond_5
- const/4 v0, 0x1
- goto :goto_3
- :cond_5
- const/4 v0, 0x0
- :goto_3
- if-ne p2, v5, :cond_6
- const/4 v5, 0x1
- goto :goto_4
- :cond_6
- const/4 v5, 0x0
- :goto_4
- xor-int/2addr v0, v5
- if-eqz v0, :cond_7
- const/16 v0, 0x42
- goto :goto_5
- :cond_7
- const/16 v0, 0x11
- :goto_5
- invoke-virtual {v3, p0, p1, v0}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
- move-result-object v0
- if-nez v0, :cond_8
- const/4 v0, 0x1
- goto :goto_6
- :cond_8
- const/4 v0, 0x0
- :cond_9
- :goto_6
- if-eqz v0, :cond_b
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->consumePendingUpdateOperations()V
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View;
- move-result-object v0
- if-nez v0, :cond_a
- return-object v4
- :cond_a
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, p1, p2, v1, v4}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onFocusSearchFailed(Landroid/view/View;ILandroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)Landroid/view/View;
- invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- :cond_b
- invoke-virtual {v3, p0, p1, p2}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
- move-result-object v0
- goto :goto_7
- :cond_c
- invoke-virtual {v3, p0, p1, p2}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
- move-result-object v1
- if-nez v1, :cond_e
- if-eqz v0, :cond_e
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->consumePendingUpdateOperations()V
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View;
- move-result-object v0
- if-nez v0, :cond_d
- return-object v4
- :cond_d
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, p1, p2, v1, v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onFocusSearchFailed(Landroid/view/View;ILandroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)Landroid/view/View;
- move-result-object v0
- invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- goto :goto_7
- :cond_e
- move-object v0, v1
- :goto_7
- invoke-direct {p0, p1, v0, p2}, Landroid/support/v7/widget/RecyclerView;->isPreferredNextFocus(Landroid/view/View;Landroid/view/View;I)Z
- move-result v1
- if-eqz v1, :cond_f
- goto :goto_8
- :cond_f
- invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->focusSearch(Landroid/view/View;I)Landroid/view/View;
- move-result-object v0
- :goto_8
- return-object v0
- .end method
- .method protected generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->generateDefaultLayoutParams()Landroid/support/v7/widget/RecyclerView$LayoutParams;
- move-result-object v0
- return-object v0
- :cond_0
- new-instance v0, Ljava/lang/IllegalStateException;
- const-string v1, "RecyclerView has no LayoutManager"
- invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw v0
- .end method
- .method public generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams;
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-virtual {v0, v1, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->generateLayoutParams(Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/support/v7/widget/RecyclerView$LayoutParams;
- move-result-object p1
- return-object p1
- :cond_0
- new-instance p1, Ljava/lang/IllegalStateException;
- const-string v0, "RecyclerView has no LayoutManager"
- invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw p1
- .end method
- .method protected generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams;
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/support/v7/widget/RecyclerView$LayoutParams;
- move-result-object p1
- return-object p1
- :cond_0
- new-instance p1, Ljava/lang/IllegalStateException;
- const-string v0, "RecyclerView has no LayoutManager"
- invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
- throw p1
- .end method
- .method public getAdapter()Landroid/support/v7/widget/RecyclerView$Adapter;
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- return-object v0
- .end method
- .method public getBaseline()I
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getBaseline()I
- move-result v0
- return v0
- :cond_0
- invoke-super {p0}, Landroid/view/ViewGroup;->getBaseline()I
- move-result v0
- return v0
- .end method
- .method getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
- move-result v0
- if-eqz v0, :cond_0
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getItemId()J
- move-result-wide v0
- goto :goto_0
- :cond_0
- iget p1, p1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
- int-to-long v0, p1
- :goto_0
- return-wide v0
- .end method
- .method public getChildAdapterPosition(Landroid/view/View;)I
- .locals 0
- invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object p1
- if-eqz p1, :cond_0
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getAdapterPosition()I
- move-result p1
- goto :goto_0
- :cond_0
- const/4 p1, -0x1
- :goto_0
- return p1
- .end method
- .method protected getChildDrawingOrder(II)I
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
- if-nez v0, :cond_0
- invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->getChildDrawingOrder(II)I
- move-result p1
- return p1
- :cond_0
- invoke-interface {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;->onGetChildDrawingOrder(II)I
- move-result p1
- return p1
- .end method
- .method public getChildItemId(Landroid/view/View;)J
- .locals 3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- const-wide/16 v1, -0x1
- if-eqz v0, :cond_1
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
- move-result v0
- if-nez v0, :cond_0
- goto :goto_0
- :cond_0
- invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object p1
- if-eqz p1, :cond_1
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getItemId()J
- move-result-wide v1
- :cond_1
- :goto_0
- return-wide v1
- .end method
- .method public getChildLayoutPosition(Landroid/view/View;)I
- .locals 0
- invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object p1
- if-eqz p1, :cond_0
- invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getLayoutPosition()I
- move-result p1
- goto :goto_0
- :cond_0
- const/4 p1, -0x1
- :goto_0
- return p1
- .end method
- .method public getChildPosition(Landroid/view/View;)I
- .locals 0
- .annotation runtime Ljava/lang/Deprecated;
- .end annotation
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->getChildAdapterPosition(Landroid/view/View;)I
- move-result p1
- return p1
- .end method
- .method public getChildViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- .locals 3
- invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
- move-result-object v0
- if-eqz v0, :cond_1
- if-ne v0, p0, :cond_0
- goto :goto_0
- :cond_0
- new-instance v0, Ljava/lang/IllegalArgumentException;
- new-instance v1, Ljava/lang/StringBuilder;
- invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
- const-string v2, "View "
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- const-string p1, " is not a direct child of "
- invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p1
- invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
- throw v0
- :cond_1
- :goto_0
- invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object p1
- return-object p1
- .end method
- .method public getCompatAccessibilityDelegate()Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
- return-object v0
- .end method
- .method public getItemAnimator()Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- return-object v0
- .end method
- .method getItemDecorInsetsForChild(Landroid/view/View;)Landroid/graphics/Rect;
- .locals 8
- invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v0
- check-cast v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;
- iget-boolean v1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
- if-nez v1, :cond_0
- iget-object p1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect;
- return-object p1
- :cond_0
- iget-object v1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect;
- const/4 v2, 0x0
- invoke-virtual {v1, v2, v2, v2, v2}, Landroid/graphics/Rect;->set(IIII)V
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v3}, Ljava/util/ArrayList;->size()I
- move-result v3
- const/4 v4, 0x0
- :goto_0
- if-ge v4, v3, :cond_1
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- invoke-virtual {v5, v2, v2, v2, v2}, Landroid/graphics/Rect;->set(IIII)V
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v5, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v5
- check-cast v5, Landroid/support/v7/widget/RecyclerView$ItemDecoration;
- iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v5, v6, p1, p0, v7}, Landroid/support/v7/widget/RecyclerView$ItemDecoration;->getItemOffsets(Landroid/graphics/Rect;Landroid/view/View;Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;)V
- iget v5, v1, Landroid/graphics/Rect;->left:I
- iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget v7, v6, Landroid/graphics/Rect;->left:I
- add-int/2addr v5, v7
- iput v5, v1, Landroid/graphics/Rect;->left:I
- iget v5, v1, Landroid/graphics/Rect;->top:I
- iget v7, v6, Landroid/graphics/Rect;->top:I
- add-int/2addr v5, v7
- iput v5, v1, Landroid/graphics/Rect;->top:I
- iget v5, v1, Landroid/graphics/Rect;->right:I
- iget v7, v6, Landroid/graphics/Rect;->right:I
- add-int/2addr v5, v7
- iput v5, v1, Landroid/graphics/Rect;->right:I
- iget v5, v1, Landroid/graphics/Rect;->bottom:I
- iget v6, v6, Landroid/graphics/Rect;->bottom:I
- add-int/2addr v5, v6
- iput v5, v1, Landroid/graphics/Rect;->bottom:I
- add-int/lit8 v4, v4, 0x1
- goto :goto_0
- :cond_1
- iput-boolean v2, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
- return-object v1
- .end method
- .method public getLayoutManager()Landroid/support/v7/widget/RecyclerView$LayoutManager;
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- return-object v0
- .end method
- .method public getMaxFlingVelocity()I
- .locals 1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
- return v0
- .end method
- .method public getMinFlingVelocity()I
- .locals 1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mMinFlingVelocity:I
- return v0
- .end method
- .method public getPreserveFocusAfterLayout()Z
- .locals 1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
- return v0
- .end method
- .method public getRecycledViewPool()Landroid/support/v7/widget/RecyclerView$RecycledViewPool;
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->getRecycledViewPool()Landroid/support/v7/widget/RecyclerView$RecycledViewPool;
- move-result-object v0
- return-object v0
- .end method
- .method public getScrollState()I
- .locals 1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- return v0
- .end method
- .method public hasFixedSize()Z
- .locals 1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mHasFixedSize:Z
- return v0
- .end method
- .method public hasNestedScrollingParent()Z
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- invoke-virtual {v0}, Landroid/support/v4/view/NestedScrollingChildHelper;->hasNestedScrollingParent()Z
- move-result v0
- return v0
- .end method
- .method public hasPendingAdapterUpdates()Z
- .locals 1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
- if-eqz v0, :cond_1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
- if-nez v0, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->hasPendingUpdates()Z
- move-result v0
- if-eqz v0, :cond_0
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- goto :goto_1
- :cond_1
- :goto_0
- const/4 v0, 0x1
- :goto_1
- return v0
- .end method
- .method initAdapterManager()V
- .locals 2
- new-instance v0, Landroid/support/v7/widget/AdapterHelper;
- new-instance v1, Landroid/support/v7/widget/RecyclerView$6;
- invoke-direct {v1, p0}, Landroid/support/v7/widget/RecyclerView$6;-><init>(Landroid/support/v7/widget/RecyclerView;)V
- invoke-direct {v0, v1}, Landroid/support/v7/widget/AdapterHelper;-><init>(Landroid/support/v7/widget/AdapterHelper$Callback;)V
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- return-void
- .end method
- .method invalidateGlows()V
- .locals 1
- const/4 v0, 0x0
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
- return-void
- .end method
- .method public invalidateItemDecorations()V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
- move-result v0
- if-nez v0, :cond_0
- return-void
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_1
- const-string v1, "Cannot invalidate item decorations during a scroll or layout"
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V
- :cond_1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markItemDecorInsetsDirty()V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method isAccessibilityEnabled()Z
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/view/accessibility/AccessibilityManager;->isEnabled()Z
- move-result v0
- if-eqz v0, :cond_0
- const/4 v0, 0x1
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- :goto_0
- return v0
- .end method
- .method public isAnimating()Z
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->isRunning()Z
- move-result v0
- if-eqz v0, :cond_0
- const/4 v0, 0x1
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- :goto_0
- return v0
- .end method
- .method public isAttachedToWindow()Z
- .locals 1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
- return v0
- .end method
- .method public isComputingLayout()Z
- .locals 1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- if-lez v0, :cond_0
- const/4 v0, 0x1
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- :goto_0
- return v0
- .end method
- .method public isLayoutFrozen()Z
- .locals 1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- return v0
- .end method
- .method public isNestedScrollingEnabled()Z
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- invoke-virtual {v0}, Landroid/support/v4/view/NestedScrollingChildHelper;->isNestedScrollingEnabled()Z
- move-result v0
- return v0
- .end method
- .method markItemDecorInsetsDirty()V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_0
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-virtual {v2}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v2
- check-cast v2, Landroid/support/v7/widget/RecyclerView$LayoutParams;
- const/4 v3, 0x1
- iput-boolean v3, v2, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->markItemDecorInsetsDirty()V
- return-void
- .end method
- .method markKnownViewsInvalid()V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_1
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v2
- if-eqz v2, :cond_0
- invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v3
- if-nez v3, :cond_0
- const/4 v3, 0x6
- invoke-virtual {v2, v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->addFlags(I)V
- :cond_0
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markItemDecorInsetsDirty()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->markKnownViewsInvalid()V
- return-void
- .end method
- .method public offsetChildrenHorizontal(I)V
- .locals 3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_0
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-virtual {v2, p1}, Landroid/view/View;->offsetLeftAndRight(I)V
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_0
- return-void
- .end method
- .method public offsetChildrenVertical(I)V
- .locals 3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_0
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-virtual {v2, p1}, Landroid/view/View;->offsetTopAndBottom(I)V
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_0
- return-void
- .end method
- .method offsetPositionRecordsForInsert(II)V
- .locals 5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v1, 0x0
- const/4 v2, 0x0
- :goto_0
- if-ge v2, v0, :cond_1
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v3
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v3
- if-eqz v3, :cond_0
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v4
- if-nez v4, :cond_0
- iget v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
- if-lt v4, p1, :cond_0
- invoke-virtual {v3, p2, v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- const/4 v4, 0x1
- invoke-static {v3, v4}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- :cond_0
- add-int/lit8 v2, v2, 0x1
- goto :goto_0
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$Recycler;->offsetPositionRecordsForInsert(II)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method offsetPositionRecordsForMove(II)V
- .locals 9
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v1, 0x1
- if-ge p1, p2, :cond_0
- const/4 v2, -0x1
- move v2, p1
- move v3, p2
- const/4 v4, -0x1
- goto :goto_0
- :cond_0
- move v3, p1
- move v2, p2
- const/4 v4, 0x1
- :goto_0
- const/4 v5, 0x0
- const/4 v6, 0x0
- :goto_1
- if-ge v6, v0, :cond_4
- iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v7, v6}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v7
- invoke-static {v7}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v7
- if-eqz v7, :cond_3
- iget v8, v7, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
- if-lt v8, v2, :cond_3
- if-le v8, v3, :cond_1
- goto :goto_3
- :cond_1
- if-ne v8, p1, :cond_2
- sub-int v8, p2, p1
- invoke-virtual {v7, v8, v5}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V
- goto :goto_2
- :cond_2
- invoke-virtual {v7, v4, v5}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V
- :goto_2
- iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v7, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- :cond_3
- :goto_3
- add-int/lit8 v6, v6, 0x1
- goto :goto_1
- :cond_4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$Recycler;->offsetPositionRecordsForMove(II)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method offsetPositionRecordsForRemove(IIZ)V
- .locals 7
- add-int v0, p1, p2
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v1
- const/4 v2, 0x0
- :goto_0
- if-ge v2, v1, :cond_2
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v3
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v3
- if-eqz v3, :cond_1
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v4
- if-nez v4, :cond_1
- iget v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
- const/4 v5, 0x1
- if-lt v4, v0, :cond_0
- neg-int v4, p2
- invoke-virtual {v3, v4, p3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V
- :goto_1
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v3, v5}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- goto :goto_2
- :cond_0
- if-lt v4, p1, :cond_1
- add-int/lit8 v4, p1, -0x1
- neg-int v6, p2
- invoke-virtual {v3, v4, v6, p3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->flagRemovedAndOffsetPosition(IIZ)V
- goto :goto_1
- :cond_1
- :goto_2
- add-int/lit8 v2, v2, 0x1
- goto :goto_0
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView$Recycler;->offsetPositionRecordsForRemove(IIZ)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method protected onAttachedToWindow()V
- .locals 3
- invoke-super {p0}, Landroid/view/ViewGroup;->onAttachedToWindow()V
- const/4 v0, 0x0
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
- const/4 v1, 0x1
- iput-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
- iget-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
- if-eqz v2, :cond_0
- invoke-virtual {p0}, Landroid/view/ViewGroup;->isLayoutRequested()Z
- move-result v2
- if-nez v2, :cond_0
- goto :goto_0
- :cond_0
- const/4 v1, 0x0
- :goto_0
- iput-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v1, :cond_1
- invoke-virtual {v1, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->dispatchAttachedToWindow(Landroid/support/v7/widget/RecyclerView;)V
- :cond_1
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
- return-void
- .end method
- .method public onChildAttachedToWindow(Landroid/view/View;)V
- .locals 0
- return-void
- .end method
- .method public onChildDetachedFromWindow(Landroid/view/View;)V
- .locals 0
- return-void
- .end method
- .method protected onDetachedFromWindow()V
- .locals 2
- invoke-super {p0}, Landroid/view/ViewGroup;->onDetachedFromWindow()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->endAnimations()V
- :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopScroll()V
- const/4 v0, 0x0
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, p0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->dispatchDetachedFromWindow(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$Recycler;)V
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable;
- invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->removeCallbacks(Ljava/lang/Runnable;)Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
- invoke-virtual {v0}, Landroid/support/v7/widget/ViewInfoStore;->onDetach()V
- return-void
- .end method
- .method public onDraw(Landroid/graphics/Canvas;)V
- .locals 4
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->onDraw(Landroid/graphics/Canvas;)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_0
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v2
- check-cast v2, Landroid/support/v7/widget/RecyclerView$ItemDecoration;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v2, p1, p0, v3}, Landroid/support/v7/widget/RecyclerView$ItemDecoration;->onDraw(Landroid/graphics/Canvas;Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;)V
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_0
- return-void
- .end method
- .method public onGenericMotionEvent(Landroid/view/MotionEvent;)Z
- .locals 5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- if-nez v0, :cond_0
- return v1
- :cond_0
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-eqz v0, :cond_1
- return v1
- :cond_1
- invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getSource(Landroid/view/MotionEvent;)I
- move-result v0
- and-int/lit8 v0, v0, 0x2
- if-eqz v0, :cond_5
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I
- move-result v0
- const/16 v2, 0x8
- if-ne v0, v2, :cond_5
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v0
- const/4 v2, 0x0
- if-eqz v0, :cond_2
- const/16 v0, 0x9
- invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getAxisValue(Landroid/view/MotionEvent;I)F
- move-result v0
- neg-float v0, v0
- goto :goto_0
- :cond_2
- const/4 v0, 0x0
- :goto_0
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v3
- if-eqz v3, :cond_3
- const/16 v3, 0xa
- invoke-static {p1, v3}, Landroid/support/v4/view/MotionEventCompat;->getAxisValue(Landroid/view/MotionEvent;I)F
- move-result v3
- goto :goto_1
- :cond_3
- const/4 v3, 0x0
- :goto_1
- cmpl-float v4, v0, v2
- if-nez v4, :cond_4
- cmpl-float v2, v3, v2
- if-eqz v2, :cond_5
- :cond_4
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollFactor()F
- move-result v2
- mul-float v3, v3, v2
- float-to-int v3, v3
- mul-float v0, v0, v2
- float-to-int v0, v0
- invoke-virtual {p0, v3, v0, p1}, Landroid/support/v7/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z
- :cond_5
- return v1
- .end method
- .method public onInterceptTouchEvent(Landroid/view/MotionEvent;)Z
- .locals 8
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- const/4 v1, 0x0
- if-eqz v0, :cond_0
- return v1
- :cond_0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchOnItemTouchIntercept(Landroid/view/MotionEvent;)Z
- move-result v0
- const/4 v2, 0x1
- if-eqz v0, :cond_1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->cancelTouch()V
- return v2
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_2
- return v1
- :cond_2
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v0
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v3
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- if-nez v4, :cond_3
- invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker;
- move-result-object v4
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- :cond_3
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {v4, p1}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
- invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionMasked(Landroid/view/MotionEvent;)I
- move-result v4
- invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionIndex(Landroid/view/MotionEvent;)I
- move-result v5
- const/4 v6, 0x2
- const/high16 v7, 0x3f000000 # 0.5f
- if-eqz v4, :cond_e
- if-eq v4, v2, :cond_d
- if-eq v4, v6, :cond_7
- const/4 v0, 0x3
- if-eq v4, v0, :cond_6
- const/4 v0, 0x5
- if-eq v4, v0, :cond_5
- const/4 v0, 0x6
- if-eq v4, v0, :cond_4
- goto/16 :goto_4
- :cond_4
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onPointerUp(Landroid/view/MotionEvent;)V
- goto/16 :goto_4
- :cond_5
- invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v0
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v0
- add-float/2addr v0, v7
- float-to-int v0, v0
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
- invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
- move-result p1
- add-float/2addr p1, v7
- float-to-int p1, p1
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
- goto/16 :goto_4
- :cond_6
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->cancelTouch()V
- goto/16 :goto_4
- :cond_7
- iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-static {p1, v4}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
- move-result v4
- if-gez v4, :cond_8
- new-instance p1, Ljava/lang/StringBuilder;
- invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
- const-string v0, "Error processing scroll; pointer index for id "
- invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- const-string v0, " not found. Did any MotionEvents get skipped?"
- invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p1
- const-string v0, "RecyclerView"
- invoke-static {v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return v1
- :cond_8
- invoke-static {p1, v4}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v5
- add-float/2addr v5, v7
- float-to-int v5, v5
- invoke-static {p1, v4}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
- move-result p1
- add-float/2addr p1, v7
- float-to-int p1, p1
- iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- if-eq v4, v2, :cond_13
- iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
- sub-int/2addr v5, v4
- iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
- sub-int/2addr p1, v4
- const/4 v4, -0x1
- if-eqz v0, :cond_a
- invoke-static {v5}, Ljava/lang/Math;->abs(I)I
- move-result v0
- iget v6, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
- if-le v0, v6, :cond_a
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
- if-gez v5, :cond_9
- const/4 v5, -0x1
- goto :goto_0
- :cond_9
- const/4 v5, 0x1
- :goto_0
- mul-int v6, v6, v5
- add-int/2addr v0, v6
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- const/4 v0, 0x1
- goto :goto_1
- :cond_a
- const/4 v0, 0x0
- :goto_1
- if-eqz v3, :cond_c
- invoke-static {p1}, Ljava/lang/Math;->abs(I)I
- move-result v3
- iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
- if-le v3, v5, :cond_c
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
- if-gez p1, :cond_b
- goto :goto_2
- :cond_b
- const/4 v4, 0x1
- :goto_2
- mul-int v5, v5, v4
- add-int/2addr v0, v5
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- const/4 v0, 0x1
- :cond_c
- if-eqz v0, :cond_13
- invoke-direct {p0, v2}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
- goto :goto_4
- :cond_d
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {p1}, Landroid/view/VelocityTracker;->clear()V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopNestedScroll()V
- goto :goto_4
- :cond_e
- iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
- if-eqz v4, :cond_f
- iput-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
- :cond_f
- invoke-static {p1, v1}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v4
- iput v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F
- move-result v4
- add-float/2addr v4, v7
- float-to-int v4, v4
- iput v4, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- iput v4, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F
- move-result p1
- add-float/2addr p1, v7
- float-to-int p1, p1
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
- iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- if-ne p1, v6, :cond_10
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getParent()Landroid/view/ViewParent;
- move-result-object p1
- invoke-interface {p1, v2}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V
- invoke-direct {p0, v2}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
- :cond_10
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
- aput v1, p1, v2
- aput v1, p1, v1
- if-eqz v0, :cond_11
- const/4 p1, 0x1
- goto :goto_3
- :cond_11
- const/4 p1, 0x0
- :goto_3
- if-eqz v3, :cond_12
- or-int/lit8 p1, p1, 0x2
- :cond_12
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->startNestedScroll(I)Z
- :cond_13
- :goto_4
- iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- if-ne p1, v2, :cond_14
- const/4 v1, 0x1
- :cond_14
- return v1
- .end method
- .method protected onLayout(ZIIII)V
- .locals 0
- const-string p1, "RV OnLayout"
- invoke-static {p1}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
- invoke-static {}, Landroid/support/v4/os/TraceCompat;->endSection()V
- const/4 p1, 0x1
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
- return-void
- .end method
- .method protected onMeasure(II)V
- .locals 6
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_0
- invoke-virtual {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->defaultOnMeasure(II)V
- return-void
- :cond_0
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->access$2000(Landroid/support/v7/widget/RecyclerView$LayoutManager;)Z
- move-result v0
- const/4 v1, 0x1
- const/4 v2, 0x0
- if-eqz v0, :cond_5
- invoke-static {p1}, Landroid/view/View$MeasureSpec;->getMode(I)I
- move-result v0
- invoke-static {p2}, Landroid/view/View$MeasureSpec;->getMode(I)I
- move-result v3
- const/high16 v4, 0x40000000 # 2.0f
- if-ne v0, v4, :cond_1
- if-ne v3, v4, :cond_1
- const/4 v2, 0x1
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v3, v5, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onMeasure(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;II)V
- if-nez v2, :cond_4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-nez v0, :cond_2
- goto :goto_0
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2100(Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v0
- if-ne v0, v1, :cond_3
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep1()V
- :cond_3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setMeasureSpecs(II)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2202(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep2()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setMeasuredDimensionFromChildren(II)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->shouldMeasureTwice()Z
- move-result v0
- if-eqz v0, :cond_a
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
- move-result v2
- invoke-static {v2, v4}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v2
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
- move-result v3
- invoke-static {v3, v4}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
- move-result v3
- invoke-virtual {v0, v2, v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setMeasureSpecs(II)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2202(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep2()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setMeasuredDimensionFromChildren(II)V
- goto :goto_3
- :cond_4
- :goto_0
- return-void
- :cond_5
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mHasFixedSize:Z
- if-eqz v0, :cond_6
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v1, v2, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onMeasure(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;II)V
- return-void
- :cond_6
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z
- if-eqz v0, :cond_8
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->processAdapterUpdatesAndSetAnimationFlags()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2300(Landroid/support/v7/widget/RecyclerView$State;)Z
- move-result v0
- if-eqz v0, :cond_7
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- goto :goto_1
- :cond_7
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->consumeUpdatesInOnePass()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- :goto_1
- iput-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z
- invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- :cond_8
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz v0, :cond_9
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->getItemCount()I
- move-result v0
- iput v0, v1, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
- goto :goto_2
- :cond_9
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- iput v2, v0, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
- :goto_2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, v1, v3, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onMeasure(Landroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;II)V
- invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-static {p1, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
- :cond_a
- :goto_3
- return-void
- .end method
- .method protected onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z
- .locals 1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
- move-result v0
- if-eqz v0, :cond_0
- const/4 p1, 0x0
- return p1
- :cond_0
- invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z
- move-result p1
- return p1
- .end method
- .method protected onRestoreInstanceState(Landroid/os/Parcelable;)V
- .locals 1
- instance-of v0, p1, Landroid/support/v7/widget/RecyclerView$SavedState;
- if-nez v0, :cond_0
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->onRestoreInstanceState(Landroid/os/Parcelable;)V
- return-void
- :cond_0
- check-cast p1, Landroid/support/v7/widget/RecyclerView$SavedState;
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
- invoke-virtual {p1}, Landroid/support/v4/view/AbsSavedState;->getSuperState()Landroid/os/Parcelable;
- move-result-object p1
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->onRestoreInstanceState(Landroid/os/Parcelable;)V
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz p1, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
- iget-object v0, v0, Landroid/support/v7/widget/RecyclerView$SavedState;->mLayoutState:Landroid/os/Parcelable;
- if-eqz v0, :cond_1
- invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onRestoreInstanceState(Landroid/os/Parcelable;)V
- :cond_1
- return-void
- .end method
- .method protected onSaveInstanceState()Landroid/os/Parcelable;
- .locals 2
- new-instance v0, Landroid/support/v7/widget/RecyclerView$SavedState;
- invoke-super {p0}, Landroid/view/ViewGroup;->onSaveInstanceState()Landroid/os/Parcelable;
- move-result-object v1
- invoke-direct {v0, v1}, Landroid/support/v7/widget/RecyclerView$SavedState;-><init>(Landroid/os/Parcelable;)V
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
- if-eqz v1, :cond_0
- invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$SavedState;->access$1900(Landroid/support/v7/widget/RecyclerView$SavedState;Landroid/support/v7/widget/RecyclerView$SavedState;)V
- goto :goto_1
- :cond_0
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v1, :cond_1
- invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onSaveInstanceState()Landroid/os/Parcelable;
- move-result-object v1
- goto :goto_0
- :cond_1
- const/4 v1, 0x0
- :goto_0
- iput-object v1, v0, Landroid/support/v7/widget/RecyclerView$SavedState;->mLayoutState:Landroid/os/Parcelable;
- :goto_1
- return-object v0
- .end method
- .method public onScrollStateChanged(I)V
- .locals 0
- return-void
- .end method
- .method public onScrolled(II)V
- .locals 0
- return-void
- .end method
- .method protected onSizeChanged(IIII)V
- .locals 0
- invoke-super {p0, p1, p2, p3, p4}, Landroid/view/ViewGroup;->onSizeChanged(IIII)V
- if-ne p1, p3, :cond_0
- if-eq p2, p4, :cond_1
- :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->invalidateGlows()V
- :cond_1
- return-void
- .end method
- .method public onTouchEvent(Landroid/view/MotionEvent;)Z
- .locals 12
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- const/4 v1, 0x0
- if-nez v0, :cond_1d
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
- if-eqz v0, :cond_0
- goto/16 :goto_9
- :cond_0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchOnItemTouch(Landroid/view/MotionEvent;)Z
- move-result v0
- const/4 v2, 0x1
- if-eqz v0, :cond_1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->cancelTouch()V
- return v2
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_2
- return v1
- :cond_2
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v0
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v3
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- if-nez v4, :cond_3
- invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker;
- move-result-object v4
- iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- :cond_3
- invoke-static {p1}, Landroid/view/MotionEvent;->obtain(Landroid/view/MotionEvent;)Landroid/view/MotionEvent;
- move-result-object v4
- invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionMasked(Landroid/view/MotionEvent;)I
- move-result v5
- invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionIndex(Landroid/view/MotionEvent;)I
- move-result v6
- if-nez v5, :cond_4
- iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
- aput v1, v7, v2
- aput v1, v7, v1
- :cond_4
- iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
- aget v8, v7, v1
- int-to-float v8, v8
- aget v7, v7, v2
- int-to-float v7, v7
- invoke-virtual {v4, v8, v7}, Landroid/view/MotionEvent;->offsetLocation(FF)V
- const/high16 v7, 0x3f000000 # 0.5f
- if-eqz v5, :cond_18
- if-eq v5, v2, :cond_12
- const/4 v8, 0x2
- if-eq v5, v8, :cond_8
- const/4 v0, 0x3
- if-eq v5, v0, :cond_7
- const/4 v0, 0x5
- if-eq v5, v0, :cond_6
- const/4 v0, 0x6
- if-eq v5, v0, :cond_5
- goto/16 :goto_8
- :cond_5
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onPointerUp(Landroid/view/MotionEvent;)V
- goto/16 :goto_8
- :cond_6
- invoke-static {p1, v6}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v0
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-static {p1, v6}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v0
- add-float/2addr v0, v7
- float-to-int v0, v0
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
- invoke-static {p1, v6}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
- move-result p1
- add-float/2addr p1, v7
- float-to-int p1, p1
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
- goto/16 :goto_8
- :cond_7
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->cancelTouch()V
- goto/16 :goto_8
- :cond_8
- iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
- move-result v5
- if-gez v5, :cond_9
- new-instance p1, Ljava/lang/StringBuilder;
- invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
- const-string v0, "Error processing scroll; pointer index for id "
- invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- const-string v0, " not found. Did any MotionEvents get skipped?"
- invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p1
- const-string v0, "RecyclerView"
- invoke-static {v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return v1
- :cond_9
- invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
- move-result v6
- add-float/2addr v6, v7
- float-to-int v6, v6
- invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
- move-result p1
- add-float/2addr p1, v7
- float-to-int p1, p1
- iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- sub-int/2addr v5, v6
- iget v7, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- sub-int/2addr v7, p1
- iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollConsumed:[I
- iget-object v9, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
- invoke-virtual {p0, v5, v7, v8, v9}, Landroid/support/v7/widget/RecyclerView;->dispatchNestedPreScroll(II[I[I)Z
- move-result v8
- if-eqz v8, :cond_a
- iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollConsumed:[I
- aget v9, v8, v1
- sub-int/2addr v5, v9
- aget v8, v8, v2
- sub-int/2addr v7, v8
- iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
- aget v9, v8, v1
- int-to-float v9, v9
- aget v8, v8, v2
- int-to-float v8, v8
- invoke-virtual {v4, v9, v8}, Landroid/view/MotionEvent;->offsetLocation(FF)V
- iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
- aget v9, v8, v1
- iget-object v10, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
- aget v11, v10, v1
- add-int/2addr v9, v11
- aput v9, v8, v1
- aget v9, v8, v2
- aget v10, v10, v2
- add-int/2addr v9, v10
- aput v9, v8, v2
- :cond_a
- iget v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- if-eq v8, v2, :cond_f
- if-eqz v0, :cond_c
- invoke-static {v5}, Ljava/lang/Math;->abs(I)I
- move-result v8
- iget v9, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
- if-le v8, v9, :cond_c
- if-lez v5, :cond_b
- sub-int/2addr v5, v9
- goto :goto_0
- :cond_b
- add-int/2addr v5, v9
- :goto_0
- const/4 v8, 0x1
- goto :goto_1
- :cond_c
- const/4 v8, 0x0
- :goto_1
- if-eqz v3, :cond_e
- invoke-static {v7}, Ljava/lang/Math;->abs(I)I
- move-result v9
- iget v10, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
- if-le v9, v10, :cond_e
- if-lez v7, :cond_d
- sub-int/2addr v7, v10
- goto :goto_2
- :cond_d
- add-int/2addr v7, v10
- :goto_2
- const/4 v8, 0x1
- :cond_e
- if-eqz v8, :cond_f
- invoke-direct {p0, v2}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
- :cond_f
- iget v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
- if-ne v8, v2, :cond_1b
- iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
- aget v9, v8, v1
- sub-int/2addr v6, v9
- iput v6, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- aget v6, v8, v2
- sub-int/2addr p1, v6
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- if-eqz v0, :cond_10
- goto :goto_3
- :cond_10
- const/4 v5, 0x0
- :goto_3
- if-eqz v3, :cond_11
- goto :goto_4
- :cond_11
- const/4 v7, 0x0
- :goto_4
- invoke-virtual {p0, v5, v7, v4}, Landroid/support/v7/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z
- move-result p1
- if-eqz p1, :cond_1b
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getParent()Landroid/view/ViewParent;
- move-result-object p1
- invoke-interface {p1, v2}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V
- goto :goto_8
- :cond_12
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {p1, v4}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- const/16 v5, 0x3e8
- iget v6, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
- int-to-float v6, v6
- invoke-virtual {p1, v5, v6}, Landroid/view/VelocityTracker;->computeCurrentVelocity(IF)V
- const/4 p1, 0x0
- if-eqz v0, :cond_13
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-static {v0, v5}, Landroid/support/v4/view/VelocityTrackerCompat;->getXVelocity(Landroid/view/VelocityTracker;I)F
- move-result v0
- neg-float v0, v0
- goto :goto_5
- :cond_13
- const/4 v0, 0x0
- :goto_5
- if-eqz v3, :cond_14
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-static {v3, v5}, Landroid/support/v4/view/VelocityTrackerCompat;->getYVelocity(Landroid/view/VelocityTracker;I)F
- move-result v3
- neg-float v3, v3
- goto :goto_6
- :cond_14
- const/4 v3, 0x0
- :goto_6
- cmpl-float v5, v0, p1
- if-nez v5, :cond_15
- cmpl-float p1, v3, p1
- if-eqz p1, :cond_16
- :cond_15
- float-to-int p1, v0
- float-to-int v0, v3
- invoke-virtual {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;->fling(II)Z
- move-result p1
- if-nez p1, :cond_17
- :cond_16
- invoke-direct {p0, v1}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
- :cond_17
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->resetTouch()V
- const/4 v1, 0x1
- goto :goto_8
- :cond_18
- invoke-static {p1, v1}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
- move-result v5
- iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F
- move-result v5
- add-float/2addr v5, v7
- float-to-int v5, v5
- iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
- invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F
- move-result p1
- add-float/2addr p1, v7
- float-to-int p1, p1
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
- if-eqz v0, :cond_19
- const/4 p1, 0x1
- goto :goto_7
- :cond_19
- const/4 p1, 0x0
- :goto_7
- if-eqz v3, :cond_1a
- or-int/lit8 p1, p1, 0x2
- :cond_1a
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->startNestedScroll(I)Z
- :cond_1b
- :goto_8
- if-nez v1, :cond_1c
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
- invoke-virtual {p1, v4}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
- :cond_1c
- invoke-virtual {v4}, Landroid/view/MotionEvent;->recycle()V
- return v2
- :cond_1d
- :goto_9
- return v1
- .end method
- .method protected removeDetachedView(Landroid/view/View;Z)V
- .locals 2
- invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v0
- if-eqz v0, :cond_2
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isTmpDetached()Z
- move-result v1
- if-eqz v1, :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->clearTmpDetachFlag()V
- goto :goto_0
- :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v1
- if-eqz v1, :cond_1
- goto :goto_0
- :cond_1
- new-instance p1, Ljava/lang/IllegalArgumentException;
- new-instance p2, Ljava/lang/StringBuilder;
- invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
- const-string v1, "Called removeDetachedView with a view which is not flagged as tmp detached."
- invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p2
- invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
- throw p1
- :cond_2
- :goto_0
- invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchChildDetached(Landroid/view/View;)V
- invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->removeDetachedView(Landroid/view/View;Z)V
- return-void
- .end method
- .method public removeItemDecoration(Landroid/support/v7/widget/RecyclerView$ItemDecoration;)V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- const-string v1, "Cannot remove item decoration during a scroll or layout"
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {p1}, Ljava/util/ArrayList;->isEmpty()Z
- move-result p1
- if-eqz p1, :cond_2
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getOverScrollMode(Landroid/view/View;)I
- move-result p1
- const/4 v0, 0x2
- if-ne p1, v0, :cond_1
- const/4 p1, 0x1
- goto :goto_0
- :cond_1
- const/4 p1, 0x0
- :goto_0
- invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->setWillNotDraw(Z)V
- :cond_2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markItemDecorInsetsDirty()V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method public removeOnChildAttachStateChangeListener(Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
- if-nez v0, :cond_0
- return-void
- :cond_0
- invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z
- return-void
- .end method
- .method public removeOnItemTouchListener(Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- if-ne v0, p1, :cond_0
- const/4 p1, 0x0
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- :cond_0
- return-void
- .end method
- .method public removeOnScrollListener(Landroid/support/v7/widget/RecyclerView$OnScrollListener;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
- if-eqz v0, :cond_0
- invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z
- :cond_0
- return-void
- .end method
- .method public requestChildFocus(Landroid/view/View;Landroid/view/View;)V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, p0, v1, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onRequestChildFocus(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;Landroid/view/View;Landroid/view/View;)Z
- move-result v0
- if-nez v0, :cond_1
- if-eqz p2, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- invoke-virtual {p2}, Landroid/view/View;->getWidth()I
- move-result v1
- invoke-virtual {p2}, Landroid/view/View;->getHeight()I
- move-result v2
- const/4 v3, 0x0
- invoke-virtual {v0, v3, v3, v1, v2}, Landroid/graphics/Rect;->set(IIII)V
- invoke-virtual {p2}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v0
- instance-of v1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;
- if-eqz v1, :cond_0
- check-cast v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;
- iget-boolean v1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
- if-nez v1, :cond_0
- iget-object v0, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect;
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget v2, v1, Landroid/graphics/Rect;->left:I
- iget v3, v0, Landroid/graphics/Rect;->left:I
- sub-int/2addr v2, v3
- iput v2, v1, Landroid/graphics/Rect;->left:I
- iget v2, v1, Landroid/graphics/Rect;->right:I
- iget v3, v0, Landroid/graphics/Rect;->right:I
- add-int/2addr v2, v3
- iput v2, v1, Landroid/graphics/Rect;->right:I
- iget v2, v1, Landroid/graphics/Rect;->top:I
- iget v3, v0, Landroid/graphics/Rect;->top:I
- sub-int/2addr v2, v3
- iput v2, v1, Landroid/graphics/Rect;->top:I
- iget v2, v1, Landroid/graphics/Rect;->bottom:I
- iget v0, v0, Landroid/graphics/Rect;->bottom:I
- add-int/2addr v2, v0
- iput v2, v1, Landroid/graphics/Rect;->bottom:I
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- invoke-virtual {p0, p2, v0}, Landroid/view/ViewGroup;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- invoke-virtual {p0, p1, v0}, Landroid/view/ViewGroup;->offsetRectIntoDescendantCoords(Landroid/view/View;Landroid/graphics/Rect;)V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
- iget-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
- xor-int/lit8 v1, v1, 0x1
- invoke-virtual {p0, p1, v0, v1}, Landroid/support/v7/widget/RecyclerView;->requestChildRectangleOnScreen(Landroid/view/View;Landroid/graphics/Rect;Z)Z
- :cond_1
- invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->requestChildFocus(Landroid/view/View;Landroid/view/View;)V
- return-void
- .end method
- .method public requestChildRectangleOnScreen(Landroid/view/View;Landroid/graphics/Rect;Z)Z
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0, p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->requestChildRectangleOnScreen(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;Landroid/graphics/Rect;Z)Z
- move-result p1
- return p1
- .end method
- .method public requestDisallowInterceptTouchEvent(Z)V
- .locals 3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_0
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
- invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
- move-result-object v2
- check-cast v2, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
- invoke-interface {v2, p1}, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;->onRequestDisallowInterceptTouchEvent(Z)V
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_0
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->requestDisallowInterceptTouchEvent(Z)V
- return-void
- .end method
- .method public requestLayout()V
- .locals 1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- if-nez v0, :cond_0
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-nez v0, :cond_0
- invoke-super {p0}, Landroid/view/ViewGroup;->requestLayout()V
- goto :goto_0
- :cond_0
- const/4 v0, 0x1
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- :goto_0
- return-void
- .end method
- .method resumeRequestLayout(Z)V
- .locals 3
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- const/4 v1, 0x1
- if-ge v0, v1, :cond_0
- iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- :cond_0
- const/4 v0, 0x0
- if-nez p1, :cond_1
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- :cond_1
- iget v2, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- if-ne v2, v1, :cond_3
- if-eqz p1, :cond_2
- iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- if-eqz p1, :cond_2
- iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-nez p1, :cond_2
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz p1, :cond_2
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz p1, :cond_2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
- :cond_2
- iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-nez p1, :cond_3
- iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- :cond_3
- iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- sub-int/2addr p1, v1
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
- return-void
- .end method
- .method saveOldPositions()V
- .locals 4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- const/4 v1, 0x0
- :goto_0
- if-ge v1, v0, :cond_1
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v2
- invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v2
- invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v3
- if-nez v3, :cond_0
- invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->saveOldPosition()V
- :cond_0
- add-int/lit8 v1, v1, 0x1
- goto :goto_0
- :cond_1
- return-void
- .end method
- .method public scrollBy(II)V
- .locals 3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_0
- const-string p1, "RecyclerView"
- const-string p2, "Cannot scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
- invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return-void
- :cond_0
- iget-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-eqz v1, :cond_1
- return-void
- :cond_1
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v0
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v1
- if-nez v0, :cond_2
- if-eqz v1, :cond_5
- :cond_2
- const/4 v2, 0x0
- if-eqz v0, :cond_3
- goto :goto_0
- :cond_3
- const/4 p1, 0x0
- :goto_0
- if-eqz v1, :cond_4
- goto :goto_1
- :cond_4
- const/4 p2, 0x0
- :goto_1
- const/4 v0, 0x0
- invoke-virtual {p0, p1, p2, v0}, Landroid/support/v7/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z
- :cond_5
- return-void
- .end method
- .method scrollByInternal(IILandroid/view/MotionEvent;)Z
- .locals 11
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->consumePendingUpdateOperations()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- const/4 v1, 0x0
- if-eqz v0, :cond_2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
- const-string v0, "RV Scroll"
- invoke-static {v0}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
- if-eqz p1, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, p1, v2, v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->scrollHorizontallyBy(ILandroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v0
- sub-int v2, p1, v0
- goto :goto_0
- :cond_0
- const/4 v0, 0x0
- const/4 v2, 0x0
- :goto_0
- if-eqz p2, :cond_1
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v3, p2, v4, v5}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->scrollVerticallyBy(ILandroid/support/v7/widget/RecyclerView$Recycler;Landroid/support/v7/widget/RecyclerView$State;)I
- move-result v3
- sub-int v4, p2, v3
- goto :goto_1
- :cond_1
- const/4 v3, 0x0
- const/4 v4, 0x0
- :goto_1
- invoke-static {}, Landroid/support/v4/os/TraceCompat;->endSection()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->repositionShadowingViews()V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
- invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
- goto :goto_2
- :cond_2
- const/4 v0, 0x0
- const/4 v2, 0x0
- const/4 v3, 0x0
- const/4 v4, 0x0
- :goto_2
- iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
- invoke-virtual {v5}, Ljava/util/ArrayList;->isEmpty()Z
- move-result v5
- if-nez v5, :cond_3
- invoke-virtual {p0}, Landroid/view/ViewGroup;->invalidate()V
- :cond_3
- iget-object v10, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
- move-object v5, p0
- move v6, v0
- move v7, v3
- move v8, v2
- move v9, v4
- invoke-virtual/range {v5 .. v10}, Landroid/support/v7/widget/RecyclerView;->dispatchNestedScroll(IIII[I)Z
- move-result v5
- const/4 v6, 0x1
- if-eqz v5, :cond_5
- iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- iget-object p2, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
- aget v2, p2, v1
- sub-int/2addr p1, v2
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
- iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- aget v2, p2, v6
- sub-int/2addr p1, v2
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
- if-eqz p3, :cond_4
- aget p1, p2, v1
- int-to-float p1, p1
- aget p2, p2, v6
- int-to-float p2, p2
- invoke-virtual {p3, p1, p2}, Landroid/view/MotionEvent;->offsetLocation(FF)V
- :cond_4
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
- aget p2, p1, v1
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
- aget v2, p3, v1
- add-int/2addr p2, v2
- aput p2, p1, v1
- aget p2, p1, v6
- aget p3, p3, v6
- add-int/2addr p2, p3
- aput p2, p1, v6
- goto :goto_3
- :cond_5
- invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getOverScrollMode(Landroid/view/View;)I
- move-result v5
- const/4 v7, 0x2
- if-eq v5, v7, :cond_7
- if-eqz p3, :cond_6
- invoke-virtual {p3}, Landroid/view/MotionEvent;->getX()F
- move-result v5
- int-to-float v2, v2
- invoke-virtual {p3}, Landroid/view/MotionEvent;->getY()F
- move-result p3
- int-to-float v4, v4
- invoke-direct {p0, v5, v2, p3, v4}, Landroid/support/v7/widget/RecyclerView;->pullGlows(FFFF)V
- :cond_6
- invoke-direct {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->considerReleasingGlowsOnScroll(II)V
- :cond_7
- :goto_3
- if-nez v0, :cond_8
- if-eqz v3, :cond_9
- :cond_8
- invoke-virtual {p0, v0, v3}, Landroid/support/v7/widget/RecyclerView;->dispatchOnScrolled(II)V
- :cond_9
- invoke-virtual {p0}, Landroid/view/ViewGroup;->awakenScrollBars()Z
- move-result p1
- if-nez p1, :cond_a
- invoke-virtual {p0}, Landroid/view/ViewGroup;->invalidate()V
- :cond_a
- if-nez v0, :cond_b
- if-eqz v3, :cond_c
- :cond_b
- const/4 v1, 0x1
- :cond_c
- return v1
- .end method
- .method public scrollTo(II)V
- .locals 0
- const-string p1, "RecyclerView"
- const-string p2, "RecyclerView does not support scrolling to an absolute position. Use scrollToPosition instead"
- invoke-static {p1, p2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- return-void
- .end method
- .method public scrollToPosition(I)V
- .locals 1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-eqz v0, :cond_0
- return-void
- :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopScroll()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_1
- const-string p1, "RecyclerView"
- const-string v0, "Cannot scroll to position a LayoutManager set. Call setLayoutManager with a non-null argument."
- invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return-void
- :cond_1
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->scrollToPosition(I)V
- invoke-virtual {p0}, Landroid/view/ViewGroup;->awakenScrollBars()Z
- return-void
- .end method
- .method public sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V
- .locals 1
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->shouldDeferAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z
- move-result v0
- if-eqz v0, :cond_0
- return-void
- :cond_0
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V
- return-void
- .end method
- .method public setAccessibilityDelegateCompat(Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;)V
- .locals 0
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
- invoke-static {p0, p1}, Landroid/support/v4/view/ViewCompat;->setAccessibilityDelegate(Landroid/view/View;Landroid/support/v4/view/AccessibilityDelegateCompat;)V
- return-void
- .end method
- .method public setAdapter(Landroid/support/v7/widget/RecyclerView$Adapter;)V
- .locals 2
- const/4 v0, 0x0
- invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->setLayoutFrozen(Z)V
- const/4 v1, 0x1
- invoke-direct {p0, p1, v0, v1}, Landroid/support/v7/widget/RecyclerView;->setAdapterInternal(Landroid/support/v7/widget/RecyclerView$Adapter;ZZ)V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method public setChildDrawingOrderCallback(Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
- if-ne p1, v0, :cond_0
- return-void
- :cond_0
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
- if-eqz p1, :cond_1
- const/4 p1, 0x1
- goto :goto_0
- :cond_1
- const/4 p1, 0x0
- :goto_0
- invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->setChildrenDrawingOrderEnabled(Z)V
- return-void
- .end method
- .method public setClipToPadding(Z)V
- .locals 1
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- if-eq p1, v0, :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->invalidateGlows()V
- :cond_0
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
- invoke-super {p0, p1}, Landroid/view/ViewGroup;->setClipToPadding(Z)V
- iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
- if-eqz p1, :cond_1
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- :cond_1
- return-void
- .end method
- .method public setHasFixedSize(Z)V
- .locals 0
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mHasFixedSize:Z
- return-void
- .end method
- .method public setItemAnimator(Landroid/support/v7/widget/RecyclerView$ItemAnimator;)V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz v0, :cond_0
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->endAnimations()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- const/4 v1, 0x0
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->setListener(Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V
- :cond_0
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
- if-eqz p1, :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorListener:Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;
- invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->setListener(Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V
- :cond_1
- return-void
- .end method
- .method public setItemViewCacheSize(I)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->setViewCacheSize(I)V
- return-void
- .end method
- .method public setLayoutFrozen(Z)V
- .locals 9
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-eq p1, v0, :cond_2
- const-string v0, "Do not setLayoutFrozen in layout or scroll"
- invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->assertNotInLayoutOrScroll(Ljava/lang/String;)V
- if-nez p1, :cond_1
- const/4 p1, 0x0
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
- if-eqz v0, :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- :cond_0
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
- goto :goto_0
- :cond_1
- invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
- move-result-wide v3
- const/4 v5, 0x3
- const/4 v6, 0x0
- const/4 v7, 0x0
- const/4 v8, 0x0
- move-wide v1, v3
- invoke-static/range {v1 .. v8}, Landroid/view/MotionEvent;->obtain(JJIFFI)Landroid/view/MotionEvent;
- move-result-object p1
- invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onTouchEvent(Landroid/view/MotionEvent;)Z
- const/4 p1, 0x1
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopScroll()V
- :cond_2
- :goto_0
- return-void
- .end method
- .method public setLayoutManager(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V
- .locals 3
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-ne p1, v0, :cond_0
- return-void
- :cond_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopScroll()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz v0, :cond_2
- iget-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
- if-eqz v1, :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, p0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->dispatchDetachedFromWindow(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$Recycler;)V
- :cond_1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- const/4 v1, 0x0
- invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setRecyclerView(Landroid/support/v7/widget/RecyclerView;)V
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->clear()V
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->removeAllViewsUnfiltered()V
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-eqz p1, :cond_4
- iget-object v0, p1, Landroid/support/v7/widget/RecyclerView$LayoutManager;->mRecyclerView:Landroid/support/v7/widget/RecyclerView;
- if-nez v0, :cond_3
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {p1, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setRecyclerView(Landroid/support/v7/widget/RecyclerView;)V
- iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
- if-eqz p1, :cond_4
- iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {p1, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->dispatchAttachedToWindow(Landroid/support/v7/widget/RecyclerView;)V
- goto :goto_0
- :cond_3
- new-instance v0, Ljava/lang/IllegalArgumentException;
- new-instance v1, Ljava/lang/StringBuilder;
- invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
- const-string v2, "LayoutManager "
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- const-string v2, " is already attached to a RecyclerView: "
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- iget-object p1, p1, Landroid/support/v7/widget/RecyclerView$LayoutManager;->mRecyclerView:Landroid/support/v7/widget/RecyclerView;
- invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p1
- invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
- throw v0
- :cond_4
- :goto_0
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method public setNestedScrollingEnabled(Z)V
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- invoke-virtual {v0, p1}, Landroid/support/v4/view/NestedScrollingChildHelper;->setNestedScrollingEnabled(Z)V
- return-void
- .end method
- .method public setOnScrollListener(Landroid/support/v7/widget/RecyclerView$OnScrollListener;)V
- .locals 0
- .annotation runtime Ljava/lang/Deprecated;
- .end annotation
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListener:Landroid/support/v7/widget/RecyclerView$OnScrollListener;
- return-void
- .end method
- .method public setPreserveFocusAfterLayout(Z)V
- .locals 0
- iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
- return-void
- .end method
- .method public setRecycledViewPool(Landroid/support/v7/widget/RecyclerView$RecycledViewPool;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->setRecycledViewPool(Landroid/support/v7/widget/RecyclerView$RecycledViewPool;)V
- return-void
- .end method
- .method public setRecyclerListener(Landroid/support/v7/widget/RecyclerView$RecyclerListener;)V
- .locals 0
- iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mRecyclerListener:Landroid/support/v7/widget/RecyclerView$RecyclerListener;
- return-void
- .end method
- .method public setScrollingTouchSlop(I)V
- .locals 3
- invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
- move-result-object v0
- invoke-static {v0}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;
- move-result-object v0
- if-eqz p1, :cond_1
- const/4 v1, 0x1
- if-eq p1, v1, :cond_0
- new-instance v1, Ljava/lang/StringBuilder;
- invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
- const-string v2, "setScrollingTouchSlop(): bad argument constant "
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- const-string p1, "; using default value"
- invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object p1
- const-string v1, "RecyclerView"
- invoke-static {v1, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- goto :goto_0
- :cond_0
- invoke-static {v0}, Landroid/support/v4/view/ViewConfigurationCompat;->getScaledPagingTouchSlop(Landroid/view/ViewConfiguration;)I
- move-result p1
- goto :goto_1
- :cond_1
- :goto_0
- invoke-virtual {v0}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I
- move-result p1
- :goto_1
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
- return-void
- .end method
- .method public setViewCacheExtension(Landroid/support/v7/widget/RecyclerView$ViewCacheExtension;)V
- .locals 1
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->setViewCacheExtension(Landroid/support/v7/widget/RecyclerView$ViewCacheExtension;)V
- return-void
- .end method
- .method shouldDeferAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z
- .locals 2
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
- move-result v0
- const/4 v1, 0x0
- if-eqz v0, :cond_2
- if-eqz p1, :cond_0
- invoke-static {p1}, Landroid/support/v4/view/accessibility/AccessibilityEventCompat;->getContentChangeTypes(Landroid/view/accessibility/AccessibilityEvent;)I
- move-result p1
- goto :goto_0
- :cond_0
- const/4 p1, 0x0
- :goto_0
- if-nez p1, :cond_1
- const/4 p1, 0x0
- :cond_1
- iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I
- or-int/2addr p1, v0
- iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I
- const/4 p1, 0x1
- return p1
- :cond_2
- return v1
- .end method
- .method public smoothScrollBy(II)V
- .locals 2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_0
- const-string p1, "RecyclerView"
- const-string p2, "Cannot smooth scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
- invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return-void
- :cond_0
- iget-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-eqz v1, :cond_1
- return-void
- :cond_1
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
- move-result v0
- const/4 v1, 0x0
- if-nez v0, :cond_2
- const/4 p1, 0x0
- :cond_2
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
- move-result v0
- if-nez v0, :cond_3
- const/4 p2, 0x0
- :cond_3
- if-nez p1, :cond_4
- if-eqz p2, :cond_5
- :cond_4
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
- invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$ViewFlinger;->smoothScrollBy(II)V
- :cond_5
- return-void
- .end method
- .method public smoothScrollToPosition(I)V
- .locals 2
- iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
- if-eqz v0, :cond_0
- return-void
- :cond_0
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
- if-nez v0, :cond_1
- const-string p1, "RecyclerView"
- const-string v0, "Cannot smooth scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
- invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- return-void
- :cond_1
- iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
- invoke-virtual {v0, p0, v1, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->smoothScrollToPosition(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$State;I)V
- return-void
- .end method
- .method public startNestedScroll(I)Z
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- invoke-virtual {v0, p1}, Landroid/support/v4/view/NestedScrollingChildHelper;->startNestedScroll(I)Z
- move-result p1
- return p1
- .end method
- .method public stopNestedScroll()V
- .locals 1
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
- move-result-object v0
- invoke-virtual {v0}, Landroid/support/v4/view/NestedScrollingChildHelper;->stopNestedScroll()V
- return-void
- .end method
- .method public stopScroll()V
- .locals 1
- const/4 v0, 0x0
- invoke-direct {p0, v0}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->stopScrollersInternal()V
- return-void
- .end method
- .method public swapAdapter(Landroid/support/v7/widget/RecyclerView$Adapter;Z)V
- .locals 1
- const/4 v0, 0x0
- invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->setLayoutFrozen(Z)V
- const/4 v0, 0x1
- invoke-direct {p0, p1, v0, p2}, Landroid/support/v7/widget/RecyclerView;->setAdapterInternal(Landroid/support/v7/widget/RecyclerView$Adapter;ZZ)V
- invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->setDataSetChangedAfterLayout()V
- invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
- return-void
- .end method
- .method viewRangeUpdate(IILjava/lang/Object;)V
- .locals 6
- iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
- move-result v0
- add-int v1, p1, p2
- const/4 v2, 0x0
- :goto_0
- if-ge v2, v0, :cond_2
- iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
- invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
- move-result-object v3
- invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
- move-result-object v4
- if-eqz v4, :cond_1
- invoke-virtual {v4}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
- move-result v5
- if-eqz v5, :cond_0
- goto :goto_1
- :cond_0
- iget v5, v4, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
- if-lt v5, p1, :cond_1
- if-ge v5, v1, :cond_1
- const/4 v5, 0x2
- invoke-virtual {v4, v5}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->addFlags(I)V
- invoke-virtual {v4, p3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->addChangePayload(Ljava/lang/Object;)V
- invoke-virtual {v3}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
- move-result-object v3
- check-cast v3, Landroid/support/v7/widget/RecyclerView$LayoutParams;
- const/4 v4, 0x1
- iput-boolean v4, v3, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
- :cond_1
- :goto_1
- add-int/lit8 v2, v2, 0x1
- goto :goto_0
- :cond_2
- iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
- invoke-virtual {p3, p1, p2}, Landroid/support/v7/widget/RecyclerView$Recycler;->viewRangeUpdate(II)V
- return-void
- .end method
|