RecyclerView.smali 327 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195
  1. .class public Landroid/support/v7/widget/RecyclerView;
  2. .super Landroid/view/ViewGroup;
  3. .source ""
  4. # interfaces
  5. .implements Landroid/support/v4/view/ScrollingView;
  6. .implements Landroid/support/v4/view/NestedScrollingChild;
  7. # annotations
  8. .annotation system Ldalvik/annotation/MemberClasses;
  9. value = {
  10. Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;,
  11. Landroid/support/v7/widget/RecyclerView$ItemAnimator;,
  12. Landroid/support/v7/widget/RecyclerView$ItemAnimatorRestoreListener;,
  13. Landroid/support/v7/widget/RecyclerView$State;,
  14. Landroid/support/v7/widget/RecyclerView$SavedState;,
  15. Landroid/support/v7/widget/RecyclerView$AdapterDataObservable;,
  16. Landroid/support/v7/widget/RecyclerView$SmoothScroller;,
  17. Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;,
  18. Landroid/support/v7/widget/RecyclerView$LayoutParams;,
  19. Landroid/support/v7/widget/RecyclerView$ViewHolder;,
  20. Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;,
  21. Landroid/support/v7/widget/RecyclerView$RecyclerListener;,
  22. Landroid/support/v7/widget/RecyclerView$OnScrollListener;,
  23. Landroid/support/v7/widget/RecyclerView$SimpleOnItemTouchListener;,
  24. Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;,
  25. Landroid/support/v7/widget/RecyclerView$ItemDecoration;,
  26. Landroid/support/v7/widget/RecyclerView$LayoutManager;,
  27. Landroid/support/v7/widget/RecyclerView$Adapter;,
  28. Landroid/support/v7/widget/RecyclerView$ViewCacheExtension;,
  29. Landroid/support/v7/widget/RecyclerView$Recycler;,
  30. Landroid/support/v7/widget/RecyclerView$RecycledViewPool;,
  31. Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;,
  32. Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  33. }
  34. .end annotation
  35. # static fields
  36. .field static final ALLOW_SIZE_IN_UNSPECIFIED_SPEC:Z
  37. .field private static final CLIP_TO_PADDING_ATTR:[I
  38. .field private static final DEBUG:Z = false
  39. .field static final DISPATCH_TEMP_DETACH:Z = false
  40. .field private static final FORCE_INVALIDATE_DISPLAY_LIST:Z
  41. .field public static final HORIZONTAL:I = 0x0
  42. .field private static final INVALID_POINTER:I = -0x1
  43. .field public static final INVALID_TYPE:I = -0x1
  44. .field private static final LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class;
  45. .annotation system Ldalvik/annotation/Signature;
  46. value = {
  47. "[",
  48. "Ljava/lang/Class<",
  49. "*>;"
  50. }
  51. .end annotation
  52. .end field
  53. .field private static final MAX_SCROLL_DURATION:I = 0x7d0
  54. .field private static final NESTED_SCROLLING_ATTRS:[I
  55. .field public static final NO_ID:J = -0x1L
  56. .field public static final NO_POSITION:I = -0x1
  57. .field public static final SCROLL_STATE_DRAGGING:I = 0x1
  58. .field public static final SCROLL_STATE_IDLE:I = 0x0
  59. .field public static final SCROLL_STATE_SETTLING:I = 0x2
  60. .field private static final TAG:Ljava/lang/String; = "RecyclerView"
  61. .field public static final TOUCH_SLOP_DEFAULT:I = 0x0
  62. .field public static final TOUCH_SLOP_PAGING:I = 0x1
  63. .field private static final TRACE_BIND_VIEW_TAG:Ljava/lang/String; = "RV OnBindView"
  64. .field private static final TRACE_CREATE_VIEW_TAG:Ljava/lang/String; = "RV CreateView"
  65. .field private static final TRACE_HANDLE_ADAPTER_UPDATES_TAG:Ljava/lang/String; = "RV PartialInvalidate"
  66. .field private static final TRACE_ON_DATA_SET_CHANGE_LAYOUT_TAG:Ljava/lang/String; = "RV FullInvalidate"
  67. .field private static final TRACE_ON_LAYOUT_TAG:Ljava/lang/String; = "RV OnLayout"
  68. .field private static final TRACE_SCROLL_TAG:Ljava/lang/String; = "RV Scroll"
  69. .field public static final VERTICAL:I = 0x1
  70. .field private static final sQuinticInterpolator:Landroid/view/animation/Interpolator;
  71. # instance fields
  72. .field private mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
  73. .field private final mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager;
  74. .field private mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  75. .field private mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  76. .field mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  77. .field private mAdapterUpdateDuringMeasure:Z
  78. .field private mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  79. .field private mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
  80. .field mChildHelper:Landroid/support/v7/widget/ChildHelper;
  81. .field private mClipToPadding:Z
  82. .field private mDataSetHasChangedAfterLayout:Z
  83. .field private mEatRequestLayout:I
  84. .field private mEatenAccessibilityChangeFlags:I
  85. .field mFirstLayoutComplete:Z
  86. .annotation build Landroid/support/annotation/VisibleForTesting;
  87. .end annotation
  88. .end field
  89. .field private mHasFixedSize:Z
  90. .field private mIgnoreMotionEventTillDown:Z
  91. .field private mInitialTouchX:I
  92. .field private mInitialTouchY:I
  93. .field private mIsAttached:Z
  94. .field mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  95. .field private mItemAnimatorListener:Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;
  96. .field private mItemAnimatorRunner:Ljava/lang/Runnable;
  97. .field private final mItemDecorations:Ljava/util/ArrayList;
  98. .annotation system Ldalvik/annotation/Signature;
  99. value = {
  100. "Ljava/util/ArrayList<",
  101. "Landroid/support/v7/widget/RecyclerView$ItemDecoration;",
  102. ">;"
  103. }
  104. .end annotation
  105. .end field
  106. .field mItemsAddedOrRemoved:Z
  107. .field mItemsChanged:Z
  108. .field private mLastTouchX:I
  109. .field private mLastTouchY:I
  110. .field mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  111. .annotation build Landroid/support/annotation/VisibleForTesting;
  112. .end annotation
  113. .end field
  114. .field private mLayoutFrozen:Z
  115. .field private mLayoutOrScrollCounter:I
  116. .field private mLayoutRequestEaten:Z
  117. .field private mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  118. .field private final mMaxFlingVelocity:I
  119. .field private final mMinFlingVelocity:I
  120. .field private final mMinMaxLayoutPositions:[I
  121. .field private final mNestedOffsets:[I
  122. .field private final mObserver:Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
  123. .field private mOnChildAttachStateListeners:Ljava/util/List;
  124. .annotation system Ldalvik/annotation/Signature;
  125. value = {
  126. "Ljava/util/List<",
  127. "Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;",
  128. ">;"
  129. }
  130. .end annotation
  131. .end field
  132. .field private final mOnItemTouchListeners:Ljava/util/ArrayList;
  133. .annotation system Ldalvik/annotation/Signature;
  134. value = {
  135. "Ljava/util/ArrayList<",
  136. "Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;",
  137. ">;"
  138. }
  139. .end annotation
  140. .end field
  141. .field private mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
  142. .field private final mPostUpdatesOnAnimation:Z
  143. .field private mPostedAnimatorRunner:Z
  144. .field private mPreserveFocusAfterLayout:Z
  145. .field final mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  146. .field private mRecyclerListener:Landroid/support/v7/widget/RecyclerView$RecyclerListener;
  147. .field private mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  148. .field private final mScrollConsumed:[I
  149. .field private mScrollFactor:F
  150. .field private mScrollListener:Landroid/support/v7/widget/RecyclerView$OnScrollListener;
  151. .field private mScrollListeners:Ljava/util/List;
  152. .annotation system Ldalvik/annotation/Signature;
  153. value = {
  154. "Ljava/util/List<",
  155. "Landroid/support/v7/widget/RecyclerView$OnScrollListener;",
  156. ">;"
  157. }
  158. .end annotation
  159. .end field
  160. .field private final mScrollOffset:[I
  161. .field private mScrollPointerId:I
  162. .field private mScrollState:I
  163. .field private mScrollingChildHelper:Landroid/support/v4/view/NestedScrollingChildHelper;
  164. .field final mState:Landroid/support/v7/widget/RecyclerView$State;
  165. .field private final mTempRect:Landroid/graphics/Rect;
  166. .field private final mTempRect2:Landroid/graphics/Rect;
  167. .field private final mTempRectF:Landroid/graphics/RectF;
  168. .field private mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  169. .field private mTouchSlop:I
  170. .field private final mUpdateChildViewsRunnable:Ljava/lang/Runnable;
  171. .field private mVelocityTracker:Landroid/view/VelocityTracker;
  172. .field private final mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  173. .field private final mViewInfoProcessCallback:Landroid/support/v7/widget/ViewInfoStore$ProcessCallback;
  174. .field final mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  175. # direct methods
  176. .method static constructor <clinit>()V
  177. .locals 4
  178. const/4 v0, 0x1
  179. new-array v1, v0, [I
  180. const/4 v2, 0x0
  181. const v3, 0x1010436
  182. aput v3, v1, v2
  183. sput-object v1, Landroid/support/v7/widget/RecyclerView;->NESTED_SCROLLING_ATTRS:[I
  184. new-array v1, v0, [I
  185. const v3, 0x10100eb
  186. aput v3, v1, v2
  187. sput-object v1, Landroid/support/v7/widget/RecyclerView;->CLIP_TO_PADDING_ATTR:[I
  188. sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
  189. const/16 v3, 0x12
  190. if-eq v1, v3, :cond_1
  191. const/16 v3, 0x13
  192. if-eq v1, v3, :cond_1
  193. const/16 v3, 0x14
  194. if-ne v1, v3, :cond_0
  195. goto :goto_0
  196. :cond_0
  197. const/4 v1, 0x0
  198. goto :goto_1
  199. :cond_1
  200. :goto_0
  201. const/4 v1, 0x1
  202. :goto_1
  203. sput-boolean v1, Landroid/support/v7/widget/RecyclerView;->FORCE_INVALIDATE_DISPLAY_LIST:Z
  204. sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
  205. const/16 v3, 0x17
  206. if-lt v1, v3, :cond_2
  207. const/4 v1, 0x1
  208. goto :goto_2
  209. :cond_2
  210. const/4 v1, 0x0
  211. :goto_2
  212. sput-boolean v1, Landroid/support/v7/widget/RecyclerView;->ALLOW_SIZE_IN_UNSPECIFIED_SPEC:Z
  213. const/4 v1, 0x4
  214. new-array v1, v1, [Ljava/lang/Class;
  215. const-class v3, Landroid/content/Context;
  216. aput-object v3, v1, v2
  217. const-class v2, Landroid/util/AttributeSet;
  218. aput-object v2, v1, v0
  219. const/4 v0, 0x2
  220. sget-object v2, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
  221. aput-object v2, v1, v0
  222. const/4 v0, 0x3
  223. aput-object v2, v1, v0
  224. sput-object v1, Landroid/support/v7/widget/RecyclerView;->LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class;
  225. new-instance v0, Landroid/support/v7/widget/RecyclerView$3;
  226. invoke-direct {v0}, Landroid/support/v7/widget/RecyclerView$3;-><init>()V
  227. sput-object v0, Landroid/support/v7/widget/RecyclerView;->sQuinticInterpolator:Landroid/view/animation/Interpolator;
  228. return-void
  229. .end method
  230. .method public constructor <init>(Landroid/content/Context;)V
  231. .locals 1
  232. const/4 v0, 0x0
  233. invoke-direct {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
  234. return-void
  235. .end method
  236. .method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
  237. .locals 1
  238. .param p2 # Landroid/util/AttributeSet;
  239. .annotation build Landroid/support/annotation/Nullable;
  240. .end annotation
  241. .end param
  242. const/4 v0, 0x0
  243. invoke-direct {p0, p1, p2, v0}, Landroid/support/v7/widget/RecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
  244. return-void
  245. .end method
  246. .method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
  247. .locals 12
  248. .param p2 # Landroid/util/AttributeSet;
  249. .annotation build Landroid/support/annotation/Nullable;
  250. .end annotation
  251. .end param
  252. invoke-direct {p0, p1, p2, p3}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
  253. new-instance v0, Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
  254. const/4 v1, 0x0
  255. invoke-direct {v0, p0, v1}, Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;-><init>(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$1;)V
  256. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mObserver:Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
  257. new-instance v0, Landroid/support/v7/widget/RecyclerView$Recycler;
  258. invoke-direct {v0, p0}, Landroid/support/v7/widget/RecyclerView$Recycler;-><init>(Landroid/support/v7/widget/RecyclerView;)V
  259. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  260. new-instance v0, Landroid/support/v7/widget/ViewInfoStore;
  261. invoke-direct {v0}, Landroid/support/v7/widget/ViewInfoStore;-><init>()V
  262. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  263. new-instance v0, Landroid/support/v7/widget/RecyclerView$1;
  264. invoke-direct {v0, p0}, Landroid/support/v7/widget/RecyclerView$1;-><init>(Landroid/support/v7/widget/RecyclerView;)V
  265. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mUpdateChildViewsRunnable:Ljava/lang/Runnable;
  266. new-instance v0, Landroid/graphics/Rect;
  267. invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
  268. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  269. new-instance v0, Landroid/graphics/Rect;
  270. invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
  271. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  272. new-instance v0, Landroid/graphics/RectF;
  273. invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V
  274. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRectF:Landroid/graphics/RectF;
  275. new-instance v0, Ljava/util/ArrayList;
  276. invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
  277. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  278. new-instance v0, Ljava/util/ArrayList;
  279. invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
  280. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  281. const/4 v0, 0x0
  282. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  283. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  284. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  285. new-instance v2, Landroid/support/v7/widget/DefaultItemAnimator;
  286. invoke-direct {v2}, Landroid/support/v7/widget/DefaultItemAnimator;-><init>()V
  287. iput-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  288. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  289. const/4 v2, -0x1
  290. iput v2, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  291. const/4 v3, 0x1
  292. iput v3, p0, Landroid/support/v7/widget/RecyclerView;->mScrollFactor:F
  293. const/4 v3, 0x1
  294. iput-boolean v3, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
  295. new-instance v4, Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  296. invoke-direct {v4, p0}, Landroid/support/v7/widget/RecyclerView$ViewFlinger;-><init>(Landroid/support/v7/widget/RecyclerView;)V
  297. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  298. new-instance v4, Landroid/support/v7/widget/RecyclerView$State;
  299. invoke-direct {v4}, Landroid/support/v7/widget/RecyclerView$State;-><init>()V
  300. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  301. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemsAddedOrRemoved:Z
  302. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemsChanged:Z
  303. new-instance v4, Landroid/support/v7/widget/RecyclerView$ItemAnimatorRestoreListener;
  304. invoke-direct {v4, p0, v1}, Landroid/support/v7/widget/RecyclerView$ItemAnimatorRestoreListener;-><init>(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$1;)V
  305. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorListener:Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;
  306. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
  307. const/4 v1, 0x2
  308. new-array v4, v1, [I
  309. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
  310. new-array v4, v1, [I
  311. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
  312. new-array v4, v1, [I
  313. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollConsumed:[I
  314. new-array v4, v1, [I
  315. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
  316. new-instance v4, Landroid/support/v7/widget/RecyclerView$2;
  317. invoke-direct {v4, p0}, Landroid/support/v7/widget/RecyclerView$2;-><init>(Landroid/support/v7/widget/RecyclerView;)V
  318. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable;
  319. new-instance v4, Landroid/support/v7/widget/RecyclerView$4;
  320. invoke-direct {v4, p0}, Landroid/support/v7/widget/RecyclerView$4;-><init>(Landroid/support/v7/widget/RecyclerView;)V
  321. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoProcessCallback:Landroid/support/v7/widget/ViewInfoStore$ProcessCallback;
  322. if-eqz p2, :cond_0
  323. sget-object v4, Landroid/support/v7/widget/RecyclerView;->CLIP_TO_PADDING_ATTR:[I
  324. invoke-virtual {p1, p2, v4, p3, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
  325. move-result-object v4
  326. invoke-virtual {v4, v0, v3}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
  327. move-result v5
  328. iput-boolean v5, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  329. invoke-virtual {v4}, Landroid/content/res/TypedArray;->recycle()V
  330. goto :goto_0
  331. :cond_0
  332. iput-boolean v3, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  333. :goto_0
  334. invoke-virtual {p0, v3}, Landroid/view/ViewGroup;->setScrollContainer(Z)V
  335. invoke-virtual {p0, v3}, Landroid/view/ViewGroup;->setFocusableInTouchMode(Z)V
  336. sget v4, Landroid/os/Build$VERSION;->SDK_INT:I
  337. const/16 v5, 0x10
  338. if-lt v4, v5, :cond_1
  339. const/4 v4, 0x1
  340. goto :goto_1
  341. :cond_1
  342. const/4 v4, 0x0
  343. :goto_1
  344. iput-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mPostUpdatesOnAnimation:Z
  345. invoke-static {p1}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;
  346. move-result-object v4
  347. invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I
  348. move-result v5
  349. iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
  350. invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledMinimumFlingVelocity()I
  351. move-result v5
  352. iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mMinFlingVelocity:I
  353. invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledMaximumFlingVelocity()I
  354. move-result v4
  355. iput v4, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
  356. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getOverScrollMode(Landroid/view/View;)I
  357. move-result v4
  358. if-ne v4, v1, :cond_2
  359. const/4 v1, 0x1
  360. goto :goto_2
  361. :cond_2
  362. const/4 v1, 0x0
  363. :goto_2
  364. invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->setWillNotDraw(Z)V
  365. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  366. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorListener:Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;
  367. invoke-virtual {v1, v4}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->setListener(Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V
  368. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->initAdapterManager()V
  369. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->initChildrenHelper()V
  370. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getImportantForAccessibility(Landroid/view/View;)I
  371. move-result v1
  372. if-nez v1, :cond_3
  373. invoke-static {p0, v3}, Landroid/support/v4/view/ViewCompat;->setImportantForAccessibility(Landroid/view/View;I)V
  374. :cond_3
  375. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  376. move-result-object v1
  377. const-string v4, "accessibility"
  378. invoke-virtual {v1, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
  379. move-result-object v1
  380. check-cast v1, Landroid/view/accessibility/AccessibilityManager;
  381. iput-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager;
  382. new-instance v1, Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
  383. invoke-direct {v1, p0}, Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;-><init>(Landroid/support/v7/widget/RecyclerView;)V
  384. invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->setAccessibilityDelegateCompat(Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;)V
  385. const/high16 v1, 0x40000
  386. if-eqz p2, :cond_5
  387. sget-object v4, Landroid/support/v7/recyclerview/R$styleable;->RecyclerView:[I
  388. invoke-virtual {p1, p2, v4, p3, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
  389. move-result-object v4
  390. sget v5, Landroid/support/v7/recyclerview/R$styleable;->RecyclerView_layoutManager:I
  391. invoke-virtual {v4, v5}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String;
  392. move-result-object v8
  393. sget v5, Landroid/support/v7/recyclerview/R$styleable;->RecyclerView_android_descendantFocusability:I
  394. invoke-virtual {v4, v5, v2}, Landroid/content/res/TypedArray;->getInt(II)I
  395. move-result v5
  396. if-ne v5, v2, :cond_4
  397. invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->setDescendantFocusability(I)V
  398. :cond_4
  399. invoke-virtual {v4}, Landroid/content/res/TypedArray;->recycle()V
  400. const/4 v11, 0x0
  401. move-object v6, p0
  402. move-object v7, p1
  403. move-object v9, p2
  404. move v10, p3
  405. invoke-direct/range {v6 .. v11}, Landroid/support/v7/widget/RecyclerView;->createLayoutManager(Landroid/content/Context;Ljava/lang/String;Landroid/util/AttributeSet;II)V
  406. sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
  407. const/16 v2, 0x15
  408. if-lt v1, v2, :cond_6
  409. sget-object v1, Landroid/support/v7/widget/RecyclerView;->NESTED_SCROLLING_ATTRS:[I
  410. invoke-virtual {p1, p2, v1, p3, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
  411. move-result-object p1
  412. invoke-virtual {p1, v0, v3}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
  413. move-result p2
  414. invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
  415. move v3, p2
  416. goto :goto_3
  417. :cond_5
  418. invoke-virtual {p0, v1}, Landroid/view/ViewGroup;->setDescendantFocusability(I)V
  419. :cond_6
  420. :goto_3
  421. invoke-virtual {p0, v3}, Landroid/support/v7/widget/RecyclerView;->setNestedScrollingEnabled(Z)V
  422. return-void
  423. .end method
  424. .method static synthetic access$100(Landroid/support/v7/widget/RecyclerView;)Z
  425. .locals 0
  426. iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
  427. return p0
  428. .end method
  429. .method static synthetic access$1000(Landroid/support/v7/widget/RecyclerView;)V
  430. .locals 0
  431. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->postAnimationRunner()V
  432. return-void
  433. .end method
  434. .method static synthetic access$1100(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;)V
  435. .locals 0
  436. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchChildAttached(Landroid/view/View;)V
  437. return-void
  438. .end method
  439. .method static synthetic access$1200(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;)V
  440. .locals 0
  441. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchChildDetached(Landroid/view/View;)V
  442. return-void
  443. .end method
  444. .method static synthetic access$1300(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
  445. .locals 0
  446. invoke-virtual {p0, p1, p2, p3}, Landroid/view/ViewGroup;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
  447. return-void
  448. .end method
  449. .method static synthetic access$1400(Landroid/support/v7/widget/RecyclerView;I)V
  450. .locals 0
  451. invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->detachViewFromParent(I)V
  452. return-void
  453. .end method
  454. .method static synthetic access$200(Landroid/support/v7/widget/RecyclerView;)Z
  455. .locals 0
  456. iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  457. return p0
  458. .end method
  459. .method static synthetic access$3000()Landroid/view/animation/Interpolator;
  460. .locals 1
  461. sget-object v0, Landroid/support/v7/widget/RecyclerView;->sQuinticInterpolator:Landroid/view/animation/Interpolator;
  462. return-object v0
  463. .end method
  464. .method static synthetic access$302(Landroid/support/v7/widget/RecyclerView;Z)Z
  465. .locals 0
  466. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  467. return p1
  468. .end method
  469. .method static synthetic access$3100(Landroid/support/v7/widget/RecyclerView;)Landroid/support/v7/widget/RecyclerView$Adapter;
  470. .locals 0
  471. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  472. return-object p0
  473. .end method
  474. .method static synthetic access$3200(Landroid/support/v7/widget/RecyclerView;)V
  475. .locals 0
  476. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
  477. return-void
  478. .end method
  479. .method static synthetic access$3300(Landroid/support/v7/widget/RecyclerView;)V
  480. .locals 0
  481. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->repositionShadowingViews()V
  482. return-void
  483. .end method
  484. .method static synthetic access$3400(Landroid/support/v7/widget/RecyclerView;)V
  485. .locals 0
  486. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
  487. return-void
  488. .end method
  489. .method static synthetic access$3600(Landroid/support/v7/widget/RecyclerView;)Ljava/util/ArrayList;
  490. .locals 0
  491. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  492. return-object p0
  493. .end method
  494. .method static synthetic access$3700(Landroid/support/v7/widget/RecyclerView;II)V
  495. .locals 0
  496. invoke-direct {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->considerReleasingGlowsOnScroll(II)V
  497. return-void
  498. .end method
  499. .method static synthetic access$3800(Landroid/support/v7/widget/RecyclerView;)Z
  500. .locals 0
  501. invoke-virtual {p0}, Landroid/view/ViewGroup;->awakenScrollBars()Z
  502. move-result p0
  503. return p0
  504. .end method
  505. .method static synthetic access$3900(Landroid/support/v7/widget/RecyclerView;I)V
  506. .locals 0
  507. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
  508. return-void
  509. .end method
  510. .method static synthetic access$400(Landroid/support/v7/widget/RecyclerView;)V
  511. .locals 0
  512. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->consumePendingUpdateOperations()V
  513. return-void
  514. .end method
  515. .method static synthetic access$4000(Landroid/support/v7/widget/RecyclerView;)V
  516. .locals 0
  517. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->setDataSetChangedAfterLayout()V
  518. return-void
  519. .end method
  520. .method static synthetic access$4100(Landroid/support/v7/widget/RecyclerView;)Z
  521. .locals 0
  522. iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mPostUpdatesOnAnimation:Z
  523. return p0
  524. .end method
  525. .method static synthetic access$4200(Landroid/support/v7/widget/RecyclerView;)Z
  526. .locals 0
  527. iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mHasFixedSize:Z
  528. return p0
  529. .end method
  530. .method static synthetic access$4300(Landroid/support/v7/widget/RecyclerView;)Ljava/lang/Runnable;
  531. .locals 0
  532. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mUpdateChildViewsRunnable:Ljava/lang/Runnable;
  533. return-object p0
  534. .end method
  535. .method static synthetic access$4402(Landroid/support/v7/widget/RecyclerView;Z)Z
  536. .locals 0
  537. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z
  538. return p1
  539. .end method
  540. .method static synthetic access$4500()Z
  541. .locals 1
  542. sget-boolean v0, Landroid/support/v7/widget/RecyclerView;->FORCE_INVALIDATE_DISPLAY_LIST:Z
  543. return v0
  544. .end method
  545. .method static synthetic access$4600(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
  546. .locals 0
  547. 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
  548. return-void
  549. .end method
  550. .method static synthetic access$4700(Landroid/support/v7/widget/RecyclerView;)Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
  551. .locals 0
  552. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
  553. return-object p0
  554. .end method
  555. .method static synthetic access$5100(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
  556. .locals 0
  557. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->canReuseUpdatedViewHolder(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
  558. move-result p0
  559. return p0
  560. .end method
  561. .method static synthetic access$5200(Landroid/support/v7/widget/RecyclerView;)Landroid/support/v7/widget/RecyclerView$RecyclerListener;
  562. .locals 0
  563. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mRecyclerListener:Landroid/support/v7/widget/RecyclerView$RecyclerListener;
  564. return-object p0
  565. .end method
  566. .method static synthetic access$5300(Landroid/support/v7/widget/RecyclerView;)Landroid/graphics/Rect;
  567. .locals 0
  568. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  569. return-object p0
  570. .end method
  571. .method static synthetic access$5400(Landroid/support/v7/widget/RecyclerView;)Z
  572. .locals 0
  573. iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  574. return p0
  575. .end method
  576. .method static synthetic access$5500(Landroid/support/v7/widget/RecyclerView;)Landroid/graphics/RectF;
  577. .locals 0
  578. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRectF:Landroid/graphics/RectF;
  579. return-object p0
  580. .end method
  581. .method static synthetic access$5600(Landroid/support/v7/widget/RecyclerView;II)V
  582. .locals 0
  583. invoke-virtual {p0, p1, p2}, Landroid/view/ViewGroup;->setMeasuredDimension(II)V
  584. return-void
  585. .end method
  586. .method static synthetic access$5700(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
  587. .locals 0
  588. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->getAdapterPositionFor(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
  589. move-result p0
  590. return p0
  591. .end method
  592. .method static synthetic access$5900(Landroid/support/v7/widget/RecyclerView;)Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  593. .locals 0
  594. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  595. return-object p0
  596. .end method
  597. .method static synthetic access$602(Landroid/support/v7/widget/RecyclerView;Z)Z
  598. .locals 0
  599. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
  600. return p1
  601. .end method
  602. .method static synthetic access$6200(Landroid/support/v7/widget/RecyclerView;I)V
  603. .locals 0
  604. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->jumpToPositionForSmoothScroller(I)V
  605. return-void
  606. .end method
  607. .method static synthetic access$6400(Landroid/support/v7/widget/RecyclerView;Landroid/view/View;)Z
  608. .locals 0
  609. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->removeAnimatingView(Landroid/view/View;)Z
  610. move-result p0
  611. return p0
  612. .end method
  613. .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
  614. .locals 0
  615. 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
  616. return-void
  617. .end method
  618. .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
  619. .locals 0
  620. 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
  621. return-void
  622. .end method
  623. .method static synthetic access$900(Landroid/support/v7/widget/RecyclerView;)Z
  624. .locals 0
  625. iget-boolean p0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  626. return p0
  627. .end method
  628. .method private addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  629. .locals 5
  630. iget-object v0, p1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  631. invoke-virtual {v0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
  632. move-result-object v1
  633. const/4 v2, 0x1
  634. if-ne v1, p0, :cond_0
  635. const/4 v1, 0x1
  636. goto :goto_0
  637. :cond_0
  638. const/4 v1, 0x0
  639. :goto_0
  640. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  641. invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  642. move-result-object v4
  643. invoke-virtual {v3, v4}, Landroid/support/v7/widget/RecyclerView$Recycler;->unscrapView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  644. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isTmpDetached()Z
  645. move-result p1
  646. if-eqz p1, :cond_1
  647. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  648. const/4 v1, -0x1
  649. invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
  650. move-result-object v3
  651. invoke-virtual {p1, v0, v1, v3, v2}, Landroid/support/v7/widget/ChildHelper;->attachViewToParent(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)V
  652. goto :goto_1
  653. :cond_1
  654. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  655. if-nez v1, :cond_2
  656. invoke-virtual {p1, v0, v2}, Landroid/support/v7/widget/ChildHelper;->addView(Landroid/view/View;Z)V
  657. goto :goto_1
  658. :cond_2
  659. invoke-virtual {p1, v0}, Landroid/support/v7/widget/ChildHelper;->hide(Landroid/view/View;)V
  660. :goto_1
  661. return-void
  662. .end method
  663. .method private animateAppearance(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
  664. .locals 1
  665. .param p1 # Landroid/support/v7/widget/RecyclerView$ViewHolder;
  666. .annotation build Landroid/support/annotation/NonNull;
  667. .end annotation
  668. .end param
  669. .param p2 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
  670. .annotation build Landroid/support/annotation/Nullable;
  671. .end annotation
  672. .end param
  673. .param p3 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
  674. .annotation build Landroid/support/annotation/NonNull;
  675. .end annotation
  676. .end param
  677. const/4 v0, 0x0
  678. invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V
  679. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  680. 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
  681. move-result p1
  682. if-eqz p1, :cond_0
  683. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->postAnimationRunner()V
  684. :cond_0
  685. return-void
  686. .end method
  687. .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
  688. .locals 1
  689. .param p1 # Landroid/support/v7/widget/RecyclerView$ViewHolder;
  690. .annotation build Landroid/support/annotation/NonNull;
  691. .end annotation
  692. .end param
  693. .param p2 # Landroid/support/v7/widget/RecyclerView$ViewHolder;
  694. .annotation build Landroid/support/annotation/NonNull;
  695. .end annotation
  696. .end param
  697. .param p3 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
  698. .annotation build Landroid/support/annotation/NonNull;
  699. .end annotation
  700. .end param
  701. .param p4 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
  702. .annotation build Landroid/support/annotation/NonNull;
  703. .end annotation
  704. .end param
  705. const/4 v0, 0x0
  706. invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V
  707. if-eqz p5, :cond_0
  708. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  709. :cond_0
  710. if-eq p1, p2, :cond_2
  711. if-eqz p6, :cond_1
  712. invoke-direct {p0, p2}, Landroid/support/v7/widget/RecyclerView;->addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  713. :cond_1
  714. iput-object p2, p1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mShadowedHolder:Landroid/support/v7/widget/RecyclerView$ViewHolder;
  715. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  716. iget-object p5, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  717. invoke-virtual {p5, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->unscrapView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  718. invoke-virtual {p2, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V
  719. iput-object p1, p2, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroid/support/v7/widget/RecyclerView$ViewHolder;
  720. :cond_2
  721. iget-object p5, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  722. 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
  723. move-result p1
  724. if-eqz p1, :cond_3
  725. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->postAnimationRunner()V
  726. :cond_3
  727. return-void
  728. .end method
  729. .method private animateDisappearance(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
  730. .locals 1
  731. .param p1 # Landroid/support/v7/widget/RecyclerView$ViewHolder;
  732. .annotation build Landroid/support/annotation/NonNull;
  733. .end annotation
  734. .end param
  735. .param p2 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
  736. .annotation build Landroid/support/annotation/NonNull;
  737. .end annotation
  738. .end param
  739. .param p3 # Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
  740. .annotation build Landroid/support/annotation/Nullable;
  741. .end annotation
  742. .end param
  743. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->addAnimatingView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  744. const/4 v0, 0x0
  745. invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setIsRecyclable(Z)V
  746. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  747. 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
  748. move-result p1
  749. if-eqz p1, :cond_0
  750. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->postAnimationRunner()V
  751. :cond_0
  752. return-void
  753. .end method
  754. .method private canReuseUpdatedViewHolder(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
  755. .locals 2
  756. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  757. if-eqz v0, :cond_1
  758. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List;
  759. move-result-object v1
  760. invoke-virtual {v0, p1, v1}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->canReuseUpdatedViewHolder(Landroid/support/v7/widget/RecyclerView$ViewHolder;Ljava/util/List;)Z
  761. move-result p1
  762. if-eqz p1, :cond_0
  763. goto :goto_0
  764. :cond_0
  765. const/4 p1, 0x0
  766. goto :goto_1
  767. :cond_1
  768. :goto_0
  769. const/4 p1, 0x1
  770. :goto_1
  771. return p1
  772. .end method
  773. .method private cancelTouch()V
  774. .locals 1
  775. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->resetTouch()V
  776. const/4 v0, 0x0
  777. invoke-direct {p0, v0}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
  778. return-void
  779. .end method
  780. .method private considerReleasingGlowsOnScroll(II)V
  781. .locals 2
  782. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  783. if-eqz v0, :cond_0
  784. invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
  785. move-result v0
  786. if-nez v0, :cond_0
  787. if-lez p1, :cond_0
  788. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  789. invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
  790. move-result v0
  791. goto :goto_0
  792. :cond_0
  793. const/4 v0, 0x0
  794. :goto_0
  795. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  796. if-eqz v1, :cond_1
  797. invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
  798. move-result v1
  799. if-nez v1, :cond_1
  800. if-gez p1, :cond_1
  801. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  802. invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
  803. move-result p1
  804. or-int/2addr v0, p1
  805. :cond_1
  806. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  807. if-eqz p1, :cond_2
  808. invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
  809. move-result p1
  810. if-nez p1, :cond_2
  811. if-lez p2, :cond_2
  812. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  813. invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
  814. move-result p1
  815. or-int/2addr v0, p1
  816. :cond_2
  817. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  818. if-eqz p1, :cond_3
  819. invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
  820. move-result p1
  821. if-nez p1, :cond_3
  822. if-gez p2, :cond_3
  823. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  824. invoke-virtual {p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
  825. move-result p1
  826. or-int/2addr v0, p1
  827. :cond_3
  828. if-eqz v0, :cond_4
  829. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
  830. :cond_4
  831. return-void
  832. .end method
  833. .method private consumePendingUpdateOperations()V
  834. .locals 3
  835. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
  836. const-string v1, "RV FullInvalidate"
  837. if-eqz v0, :cond_6
  838. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  839. if-eqz v0, :cond_0
  840. goto :goto_2
  841. :cond_0
  842. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  843. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->hasPendingUpdates()Z
  844. move-result v0
  845. if-nez v0, :cond_1
  846. return-void
  847. :cond_1
  848. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  849. const/4 v2, 0x4
  850. invoke-virtual {v0, v2}, Landroid/support/v7/widget/AdapterHelper;->hasAnyUpdateTypes(I)Z
  851. move-result v0
  852. if-eqz v0, :cond_4
  853. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  854. const/16 v2, 0xb
  855. invoke-virtual {v0, v2}, Landroid/support/v7/widget/AdapterHelper;->hasAnyUpdateTypes(I)Z
  856. move-result v0
  857. if-nez v0, :cond_4
  858. const-string v0, "RV PartialInvalidate"
  859. invoke-static {v0}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
  860. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  861. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  862. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->preProcess()V
  863. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  864. if-nez v0, :cond_3
  865. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->hasUpdatedView()Z
  866. move-result v0
  867. if-eqz v0, :cond_2
  868. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
  869. goto :goto_0
  870. :cond_2
  871. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  872. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->consumePostponedUpdates()V
  873. :cond_3
  874. :goto_0
  875. const/4 v0, 0x1
  876. invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  877. goto :goto_1
  878. :cond_4
  879. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  880. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->hasPendingUpdates()Z
  881. move-result v0
  882. if-eqz v0, :cond_5
  883. invoke-static {v1}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
  884. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
  885. :goto_1
  886. invoke-static {}, Landroid/support/v4/os/TraceCompat;->endSection()V
  887. :cond_5
  888. return-void
  889. :cond_6
  890. :goto_2
  891. invoke-static {v1}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
  892. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
  893. invoke-static {}, Landroid/support/v4/os/TraceCompat;->endSection()V
  894. return-void
  895. .end method
  896. .method private createLayoutManager(Landroid/content/Context;Ljava/lang/String;Landroid/util/AttributeSet;II)V
  897. .locals 7
  898. const-string v0, ": Could not instantiate the LayoutManager: "
  899. if-eqz p2, :cond_1
  900. invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;
  901. move-result-object p2
  902. invoke-virtual {p2}, Ljava/lang/String;->length()I
  903. move-result v1
  904. if-eqz v1, :cond_1
  905. invoke-direct {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->getFullClassName(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
  906. move-result-object p2
  907. :try_start_0
  908. invoke-virtual {p0}, Landroid/view/ViewGroup;->isInEditMode()Z
  909. move-result v1
  910. if-eqz v1, :cond_0
  911. invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
  912. move-result-object v1
  913. invoke-virtual {v1}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
  914. move-result-object v1
  915. goto :goto_0
  916. :cond_0
  917. invoke-virtual {p1}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
  918. move-result-object v1
  919. :goto_0
  920. invoke-virtual {v1, p2}, Ljava/lang/ClassLoader;->loadClass(Ljava/lang/String;)Ljava/lang/Class;
  921. move-result-object v1
  922. const-class v2, Landroid/support/v7/widget/RecyclerView$LayoutManager;
  923. invoke-virtual {v1, v2}, Ljava/lang/Class;->asSubclass(Ljava/lang/Class;)Ljava/lang/Class;
  924. move-result-object v1
  925. :try_end_0
  926. .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_6
  927. .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_0 .. :try_end_0} :catch_5
  928. .catch Ljava/lang/InstantiationException; {:try_start_0 .. :try_end_0} :catch_4
  929. .catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_3
  930. .catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_2
  931. const/4 v2, 0x0
  932. const/4 v3, 0x1
  933. const/4 v4, 0x0
  934. :try_start_1
  935. sget-object v5, Landroid/support/v7/widget/RecyclerView;->LAYOUT_MANAGER_CONSTRUCTOR_SIGNATURE:[Ljava/lang/Class;
  936. invoke-virtual {v1, v5}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
  937. move-result-object v5
  938. const/4 v6, 0x4
  939. new-array v6, v6, [Ljava/lang/Object;
  940. aput-object p1, v6, v4
  941. aput-object p3, v6, v3
  942. const/4 p1, 0x2
  943. invoke-static {p4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
  944. move-result-object p4
  945. aput-object p4, v6, p1
  946. const/4 p1, 0x3
  947. invoke-static {p5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
  948. move-result-object p4
  949. aput-object p4, v6, p1
  950. :try_end_1
  951. .catch Ljava/lang/NoSuchMethodException; {:try_start_1 .. :try_end_1} :catch_0
  952. .catch Ljava/lang/ClassNotFoundException; {:try_start_1 .. :try_end_1} :catch_6
  953. .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_1 .. :try_end_1} :catch_5
  954. .catch Ljava/lang/InstantiationException; {:try_start_1 .. :try_end_1} :catch_4
  955. .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_3
  956. .catch Ljava/lang/ClassCastException; {:try_start_1 .. :try_end_1} :catch_2
  957. move-object v2, v6
  958. goto :goto_1
  959. :catch_0
  960. move-exception p1
  961. :try_start_2
  962. new-array p4, v4, [Ljava/lang/Class;
  963. invoke-virtual {v1, p4}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
  964. move-result-object v5
  965. :try_end_2
  966. .catch Ljava/lang/NoSuchMethodException; {:try_start_2 .. :try_end_2} :catch_1
  967. .catch Ljava/lang/ClassNotFoundException; {:try_start_2 .. :try_end_2} :catch_6
  968. .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_2 .. :try_end_2} :catch_5
  969. .catch Ljava/lang/InstantiationException; {:try_start_2 .. :try_end_2} :catch_4
  970. .catch Ljava/lang/IllegalAccessException; {:try_start_2 .. :try_end_2} :catch_3
  971. .catch Ljava/lang/ClassCastException; {:try_start_2 .. :try_end_2} :catch_2
  972. :goto_1
  973. :try_start_3
  974. invoke-virtual {v5, v3}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
  975. invoke-virtual {v5, v2}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
  976. move-result-object p1
  977. check-cast p1, Landroid/support/v7/widget/RecyclerView$LayoutManager;
  978. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->setLayoutManager(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V
  979. goto/16 :goto_2
  980. :catch_1
  981. move-exception p4
  982. invoke-virtual {p4, p1}, Ljava/lang/NoSuchMethodException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
  983. new-instance p1, Ljava/lang/IllegalStateException;
  984. new-instance p5, Ljava/lang/StringBuilder;
  985. invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
  986. invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
  987. move-result-object v1
  988. invoke-virtual {p5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  989. const-string v1, ": Error creating LayoutManager "
  990. invoke-virtual {p5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  991. invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  992. invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  993. move-result-object p5
  994. invoke-direct {p1, p5, p4}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
  995. throw p1
  996. :try_end_3
  997. .catch Ljava/lang/ClassNotFoundException; {:try_start_3 .. :try_end_3} :catch_6
  998. .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_3 .. :try_end_3} :catch_5
  999. .catch Ljava/lang/InstantiationException; {:try_start_3 .. :try_end_3} :catch_4
  1000. .catch Ljava/lang/IllegalAccessException; {:try_start_3 .. :try_end_3} :catch_3
  1001. .catch Ljava/lang/ClassCastException; {:try_start_3 .. :try_end_3} :catch_2
  1002. :catch_2
  1003. move-exception p1
  1004. new-instance p4, Ljava/lang/IllegalStateException;
  1005. new-instance p5, Ljava/lang/StringBuilder;
  1006. invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
  1007. invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
  1008. move-result-object p3
  1009. invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1010. const-string p3, ": Class is not a LayoutManager "
  1011. invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1012. invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1013. invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1014. move-result-object p2
  1015. invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
  1016. throw p4
  1017. :catch_3
  1018. move-exception p1
  1019. new-instance p4, Ljava/lang/IllegalStateException;
  1020. new-instance p5, Ljava/lang/StringBuilder;
  1021. invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
  1022. invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
  1023. move-result-object p3
  1024. invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1025. const-string p3, ": Cannot access non-public constructor "
  1026. invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1027. invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1028. invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1029. move-result-object p2
  1030. invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
  1031. throw p4
  1032. :catch_4
  1033. move-exception p1
  1034. new-instance p4, Ljava/lang/IllegalStateException;
  1035. new-instance p5, Ljava/lang/StringBuilder;
  1036. invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
  1037. invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
  1038. move-result-object p3
  1039. invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1040. invoke-virtual {p5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1041. invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1042. invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1043. move-result-object p2
  1044. invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
  1045. throw p4
  1046. :catch_5
  1047. move-exception p1
  1048. new-instance p4, Ljava/lang/IllegalStateException;
  1049. new-instance p5, Ljava/lang/StringBuilder;
  1050. invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
  1051. invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
  1052. move-result-object p3
  1053. invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1054. invoke-virtual {p5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1055. invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1056. invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1057. move-result-object p2
  1058. invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
  1059. throw p4
  1060. :catch_6
  1061. move-exception p1
  1062. new-instance p4, Ljava/lang/IllegalStateException;
  1063. new-instance p5, Ljava/lang/StringBuilder;
  1064. invoke-direct {p5}, Ljava/lang/StringBuilder;-><init>()V
  1065. invoke-interface {p3}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String;
  1066. move-result-object p3
  1067. invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1068. const-string p3, ": Unable to find LayoutManager "
  1069. invoke-virtual {p5, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1070. invoke-virtual {p5, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1071. invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1072. move-result-object p2
  1073. invoke-direct {p4, p2, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
  1074. throw p4
  1075. :cond_1
  1076. :goto_2
  1077. return-void
  1078. .end method
  1079. .method private didChildRangeChange(II)Z
  1080. .locals 4
  1081. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1082. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  1083. move-result v0
  1084. const/4 v1, 0x1
  1085. const/4 v2, 0x0
  1086. if-nez v0, :cond_2
  1087. if-nez p1, :cond_1
  1088. if-eqz p2, :cond_0
  1089. goto :goto_0
  1090. :cond_0
  1091. const/4 v1, 0x0
  1092. :cond_1
  1093. :goto_0
  1094. return v1
  1095. :cond_2
  1096. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
  1097. invoke-direct {p0, v0}, Landroid/support/v7/widget/RecyclerView;->findMinMaxChildLayoutPositions([I)V
  1098. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
  1099. aget v3, v0, v2
  1100. if-ne v3, p1, :cond_4
  1101. aget p1, v0, v1
  1102. if-eq p1, p2, :cond_3
  1103. goto :goto_1
  1104. :cond_3
  1105. const/4 v1, 0x0
  1106. :cond_4
  1107. :goto_1
  1108. return v1
  1109. .end method
  1110. .method private dispatchChildAttached(Landroid/view/View;)V
  1111. .locals 2
  1112. invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1113. move-result-object v0
  1114. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onChildAttachedToWindow(Landroid/view/View;)V
  1115. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  1116. if-eqz v1, :cond_0
  1117. if-eqz v0, :cond_0
  1118. invoke-virtual {v1, v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->onViewAttachedToWindow(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  1119. :cond_0
  1120. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  1121. if-eqz v0, :cond_1
  1122. invoke-interface {v0}, Ljava/util/List;->size()I
  1123. move-result v0
  1124. add-int/lit8 v0, v0, -0x1
  1125. :goto_0
  1126. if-ltz v0, :cond_1
  1127. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  1128. invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
  1129. move-result-object v1
  1130. check-cast v1, Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;
  1131. invoke-interface {v1, p1}, Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;->onChildViewAttachedToWindow(Landroid/view/View;)V
  1132. add-int/lit8 v0, v0, -0x1
  1133. goto :goto_0
  1134. :cond_1
  1135. return-void
  1136. .end method
  1137. .method private dispatchChildDetached(Landroid/view/View;)V
  1138. .locals 2
  1139. invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1140. move-result-object v0
  1141. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onChildDetachedFromWindow(Landroid/view/View;)V
  1142. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  1143. if-eqz v1, :cond_0
  1144. if-eqz v0, :cond_0
  1145. invoke-virtual {v1, v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->onViewDetachedFromWindow(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  1146. :cond_0
  1147. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  1148. if-eqz v0, :cond_1
  1149. invoke-interface {v0}, Ljava/util/List;->size()I
  1150. move-result v0
  1151. add-int/lit8 v0, v0, -0x1
  1152. :goto_0
  1153. if-ltz v0, :cond_1
  1154. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  1155. invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
  1156. move-result-object v1
  1157. check-cast v1, Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;
  1158. invoke-interface {v1, p1}, Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;->onChildViewDetachedFromWindow(Landroid/view/View;)V
  1159. add-int/lit8 v0, v0, -0x1
  1160. goto :goto_0
  1161. :cond_1
  1162. return-void
  1163. .end method
  1164. .method private dispatchContentChangedIfNecessary()V
  1165. .locals 3
  1166. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I
  1167. const/4 v1, 0x0
  1168. iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I
  1169. if-eqz v0, :cond_0
  1170. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isAccessibilityEnabled()Z
  1171. move-result v1
  1172. if-eqz v1, :cond_0
  1173. invoke-static {}, Landroid/view/accessibility/AccessibilityEvent;->obtain()Landroid/view/accessibility/AccessibilityEvent;
  1174. move-result-object v1
  1175. const/16 v2, 0x800
  1176. invoke-virtual {v1, v2}, Landroid/view/accessibility/AccessibilityEvent;->setEventType(I)V
  1177. invoke-static {v1, v0}, Landroid/support/v4/view/accessibility/AccessibilityEventCompat;->setContentChangeTypes(Landroid/view/accessibility/AccessibilityEvent;I)V
  1178. invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V
  1179. :cond_0
  1180. return-void
  1181. .end method
  1182. .method private dispatchLayoutStep1()V
  1183. .locals 8
  1184. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1185. const/4 v1, 0x1
  1186. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->assertLayoutStep(I)V
  1187. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1188. const/4 v2, 0x0
  1189. invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2202(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1190. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  1191. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1192. invoke-virtual {v0}, Landroid/support/v7/widget/ViewInfoStore;->clear()V
  1193. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
  1194. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->saveFocusInfo()V
  1195. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->processAdapterUpdatesAndSetAnimationFlags()V
  1196. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1197. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
  1198. move-result v3
  1199. if-eqz v3, :cond_0
  1200. iget-boolean v3, p0, Landroid/support/v7/widget/RecyclerView;->mItemsChanged:Z
  1201. if-eqz v3, :cond_0
  1202. goto :goto_0
  1203. :cond_0
  1204. const/4 v1, 0x0
  1205. :goto_0
  1206. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2702(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1207. iput-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemsChanged:Z
  1208. iput-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemsAddedOrRemoved:Z
  1209. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1210. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2300(Landroid/support/v7/widget/RecyclerView$State;)Z
  1211. move-result v1
  1212. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1213. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1214. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  1215. invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$Adapter;->getItemCount()I
  1216. move-result v1
  1217. iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
  1218. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
  1219. invoke-direct {p0, v0}, Landroid/support/v7/widget/RecyclerView;->findMinMaxChildLayoutPositions([I)V
  1220. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1221. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
  1222. move-result v0
  1223. if-eqz v0, :cond_3
  1224. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1225. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  1226. move-result v0
  1227. const/4 v1, 0x0
  1228. :goto_1
  1229. if-ge v1, v0, :cond_3
  1230. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1231. invoke-virtual {v3, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  1232. move-result-object v3
  1233. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1234. move-result-object v3
  1235. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  1236. move-result v4
  1237. if-nez v4, :cond_2
  1238. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isInvalid()Z
  1239. move-result v4
  1240. if-eqz v4, :cond_1
  1241. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  1242. invoke-virtual {v4}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
  1243. move-result v4
  1244. if-nez v4, :cond_1
  1245. goto :goto_2
  1246. :cond_1
  1247. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  1248. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1249. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->buildAdapterChangeFlagsForAnimations(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
  1250. move-result v6
  1251. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List;
  1252. move-result-object v7
  1253. 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;
  1254. move-result-object v4
  1255. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1256. 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
  1257. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1258. invoke-static {v4}, Landroid/support/v7/widget/RecyclerView$State;->access$2700(Landroid/support/v7/widget/RecyclerView$State;)Z
  1259. move-result v4
  1260. if-eqz v4, :cond_2
  1261. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isUpdated()Z
  1262. move-result v4
  1263. if-eqz v4, :cond_2
  1264. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
  1265. move-result v4
  1266. if-nez v4, :cond_2
  1267. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  1268. move-result v4
  1269. if-nez v4, :cond_2
  1270. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isInvalid()Z
  1271. move-result v4
  1272. if-nez v4, :cond_2
  1273. invoke-virtual {p0, v3}, Landroid/support/v7/widget/RecyclerView;->getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
  1274. move-result-wide v4
  1275. iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1276. invoke-virtual {v6, v4, v5, v3}, Landroid/support/v7/widget/ViewInfoStore;->addToOldChangeHolders(JLandroid/support/v7/widget/RecyclerView$ViewHolder;)V
  1277. :cond_2
  1278. :goto_2
  1279. add-int/lit8 v1, v1, 0x1
  1280. goto :goto_1
  1281. :cond_3
  1282. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1283. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2300(Landroid/support/v7/widget/RecyclerView$State;)Z
  1284. move-result v0
  1285. if-eqz v0, :cond_8
  1286. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->saveOldPositions()V
  1287. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1288. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$1800(Landroid/support/v7/widget/RecyclerView$State;)Z
  1289. move-result v0
  1290. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1291. invoke-static {v1, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1292. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  1293. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  1294. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1295. 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
  1296. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1297. invoke-static {v1, v0}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1298. const/4 v0, 0x0
  1299. :goto_3
  1300. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1301. invoke-virtual {v1}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  1302. move-result v1
  1303. if-ge v0, v1, :cond_8
  1304. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1305. invoke-virtual {v1, v0}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  1306. move-result-object v1
  1307. invoke-static {v1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1308. move-result-object v1
  1309. invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  1310. move-result v3
  1311. if-eqz v3, :cond_4
  1312. goto :goto_4
  1313. :cond_4
  1314. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1315. invoke-virtual {v3, v1}, Landroid/support/v7/widget/ViewInfoStore;->isInPreLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
  1316. move-result v3
  1317. if-nez v3, :cond_7
  1318. invoke-static {v1}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->buildAdapterChangeFlagsForAnimations(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
  1319. move-result v3
  1320. const/16 v4, 0x2000
  1321. invoke-virtual {v1, v4}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->hasAnyOfTheFlags(I)Z
  1322. move-result v4
  1323. if-nez v4, :cond_5
  1324. or-int/lit16 v3, v3, 0x1000
  1325. :cond_5
  1326. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  1327. iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1328. invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getUnmodifiedPayloads()Ljava/util/List;
  1329. move-result-object v7
  1330. 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;
  1331. move-result-object v3
  1332. if-eqz v4, :cond_6
  1333. 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
  1334. goto :goto_4
  1335. :cond_6
  1336. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1337. 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
  1338. :cond_7
  1339. :goto_4
  1340. add-int/lit8 v0, v0, 0x1
  1341. goto :goto_3
  1342. :cond_8
  1343. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->clearOldPositions()V
  1344. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
  1345. invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  1346. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1347. const/4 v1, 0x2
  1348. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2102(Landroid/support/v7/widget/RecyclerView$State;I)I
  1349. return-void
  1350. .end method
  1351. .method private dispatchLayoutStep2()V
  1352. .locals 4
  1353. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  1354. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
  1355. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1356. const/4 v1, 0x6
  1357. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->assertLayoutStep(I)V
  1358. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  1359. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->consumeUpdatesInOnePass()V
  1360. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1361. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  1362. invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$Adapter;->getItemCount()I
  1363. move-result v1
  1364. iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
  1365. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1366. const/4 v1, 0x0
  1367. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$1702(Landroid/support/v7/widget/RecyclerView$State;I)I
  1368. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1369. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1370. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  1371. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  1372. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1373. 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
  1374. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1375. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1376. const/4 v0, 0x0
  1377. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
  1378. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1379. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
  1380. move-result v2
  1381. if-eqz v2, :cond_0
  1382. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  1383. if-eqz v2, :cond_0
  1384. const/4 v2, 0x1
  1385. goto :goto_0
  1386. :cond_0
  1387. const/4 v2, 0x0
  1388. :goto_0
  1389. invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2502(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1390. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1391. const/4 v2, 0x4
  1392. invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2102(Landroid/support/v7/widget/RecyclerView$State;I)I
  1393. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
  1394. invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  1395. return-void
  1396. .end method
  1397. .method private dispatchLayoutStep3()V
  1398. .locals 11
  1399. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1400. const/4 v1, 0x4
  1401. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->assertLayoutStep(I)V
  1402. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  1403. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
  1404. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1405. const/4 v1, 0x1
  1406. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2102(Landroid/support/v7/widget/RecyclerView$State;I)I
  1407. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1408. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
  1409. move-result v0
  1410. if-eqz v0, :cond_5
  1411. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1412. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  1413. move-result v0
  1414. sub-int/2addr v0, v1
  1415. :goto_0
  1416. if-ltz v0, :cond_4
  1417. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1418. invoke-virtual {v2, v0}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  1419. move-result-object v2
  1420. invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1421. move-result-object v5
  1422. invoke-virtual {v5}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  1423. move-result v2
  1424. if-eqz v2, :cond_0
  1425. goto :goto_2
  1426. :cond_0
  1427. invoke-virtual {p0, v5}, Landroid/support/v7/widget/RecyclerView;->getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
  1428. move-result-wide v2
  1429. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  1430. iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1431. 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;
  1432. move-result-object v4
  1433. iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1434. invoke-virtual {v6, v2, v3}, Landroid/support/v7/widget/ViewInfoStore;->getFromOldChangeHolders(J)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1435. move-result-object v6
  1436. if-eqz v6, :cond_3
  1437. invoke-virtual {v6}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  1438. move-result v7
  1439. if-nez v7, :cond_3
  1440. iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1441. invoke-virtual {v7, v6}, Landroid/support/v7/widget/ViewInfoStore;->isDisappearing(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
  1442. move-result v8
  1443. iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1444. invoke-virtual {v7, v5}, Landroid/support/v7/widget/ViewInfoStore;->isDisappearing(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Z
  1445. move-result v9
  1446. if-eqz v8, :cond_1
  1447. if-ne v6, v5, :cond_1
  1448. goto :goto_1
  1449. :cond_1
  1450. iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1451. invoke-virtual {v7, v6}, Landroid/support/v7/widget/ViewInfoStore;->popFromPreLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
  1452. move-result-object v7
  1453. iget-object v10, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1454. 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
  1455. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1456. invoke-virtual {v4, v5}, Landroid/support/v7/widget/ViewInfoStore;->popFromPostLayout(Landroid/support/v7/widget/RecyclerView$ViewHolder;)Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;
  1457. move-result-object v10
  1458. if-nez v7, :cond_2
  1459. 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
  1460. goto :goto_2
  1461. :cond_2
  1462. move-object v3, p0
  1463. move-object v4, v6
  1464. move-object v6, v7
  1465. move-object v7, v10
  1466. 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
  1467. goto :goto_2
  1468. :cond_3
  1469. :goto_1
  1470. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1471. 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
  1472. :goto_2
  1473. add-int/lit8 v0, v0, -0x1
  1474. goto :goto_0
  1475. :cond_4
  1476. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1477. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoProcessCallback:Landroid/support/v7/widget/ViewInfoStore$ProcessCallback;
  1478. invoke-virtual {v0, v2}, Landroid/support/v7/widget/ViewInfoStore;->process(Landroid/support/v7/widget/ViewInfoStore$ProcessCallback;)V
  1479. :cond_5
  1480. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  1481. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  1482. invoke-virtual {v0, v2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->removeAndRecycleScrapInt(Landroid/support/v7/widget/RecyclerView$Recycler;)V
  1483. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1484. iget v2, v0, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
  1485. invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2802(Landroid/support/v7/widget/RecyclerView$State;I)I
  1486. const/4 v0, 0x0
  1487. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  1488. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1489. invoke-static {v2, v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2502(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1490. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1491. invoke-static {v2, v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2302(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  1492. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  1493. invoke-static {v2, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->access$2602(Landroid/support/v7/widget/RecyclerView$LayoutManager;Z)Z
  1494. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  1495. invoke-static {v2}, Landroid/support/v7/widget/RecyclerView$Recycler;->access$2900(Landroid/support/v7/widget/RecyclerView$Recycler;)Ljava/util/ArrayList;
  1496. move-result-object v2
  1497. if-eqz v2, :cond_6
  1498. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  1499. invoke-static {v2}, Landroid/support/v7/widget/RecyclerView$Recycler;->access$2900(Landroid/support/v7/widget/RecyclerView$Recycler;)Ljava/util/ArrayList;
  1500. move-result-object v2
  1501. invoke-virtual {v2}, Ljava/util/ArrayList;->clear()V
  1502. :cond_6
  1503. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  1504. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  1505. invoke-virtual {v2, v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onLayoutCompleted(Landroid/support/v7/widget/RecyclerView$State;)V
  1506. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
  1507. invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  1508. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  1509. invoke-virtual {v2}, Landroid/support/v7/widget/ViewInfoStore;->clear()V
  1510. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mMinMaxLayoutPositions:[I
  1511. aget v3, v2, v0
  1512. aget v1, v2, v1
  1513. invoke-direct {p0, v3, v1}, Landroid/support/v7/widget/RecyclerView;->didChildRangeChange(II)Z
  1514. move-result v1
  1515. if-eqz v1, :cond_7
  1516. invoke-virtual {p0, v0, v0}, Landroid/support/v7/widget/RecyclerView;->dispatchOnScrolled(II)V
  1517. :cond_7
  1518. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->recoverFocusFromState()V
  1519. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->resetFocusInfo()V
  1520. return-void
  1521. .end method
  1522. .method private dispatchOnItemTouch(Landroid/view/MotionEvent;)Z
  1523. .locals 6
  1524. invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I
  1525. move-result v0
  1526. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  1527. const/4 v2, 0x1
  1528. if-eqz v1, :cond_3
  1529. const/4 v3, 0x0
  1530. if-nez v0, :cond_0
  1531. iput-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  1532. goto :goto_0
  1533. :cond_0
  1534. invoke-interface {v1, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;->onTouchEvent(Landroid/support/v7/widget/RecyclerView;Landroid/view/MotionEvent;)V
  1535. const/4 p1, 0x3
  1536. if-eq v0, p1, :cond_1
  1537. if-ne v0, v2, :cond_2
  1538. :cond_1
  1539. iput-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  1540. :cond_2
  1541. return v2
  1542. :cond_3
  1543. :goto_0
  1544. const/4 v1, 0x0
  1545. if-eqz v0, :cond_5
  1546. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  1547. invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
  1548. move-result v0
  1549. const/4 v3, 0x0
  1550. :goto_1
  1551. if-ge v3, v0, :cond_5
  1552. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  1553. invoke-virtual {v4, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
  1554. move-result-object v4
  1555. check-cast v4, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  1556. invoke-interface {v4, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;->onInterceptTouchEvent(Landroid/support/v7/widget/RecyclerView;Landroid/view/MotionEvent;)Z
  1557. move-result v5
  1558. if-eqz v5, :cond_4
  1559. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  1560. return v2
  1561. :cond_4
  1562. add-int/lit8 v3, v3, 0x1
  1563. goto :goto_1
  1564. :cond_5
  1565. return v1
  1566. .end method
  1567. .method private dispatchOnItemTouchIntercept(Landroid/view/MotionEvent;)Z
  1568. .locals 7
  1569. invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I
  1570. move-result v0
  1571. const/4 v1, 0x3
  1572. if-eq v0, v1, :cond_0
  1573. if-nez v0, :cond_1
  1574. :cond_0
  1575. const/4 v2, 0x0
  1576. iput-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  1577. :cond_1
  1578. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  1579. invoke-virtual {v2}, Ljava/util/ArrayList;->size()I
  1580. move-result v2
  1581. const/4 v3, 0x0
  1582. const/4 v4, 0x0
  1583. :goto_0
  1584. if-ge v4, v2, :cond_3
  1585. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  1586. invoke-virtual {v5, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
  1587. move-result-object v5
  1588. check-cast v5, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  1589. invoke-interface {v5, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;->onInterceptTouchEvent(Landroid/support/v7/widget/RecyclerView;Landroid/view/MotionEvent;)Z
  1590. move-result v6
  1591. if-eqz v6, :cond_2
  1592. if-eq v0, v1, :cond_2
  1593. iput-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  1594. const/4 p1, 0x1
  1595. return p1
  1596. :cond_2
  1597. add-int/lit8 v4, v4, 0x1
  1598. goto :goto_0
  1599. :cond_3
  1600. return v3
  1601. .end method
  1602. .method private findMinMaxChildLayoutPositions([I)V
  1603. .locals 8
  1604. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1605. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  1606. move-result v0
  1607. const/4 v1, 0x1
  1608. const/4 v2, 0x0
  1609. if-nez v0, :cond_0
  1610. aput v2, p1, v2
  1611. aput v2, p1, v1
  1612. return-void
  1613. :cond_0
  1614. const v3, 0x7fffffff
  1615. const/high16 v4, -0x80000000
  1616. const/4 v3, 0x0
  1617. const v4, 0x7fffffff
  1618. const/high16 v5, -0x80000000
  1619. :goto_0
  1620. if-ge v3, v0, :cond_4
  1621. iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1622. invoke-virtual {v6, v3}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  1623. move-result-object v6
  1624. invoke-static {v6}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1625. move-result-object v6
  1626. invoke-virtual {v6}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  1627. move-result v7
  1628. if-eqz v7, :cond_1
  1629. goto :goto_1
  1630. :cond_1
  1631. invoke-virtual {v6}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getLayoutPosition()I
  1632. move-result v6
  1633. if-ge v6, v4, :cond_2
  1634. move v4, v6
  1635. :cond_2
  1636. if-le v6, v5, :cond_3
  1637. move v5, v6
  1638. :cond_3
  1639. :goto_1
  1640. add-int/lit8 v3, v3, 0x1
  1641. goto :goto_0
  1642. :cond_4
  1643. aput v4, p1, v2
  1644. aput v5, p1, v1
  1645. return-void
  1646. .end method
  1647. .method private getAdapterPositionFor(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
  1648. .locals 1
  1649. const/16 v0, 0x20c
  1650. invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->hasAnyOfTheFlags(I)Z
  1651. move-result v0
  1652. if-nez v0, :cond_1
  1653. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isBound()Z
  1654. move-result v0
  1655. if-nez v0, :cond_0
  1656. goto :goto_0
  1657. :cond_0
  1658. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  1659. iget p1, p1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
  1660. invoke-virtual {v0, p1}, Landroid/support/v7/widget/AdapterHelper;->applyPendingUpdatesToPosition(I)I
  1661. move-result p1
  1662. return p1
  1663. :cond_1
  1664. :goto_0
  1665. const/4 p1, -0x1
  1666. return p1
  1667. .end method
  1668. .method static getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1669. .locals 0
  1670. if-nez p0, :cond_0
  1671. const/4 p0, 0x0
  1672. return-object p0
  1673. :cond_0
  1674. invoke-virtual {p0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
  1675. move-result-object p0
  1676. check-cast p0, Landroid/support/v7/widget/RecyclerView$LayoutParams;
  1677. iget-object p0, p0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mViewHolder:Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1678. return-object p0
  1679. .end method
  1680. .method private getDeepestFocusedViewWithId(Landroid/view/View;)I
  1681. .locals 3
  1682. :goto_0
  1683. invoke-virtual {p1}, Landroid/view/View;->getId()I
  1684. move-result v0
  1685. :cond_0
  1686. invoke-virtual {p1}, Landroid/view/View;->isFocused()Z
  1687. move-result v1
  1688. if-nez v1, :cond_1
  1689. instance-of v1, p1, Landroid/view/ViewGroup;
  1690. if-eqz v1, :cond_1
  1691. invoke-virtual {p1}, Landroid/view/View;->hasFocus()Z
  1692. move-result v1
  1693. if-eqz v1, :cond_1
  1694. check-cast p1, Landroid/view/ViewGroup;
  1695. invoke-virtual {p1}, Landroid/view/ViewGroup;->getFocusedChild()Landroid/view/View;
  1696. move-result-object p1
  1697. invoke-virtual {p1}, Landroid/view/View;->getId()I
  1698. move-result v1
  1699. const/4 v2, -0x1
  1700. if-eq v1, v2, :cond_0
  1701. goto :goto_0
  1702. :cond_1
  1703. return v0
  1704. .end method
  1705. .method private getFullClassName(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
  1706. .locals 2
  1707. const/4 v0, 0x0
  1708. invoke-virtual {p2, v0}, Ljava/lang/String;->charAt(I)C
  1709. move-result v0
  1710. const/16 v1, 0x2e
  1711. if-ne v0, v1, :cond_0
  1712. new-instance v0, Ljava/lang/StringBuilder;
  1713. invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
  1714. invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
  1715. move-result-object p1
  1716. invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1717. invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1718. invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1719. move-result-object p1
  1720. return-object p1
  1721. :cond_0
  1722. const-string p1, "."
  1723. invoke-virtual {p2, p1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
  1724. move-result p1
  1725. if-eqz p1, :cond_1
  1726. return-object p2
  1727. :cond_1
  1728. new-instance p1, Ljava/lang/StringBuilder;
  1729. invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
  1730. const-class v0, Landroid/support/v7/widget/RecyclerView;
  1731. invoke-virtual {v0}, Ljava/lang/Class;->getPackage()Ljava/lang/Package;
  1732. move-result-object v0
  1733. invoke-virtual {v0}, Ljava/lang/Package;->getName()Ljava/lang/String;
  1734. move-result-object v0
  1735. invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1736. invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
  1737. invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1738. invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1739. move-result-object p1
  1740. return-object p1
  1741. .end method
  1742. .method private getScrollFactor()F
  1743. .locals 4
  1744. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollFactor:F
  1745. const/4 v1, 0x1
  1746. cmpl-float v0, v0, v1
  1747. if-nez v0, :cond_1
  1748. new-instance v0, Landroid/util/TypedValue;
  1749. invoke-direct {v0}, Landroid/util/TypedValue;-><init>()V
  1750. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  1751. move-result-object v1
  1752. invoke-virtual {v1}, Landroid/content/Context;->getTheme()Landroid/content/res/Resources$Theme;
  1753. move-result-object v1
  1754. const v2, 0x101004d
  1755. const/4 v3, 0x1
  1756. invoke-virtual {v1, v2, v0, v3}, Landroid/content/res/Resources$Theme;->resolveAttribute(ILandroid/util/TypedValue;Z)Z
  1757. move-result v1
  1758. if-eqz v1, :cond_0
  1759. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  1760. move-result-object v1
  1761. invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
  1762. move-result-object v1
  1763. invoke-virtual {v1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
  1764. move-result-object v1
  1765. invoke-virtual {v0, v1}, Landroid/util/TypedValue;->getDimension(Landroid/util/DisplayMetrics;)F
  1766. move-result v0
  1767. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollFactor:F
  1768. goto :goto_0
  1769. :cond_0
  1770. const/4 v0, 0x0
  1771. return v0
  1772. :cond_1
  1773. :goto_0
  1774. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollFactor:F
  1775. return v0
  1776. .end method
  1777. .method private getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  1778. .locals 1
  1779. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollingChildHelper:Landroid/support/v4/view/NestedScrollingChildHelper;
  1780. if-nez v0, :cond_0
  1781. new-instance v0, Landroid/support/v4/view/NestedScrollingChildHelper;
  1782. invoke-direct {v0, p0}, Landroid/support/v4/view/NestedScrollingChildHelper;-><init>(Landroid/view/View;)V
  1783. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollingChildHelper:Landroid/support/v4/view/NestedScrollingChildHelper;
  1784. :cond_0
  1785. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollingChildHelper:Landroid/support/v4/view/NestedScrollingChildHelper;
  1786. return-object v0
  1787. .end method
  1788. .method private handleMissingPreInfoForChangeError(JLandroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  1789. .locals 6
  1790. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1791. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  1792. move-result v0
  1793. const/4 v1, 0x0
  1794. :goto_0
  1795. if-ge v1, v0, :cond_3
  1796. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1797. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  1798. move-result-object v2
  1799. invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1800. move-result-object v2
  1801. if-ne v2, p3, :cond_0
  1802. goto :goto_1
  1803. :cond_0
  1804. invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
  1805. move-result-wide v3
  1806. cmp-long v5, v3, p1
  1807. if-nez v5, :cond_2
  1808. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  1809. const-string p2, " \n View Holder 2:"
  1810. if-eqz p1, :cond_1
  1811. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
  1812. move-result p1
  1813. if-eqz p1, :cond_1
  1814. new-instance p1, Ljava/lang/IllegalStateException;
  1815. new-instance p4, Ljava/lang/StringBuilder;
  1816. invoke-direct {p4}, Ljava/lang/StringBuilder;-><init>()V
  1817. 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:"
  1818. invoke-virtual {p4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1819. invoke-virtual {p4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  1820. invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1821. invoke-virtual {p4, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  1822. invoke-virtual {p4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1823. move-result-object p2
  1824. invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  1825. throw p1
  1826. :cond_1
  1827. new-instance p1, Ljava/lang/IllegalStateException;
  1828. new-instance p4, Ljava/lang/StringBuilder;
  1829. invoke-direct {p4}, Ljava/lang/StringBuilder;-><init>()V
  1830. 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:"
  1831. invoke-virtual {p4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1832. invoke-virtual {p4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  1833. invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1834. invoke-virtual {p4, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  1835. invoke-virtual {p4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1836. move-result-object p2
  1837. invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  1838. throw p1
  1839. :cond_2
  1840. :goto_1
  1841. add-int/lit8 v1, v1, 0x1
  1842. goto :goto_0
  1843. :cond_3
  1844. new-instance p1, Ljava/lang/StringBuilder;
  1845. invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
  1846. const-string p2, "Problem while matching changed view holders with the newones. The pre-layout information for the change holder "
  1847. invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1848. invoke-virtual {p1, p4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  1849. const-string p2, " cannot be found but it is necessary for "
  1850. invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  1851. invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  1852. invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  1853. move-result-object p1
  1854. const-string p2, "RecyclerView"
  1855. invoke-static {p2, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  1856. return-void
  1857. .end method
  1858. .method private hasUpdatedView()Z
  1859. .locals 5
  1860. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1861. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  1862. move-result v0
  1863. const/4 v1, 0x0
  1864. const/4 v2, 0x0
  1865. :goto_0
  1866. if-ge v2, v0, :cond_2
  1867. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1868. invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  1869. move-result-object v3
  1870. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  1871. move-result-object v3
  1872. if-eqz v3, :cond_1
  1873. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  1874. move-result v4
  1875. if-eqz v4, :cond_0
  1876. goto :goto_1
  1877. :cond_0
  1878. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isUpdated()Z
  1879. move-result v3
  1880. if-eqz v3, :cond_1
  1881. const/4 v0, 0x1
  1882. return v0
  1883. :cond_1
  1884. :goto_1
  1885. add-int/lit8 v2, v2, 0x1
  1886. goto :goto_0
  1887. :cond_2
  1888. return v1
  1889. .end method
  1890. .method private initChildrenHelper()V
  1891. .locals 2
  1892. new-instance v0, Landroid/support/v7/widget/ChildHelper;
  1893. new-instance v1, Landroid/support/v7/widget/RecyclerView$5;
  1894. invoke-direct {v1, p0}, Landroid/support/v7/widget/RecyclerView$5;-><init>(Landroid/support/v7/widget/RecyclerView;)V
  1895. invoke-direct {v0, v1}, Landroid/support/v7/widget/ChildHelper;-><init>(Landroid/support/v7/widget/ChildHelper$Callback;)V
  1896. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  1897. return-void
  1898. .end method
  1899. .method private isPreferredNextFocus(Landroid/view/View;Landroid/view/View;I)Z
  1900. .locals 4
  1901. const/4 v0, 0x0
  1902. if-eqz p2, :cond_9
  1903. if-ne p2, p0, :cond_0
  1904. goto :goto_4
  1905. :cond_0
  1906. const/4 v1, 0x1
  1907. if-nez p1, :cond_1
  1908. return v1
  1909. :cond_1
  1910. const/4 v2, 0x2
  1911. if-eq p3, v2, :cond_3
  1912. if-ne p3, v1, :cond_2
  1913. goto :goto_0
  1914. :cond_2
  1915. invoke-direct {p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView;->isPreferredNextFocusAbsolute(Landroid/view/View;Landroid/view/View;I)Z
  1916. move-result p1
  1917. return p1
  1918. :cond_3
  1919. :goto_0
  1920. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  1921. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getLayoutDirection()I
  1922. move-result v3
  1923. if-ne v3, v1, :cond_4
  1924. const/4 v3, 0x1
  1925. goto :goto_1
  1926. :cond_4
  1927. const/4 v3, 0x0
  1928. :goto_1
  1929. if-ne p3, v2, :cond_5
  1930. const/4 v0, 0x1
  1931. :cond_5
  1932. xor-int/2addr v0, v3
  1933. if-eqz v0, :cond_6
  1934. const/16 v0, 0x42
  1935. goto :goto_2
  1936. :cond_6
  1937. const/16 v0, 0x11
  1938. :goto_2
  1939. invoke-direct {p0, p1, p2, v0}, Landroid/support/v7/widget/RecyclerView;->isPreferredNextFocusAbsolute(Landroid/view/View;Landroid/view/View;I)Z
  1940. move-result v0
  1941. if-eqz v0, :cond_7
  1942. return v1
  1943. :cond_7
  1944. if-ne p3, v2, :cond_8
  1945. const/16 p3, 0x82
  1946. :goto_3
  1947. invoke-direct {p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView;->isPreferredNextFocusAbsolute(Landroid/view/View;Landroid/view/View;I)Z
  1948. move-result p1
  1949. return p1
  1950. :cond_8
  1951. const/16 p3, 0x21
  1952. goto :goto_3
  1953. :cond_9
  1954. :goto_4
  1955. return v0
  1956. .end method
  1957. .method private isPreferredNextFocusAbsolute(Landroid/view/View;Landroid/view/View;I)Z
  1958. .locals 4
  1959. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  1960. invoke-virtual {p1}, Landroid/view/View;->getWidth()I
  1961. move-result v1
  1962. invoke-virtual {p1}, Landroid/view/View;->getHeight()I
  1963. move-result v2
  1964. const/4 v3, 0x0
  1965. invoke-virtual {v0, v3, v3, v1, v2}, Landroid/graphics/Rect;->set(IIII)V
  1966. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  1967. invoke-virtual {p2}, Landroid/view/View;->getWidth()I
  1968. move-result v1
  1969. invoke-virtual {p2}, Landroid/view/View;->getHeight()I
  1970. move-result v2
  1971. invoke-virtual {v0, v3, v3, v1, v2}, Landroid/graphics/Rect;->set(IIII)V
  1972. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  1973. invoke-virtual {p0, p1, v0}, Landroid/view/ViewGroup;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V
  1974. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  1975. invoke-virtual {p0, p2, p1}, Landroid/view/ViewGroup;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V
  1976. const/16 p1, 0x11
  1977. const/4 p2, 0x1
  1978. if-eq p3, p1, :cond_9
  1979. const/16 p1, 0x21
  1980. if-eq p3, p1, :cond_6
  1981. const/16 p1, 0x42
  1982. if-eq p3, p1, :cond_3
  1983. const/16 p1, 0x82
  1984. if-ne p3, p1, :cond_2
  1985. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  1986. iget p3, p1, Landroid/graphics/Rect;->top:I
  1987. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  1988. iget v0, v0, Landroid/graphics/Rect;->top:I
  1989. if-lt p3, v0, :cond_0
  1990. iget p1, p1, Landroid/graphics/Rect;->bottom:I
  1991. if-gt p1, v0, :cond_1
  1992. :cond_0
  1993. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  1994. iget p1, p1, Landroid/graphics/Rect;->bottom:I
  1995. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  1996. iget p3, p3, Landroid/graphics/Rect;->bottom:I
  1997. if-ge p1, p3, :cond_1
  1998. goto :goto_0
  1999. :cond_1
  2000. const/4 p2, 0x0
  2001. :goto_0
  2002. return p2
  2003. :cond_2
  2004. new-instance p1, Ljava/lang/IllegalArgumentException;
  2005. new-instance p2, Ljava/lang/StringBuilder;
  2006. invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
  2007. const-string v0, "direction must be absolute. received:"
  2008. invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  2009. invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
  2010. invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  2011. move-result-object p2
  2012. invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
  2013. throw p1
  2014. :cond_3
  2015. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  2016. iget p3, p1, Landroid/graphics/Rect;->left:I
  2017. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  2018. iget v0, v0, Landroid/graphics/Rect;->left:I
  2019. if-lt p3, v0, :cond_4
  2020. iget p1, p1, Landroid/graphics/Rect;->right:I
  2021. if-gt p1, v0, :cond_5
  2022. :cond_4
  2023. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  2024. iget p1, p1, Landroid/graphics/Rect;->right:I
  2025. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  2026. iget p3, p3, Landroid/graphics/Rect;->right:I
  2027. if-ge p1, p3, :cond_5
  2028. goto :goto_1
  2029. :cond_5
  2030. const/4 p2, 0x0
  2031. :goto_1
  2032. return p2
  2033. :cond_6
  2034. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  2035. iget p3, p1, Landroid/graphics/Rect;->bottom:I
  2036. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  2037. iget v0, v0, Landroid/graphics/Rect;->bottom:I
  2038. if-gt p3, v0, :cond_7
  2039. iget p1, p1, Landroid/graphics/Rect;->top:I
  2040. if-lt p1, v0, :cond_8
  2041. :cond_7
  2042. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  2043. iget p1, p1, Landroid/graphics/Rect;->top:I
  2044. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  2045. iget p3, p3, Landroid/graphics/Rect;->top:I
  2046. if-le p1, p3, :cond_8
  2047. goto :goto_2
  2048. :cond_8
  2049. const/4 p2, 0x0
  2050. :goto_2
  2051. return p2
  2052. :cond_9
  2053. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  2054. iget p3, p1, Landroid/graphics/Rect;->right:I
  2055. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  2056. iget v0, v0, Landroid/graphics/Rect;->right:I
  2057. if-gt p3, v0, :cond_a
  2058. iget p1, p1, Landroid/graphics/Rect;->left:I
  2059. if-lt p1, v0, :cond_b
  2060. :cond_a
  2061. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  2062. iget p1, p1, Landroid/graphics/Rect;->left:I
  2063. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect2:Landroid/graphics/Rect;
  2064. iget p3, p3, Landroid/graphics/Rect;->left:I
  2065. if-le p1, p3, :cond_b
  2066. goto :goto_3
  2067. :cond_b
  2068. const/4 p2, 0x0
  2069. :goto_3
  2070. return p2
  2071. .end method
  2072. .method private jumpToPositionForSmoothScroller(I)V
  2073. .locals 1
  2074. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2075. if-nez v0, :cond_0
  2076. return-void
  2077. :cond_0
  2078. invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->scrollToPosition(I)V
  2079. invoke-virtual {p0}, Landroid/view/ViewGroup;->awakenScrollBars()Z
  2080. return-void
  2081. .end method
  2082. .method private onEnterLayoutOrScroll()V
  2083. .locals 1
  2084. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  2085. add-int/lit8 v0, v0, 0x1
  2086. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  2087. return-void
  2088. .end method
  2089. .method private onExitLayoutOrScroll()V
  2090. .locals 2
  2091. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  2092. const/4 v1, 0x1
  2093. sub-int/2addr v0, v1
  2094. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  2095. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  2096. if-ge v0, v1, :cond_0
  2097. const/4 v0, 0x0
  2098. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  2099. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchContentChangedIfNecessary()V
  2100. :cond_0
  2101. return-void
  2102. .end method
  2103. .method private onPointerUp(Landroid/view/MotionEvent;)V
  2104. .locals 3
  2105. invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionIndex(Landroid/view/MotionEvent;)I
  2106. move-result v0
  2107. invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
  2108. move-result v1
  2109. iget v2, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  2110. if-ne v1, v2, :cond_1
  2111. if-nez v0, :cond_0
  2112. const/4 v0, 0x1
  2113. goto :goto_0
  2114. :cond_0
  2115. const/4 v0, 0x0
  2116. :goto_0
  2117. invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
  2118. move-result v1
  2119. iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  2120. invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
  2121. move-result v1
  2122. const/high16 v2, 0x3f000000 # 0.5f
  2123. add-float/2addr v1, v2
  2124. float-to-int v1, v1
  2125. iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  2126. iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
  2127. invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
  2128. move-result p1
  2129. add-float/2addr p1, v2
  2130. float-to-int p1, p1
  2131. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  2132. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
  2133. :cond_1
  2134. return-void
  2135. .end method
  2136. .method private postAnimationRunner()V
  2137. .locals 1
  2138. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
  2139. if-nez v0, :cond_0
  2140. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
  2141. if-eqz v0, :cond_0
  2142. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable;
  2143. invoke-static {p0, v0}, Landroid/support/v4/view/ViewCompat;->postOnAnimation(Landroid/view/View;Ljava/lang/Runnable;)V
  2144. const/4 v0, 0x1
  2145. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
  2146. :cond_0
  2147. return-void
  2148. .end method
  2149. .method private predictiveItemAnimationsEnabled()Z
  2150. .locals 1
  2151. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  2152. if-eqz v0, :cond_0
  2153. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2154. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->supportsPredictiveItemAnimations()Z
  2155. move-result v0
  2156. if-eqz v0, :cond_0
  2157. const/4 v0, 0x1
  2158. goto :goto_0
  2159. :cond_0
  2160. const/4 v0, 0x0
  2161. :goto_0
  2162. return v0
  2163. .end method
  2164. .method private processAdapterUpdatesAndSetAnimationFlags()V
  2165. .locals 5
  2166. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  2167. if-eqz v0, :cond_0
  2168. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  2169. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->reset()V
  2170. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markKnownViewsInvalid()V
  2171. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2172. invoke-virtual {v0, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onItemsChanged(Landroid/support/v7/widget/RecyclerView;)V
  2173. :cond_0
  2174. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->predictiveItemAnimationsEnabled()Z
  2175. move-result v0
  2176. if-eqz v0, :cond_1
  2177. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  2178. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->preProcess()V
  2179. goto :goto_0
  2180. :cond_1
  2181. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  2182. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->consumeUpdatesInOnePass()V
  2183. :goto_0
  2184. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemsAddedOrRemoved:Z
  2185. const/4 v1, 0x0
  2186. const/4 v2, 0x1
  2187. if-nez v0, :cond_3
  2188. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemsChanged:Z
  2189. if-eqz v0, :cond_2
  2190. goto :goto_1
  2191. :cond_2
  2192. const/4 v0, 0x0
  2193. goto :goto_2
  2194. :cond_3
  2195. :goto_1
  2196. const/4 v0, 0x1
  2197. :goto_2
  2198. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2199. iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
  2200. if-eqz v4, :cond_6
  2201. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  2202. if-eqz v4, :cond_6
  2203. iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  2204. if-nez v4, :cond_4
  2205. if-nez v0, :cond_4
  2206. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2207. invoke-static {v4}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->access$2600(Landroid/support/v7/widget/RecyclerView$LayoutManager;)Z
  2208. move-result v4
  2209. if-eqz v4, :cond_6
  2210. :cond_4
  2211. iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  2212. if-eqz v4, :cond_5
  2213. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2214. invoke-virtual {v4}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
  2215. move-result v4
  2216. if-eqz v4, :cond_6
  2217. :cond_5
  2218. const/4 v4, 0x1
  2219. goto :goto_3
  2220. :cond_6
  2221. const/4 v4, 0x0
  2222. :goto_3
  2223. invoke-static {v3, v4}, Landroid/support/v7/widget/RecyclerView$State;->access$2502(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  2224. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2225. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView$State;->access$2500(Landroid/support/v7/widget/RecyclerView$State;)Z
  2226. move-result v4
  2227. if-eqz v4, :cond_7
  2228. if-eqz v0, :cond_7
  2229. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  2230. if-nez v0, :cond_7
  2231. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->predictiveItemAnimationsEnabled()Z
  2232. move-result v0
  2233. if-eqz v0, :cond_7
  2234. const/4 v1, 0x1
  2235. :cond_7
  2236. invoke-static {v3, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2302(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  2237. return-void
  2238. .end method
  2239. .method private pullGlows(FFFF)V
  2240. .locals 6
  2241. const/high16 v0, 0x3f800000 # 1.0f
  2242. const/4 v1, 0x1
  2243. const/4 v2, 0x0
  2244. cmpg-float v3, p2, v2
  2245. if-gez v3, :cond_0
  2246. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureLeftGlow()V
  2247. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2248. neg-float v4, p2
  2249. invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
  2250. move-result v5
  2251. int-to-float v5, v5
  2252. div-float/2addr v4, v5
  2253. invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
  2254. move-result v5
  2255. int-to-float v5, v5
  2256. div-float/2addr p3, v5
  2257. sub-float p3, v0, p3
  2258. invoke-virtual {v3, v4, p3}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(FF)Z
  2259. move-result p3
  2260. if-eqz p3, :cond_1
  2261. :goto_0
  2262. const/4 p3, 0x1
  2263. goto :goto_1
  2264. :cond_0
  2265. cmpl-float v3, p2, v2
  2266. if-lez v3, :cond_1
  2267. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureRightGlow()V
  2268. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2269. invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
  2270. move-result v4
  2271. int-to-float v4, v4
  2272. div-float v4, p2, v4
  2273. invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
  2274. move-result v5
  2275. int-to-float v5, v5
  2276. div-float/2addr p3, v5
  2277. invoke-virtual {v3, v4, p3}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(FF)Z
  2278. move-result p3
  2279. if-eqz p3, :cond_1
  2280. goto :goto_0
  2281. :cond_1
  2282. const/4 p3, 0x0
  2283. :goto_1
  2284. cmpg-float v3, p4, v2
  2285. if-gez v3, :cond_2
  2286. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureTopGlow()V
  2287. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2288. neg-float v3, p4
  2289. invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
  2290. move-result v4
  2291. int-to-float v4, v4
  2292. div-float/2addr v3, v4
  2293. invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
  2294. move-result v4
  2295. int-to-float v4, v4
  2296. div-float/2addr p1, v4
  2297. invoke-virtual {v0, v3, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(FF)Z
  2298. move-result p1
  2299. if-eqz p1, :cond_3
  2300. goto :goto_2
  2301. :cond_2
  2302. cmpl-float v3, p4, v2
  2303. if-lez v3, :cond_3
  2304. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureBottomGlow()V
  2305. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2306. invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
  2307. move-result v4
  2308. int-to-float v4, v4
  2309. div-float v4, p4, v4
  2310. invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
  2311. move-result v5
  2312. int-to-float v5, v5
  2313. div-float/2addr p1, v5
  2314. sub-float/2addr v0, p1
  2315. invoke-virtual {v3, v4, v0}, Landroid/support/v4/widget/EdgeEffectCompat;->onPull(FF)Z
  2316. move-result p1
  2317. if-eqz p1, :cond_3
  2318. goto :goto_2
  2319. :cond_3
  2320. move v1, p3
  2321. :goto_2
  2322. if-nez v1, :cond_4
  2323. cmpl-float p1, p2, v2
  2324. if-nez p1, :cond_4
  2325. cmpl-float p1, p4, v2
  2326. if-eqz p1, :cond_5
  2327. :cond_4
  2328. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
  2329. :cond_5
  2330. return-void
  2331. .end method
  2332. .method private recordAnimationInfoIfBouncedHiddenView(Landroid/support/v7/widget/RecyclerView$ViewHolder;Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemHolderInfo;)V
  2333. .locals 3
  2334. const/4 v0, 0x0
  2335. const/16 v1, 0x2000
  2336. invoke-virtual {p1, v0, v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->setFlags(II)V
  2337. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2338. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2700(Landroid/support/v7/widget/RecyclerView$State;)Z
  2339. move-result v0
  2340. if-eqz v0, :cond_0
  2341. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isUpdated()Z
  2342. move-result v0
  2343. if-eqz v0, :cond_0
  2344. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
  2345. move-result v0
  2346. if-nez v0, :cond_0
  2347. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  2348. move-result v0
  2349. if-nez v0, :cond_0
  2350. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
  2351. move-result-wide v0
  2352. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  2353. invoke-virtual {v2, v0, v1, p1}, Landroid/support/v7/widget/ViewInfoStore;->addToOldChangeHolders(JLandroid/support/v7/widget/RecyclerView$ViewHolder;)V
  2354. :cond_0
  2355. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  2356. 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
  2357. return-void
  2358. .end method
  2359. .method private recoverFocusFromState()V
  2360. .locals 7
  2361. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
  2362. if-eqz v0, :cond_7
  2363. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2364. if-eqz v0, :cond_7
  2365. invoke-virtual {p0}, Landroid/view/ViewGroup;->hasFocus()Z
  2366. move-result v0
  2367. if-nez v0, :cond_0
  2368. goto :goto_0
  2369. :cond_0
  2370. invoke-virtual {p0}, Landroid/view/ViewGroup;->isFocused()Z
  2371. move-result v0
  2372. if-nez v0, :cond_2
  2373. invoke-virtual {p0}, Landroid/view/ViewGroup;->getFocusedChild()Landroid/view/View;
  2374. move-result-object v0
  2375. if-eqz v0, :cond_1
  2376. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  2377. invoke-virtual {v1, v0}, Landroid/support/v7/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
  2378. move-result v0
  2379. if-nez v0, :cond_2
  2380. :cond_1
  2381. return-void
  2382. :cond_2
  2383. const/4 v0, 0x0
  2384. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2385. iget v1, v1, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemPosition:I
  2386. const/4 v2, -0x1
  2387. if-eq v1, v2, :cond_3
  2388. invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->findViewHolderForAdapterPosition(I)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  2389. move-result-object v0
  2390. :cond_3
  2391. const-wide/16 v1, -0x1
  2392. if-nez v0, :cond_4
  2393. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2394. iget-wide v3, v3, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemId:J
  2395. cmp-long v5, v3, v1
  2396. if-eqz v5, :cond_4
  2397. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2398. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
  2399. move-result v3
  2400. if-eqz v3, :cond_4
  2401. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2402. iget-wide v3, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemId:J
  2403. invoke-virtual {p0, v3, v4}, Landroid/support/v7/widget/RecyclerView;->findViewHolderForItemId(J)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  2404. move-result-object v0
  2405. :cond_4
  2406. if-eqz v0, :cond_7
  2407. iget-object v3, v0, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  2408. invoke-virtual {v3}, Landroid/view/View;->hasFocus()Z
  2409. move-result v3
  2410. if-nez v3, :cond_7
  2411. iget-object v3, v0, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  2412. invoke-virtual {v3}, Landroid/view/View;->hasFocusable()Z
  2413. move-result v3
  2414. if-nez v3, :cond_5
  2415. goto :goto_0
  2416. :cond_5
  2417. iget-object v0, v0, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  2418. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2419. iget v3, v3, Landroid/support/v7/widget/RecyclerView$State;->mFocusedSubChildId:I
  2420. int-to-long v4, v3
  2421. cmp-long v6, v4, v1
  2422. if-eqz v6, :cond_6
  2423. invoke-virtual {v0, v3}, Landroid/view/View;->findViewById(I)Landroid/view/View;
  2424. move-result-object v1
  2425. if-eqz v1, :cond_6
  2426. invoke-virtual {v1}, Landroid/view/View;->isFocusable()Z
  2427. move-result v2
  2428. if-eqz v2, :cond_6
  2429. move-object v0, v1
  2430. :cond_6
  2431. invoke-virtual {v0}, Landroid/view/View;->requestFocus()Z
  2432. :cond_7
  2433. :goto_0
  2434. return-void
  2435. .end method
  2436. .method private releaseGlows()V
  2437. .locals 2
  2438. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2439. if-eqz v0, :cond_0
  2440. invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
  2441. move-result v0
  2442. goto :goto_0
  2443. :cond_0
  2444. const/4 v0, 0x0
  2445. :goto_0
  2446. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2447. if-eqz v1, :cond_1
  2448. invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
  2449. move-result v1
  2450. or-int/2addr v0, v1
  2451. :cond_1
  2452. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2453. if-eqz v1, :cond_2
  2454. invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
  2455. move-result v1
  2456. or-int/2addr v0, v1
  2457. :cond_2
  2458. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2459. if-eqz v1, :cond_3
  2460. invoke-virtual {v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onRelease()Z
  2461. move-result v1
  2462. or-int/2addr v0, v1
  2463. :cond_3
  2464. if-eqz v0, :cond_4
  2465. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
  2466. :cond_4
  2467. return-void
  2468. .end method
  2469. .method private removeAnimatingView(Landroid/view/View;)Z
  2470. .locals 2
  2471. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  2472. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  2473. invoke-virtual {v0, p1}, Landroid/support/v7/widget/ChildHelper;->removeViewIfHidden(Landroid/view/View;)Z
  2474. move-result v0
  2475. if-eqz v0, :cond_0
  2476. invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  2477. move-result-object p1
  2478. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  2479. invoke-virtual {v1, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->unscrapView(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  2480. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  2481. invoke-virtual {v1, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->recycleViewHolderInternal(Landroid/support/v7/widget/RecyclerView$ViewHolder;)V
  2482. :cond_0
  2483. xor-int/lit8 p1, v0, 0x1
  2484. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  2485. return v0
  2486. .end method
  2487. .method private repositionShadowingViews()V
  2488. .locals 7
  2489. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  2490. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  2491. move-result v0
  2492. const/4 v1, 0x0
  2493. :goto_0
  2494. if-ge v1, v0, :cond_2
  2495. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  2496. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  2497. move-result-object v2
  2498. invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  2499. move-result-object v3
  2500. if-eqz v3, :cond_1
  2501. iget-object v3, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mShadowingHolder:Landroid/support/v7/widget/RecyclerView$ViewHolder;
  2502. if-eqz v3, :cond_1
  2503. iget-object v3, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  2504. invoke-virtual {v2}, Landroid/view/View;->getLeft()I
  2505. move-result v4
  2506. invoke-virtual {v2}, Landroid/view/View;->getTop()I
  2507. move-result v2
  2508. invoke-virtual {v3}, Landroid/view/View;->getLeft()I
  2509. move-result v5
  2510. if-ne v4, v5, :cond_0
  2511. invoke-virtual {v3}, Landroid/view/View;->getTop()I
  2512. move-result v5
  2513. if-eq v2, v5, :cond_1
  2514. :cond_0
  2515. invoke-virtual {v3}, Landroid/view/View;->getWidth()I
  2516. move-result v5
  2517. add-int/2addr v5, v4
  2518. invoke-virtual {v3}, Landroid/view/View;->getHeight()I
  2519. move-result v6
  2520. add-int/2addr v6, v2
  2521. invoke-virtual {v3, v4, v2, v5, v6}, Landroid/view/View;->layout(IIII)V
  2522. :cond_1
  2523. add-int/lit8 v1, v1, 0x1
  2524. goto :goto_0
  2525. :cond_2
  2526. return-void
  2527. .end method
  2528. .method private resetFocusInfo()V
  2529. .locals 3
  2530. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2531. const-wide/16 v1, -0x1
  2532. iput-wide v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemId:J
  2533. const/4 v1, -0x1
  2534. iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemPosition:I
  2535. iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedSubChildId:I
  2536. return-void
  2537. .end method
  2538. .method private resetTouch()V
  2539. .locals 1
  2540. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  2541. if-eqz v0, :cond_0
  2542. invoke-virtual {v0}, Landroid/view/VelocityTracker;->clear()V
  2543. :cond_0
  2544. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopNestedScroll()V
  2545. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->releaseGlows()V
  2546. return-void
  2547. .end method
  2548. .method private saveFocusInfo()V
  2549. .locals 4
  2550. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
  2551. const/4 v1, 0x0
  2552. if-eqz v0, :cond_0
  2553. invoke-virtual {p0}, Landroid/view/ViewGroup;->hasFocus()Z
  2554. move-result v0
  2555. if-eqz v0, :cond_0
  2556. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2557. if-eqz v0, :cond_0
  2558. invoke-virtual {p0}, Landroid/view/ViewGroup;->getFocusedChild()Landroid/view/View;
  2559. move-result-object v0
  2560. goto :goto_0
  2561. :cond_0
  2562. move-object v0, v1
  2563. :goto_0
  2564. if-nez v0, :cond_1
  2565. goto :goto_1
  2566. :cond_1
  2567. invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->findContainingViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  2568. move-result-object v1
  2569. :goto_1
  2570. if-nez v1, :cond_2
  2571. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->resetFocusInfo()V
  2572. goto :goto_4
  2573. :cond_2
  2574. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2575. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2576. invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
  2577. move-result v2
  2578. if-eqz v2, :cond_3
  2579. invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getItemId()J
  2580. move-result-wide v2
  2581. goto :goto_2
  2582. :cond_3
  2583. const-wide/16 v2, -0x1
  2584. :goto_2
  2585. iput-wide v2, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemId:J
  2586. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2587. iget-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  2588. if-eqz v2, :cond_4
  2589. const/4 v2, -0x1
  2590. goto :goto_3
  2591. :cond_4
  2592. invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getAdapterPosition()I
  2593. move-result v2
  2594. :goto_3
  2595. iput v2, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedItemPosition:I
  2596. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2597. iget-object v1, v1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  2598. invoke-direct {p0, v1}, Landroid/support/v7/widget/RecyclerView;->getDeepestFocusedViewWithId(Landroid/view/View;)I
  2599. move-result v1
  2600. iput v1, v0, Landroid/support/v7/widget/RecyclerView$State;->mFocusedSubChildId:I
  2601. :goto_4
  2602. return-void
  2603. .end method
  2604. .method private setAdapterInternal(Landroid/support/v7/widget/RecyclerView$Adapter;ZZ)V
  2605. .locals 2
  2606. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2607. if-eqz v0, :cond_0
  2608. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mObserver:Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
  2609. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$Adapter;->unregisterAdapterDataObserver(Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;)V
  2610. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2611. invoke-virtual {v0, p0}, Landroid/support/v7/widget/RecyclerView$Adapter;->onDetachedFromRecyclerView(Landroid/support/v7/widget/RecyclerView;)V
  2612. :cond_0
  2613. if-eqz p2, :cond_1
  2614. if-eqz p3, :cond_4
  2615. :cond_1
  2616. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  2617. if-eqz p3, :cond_2
  2618. invoke-virtual {p3}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->endAnimations()V
  2619. :cond_2
  2620. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2621. if-eqz p3, :cond_3
  2622. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  2623. invoke-virtual {p3, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->removeAndRecycleAllViews(Landroid/support/v7/widget/RecyclerView$Recycler;)V
  2624. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2625. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  2626. invoke-virtual {p3, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->removeAndRecycleScrapInt(Landroid/support/v7/widget/RecyclerView$Recycler;)V
  2627. :cond_3
  2628. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  2629. invoke-virtual {p3}, Landroid/support/v7/widget/RecyclerView$Recycler;->clear()V
  2630. :cond_4
  2631. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  2632. invoke-virtual {p3}, Landroid/support/v7/widget/AdapterHelper;->reset()V
  2633. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2634. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2635. if-eqz p1, :cond_5
  2636. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mObserver:Landroid/support/v7/widget/RecyclerView$RecyclerViewDataObserver;
  2637. invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->registerAdapterDataObserver(Landroid/support/v7/widget/RecyclerView$AdapterDataObserver;)V
  2638. invoke-virtual {p1, p0}, Landroid/support/v7/widget/RecyclerView$Adapter;->onAttachedToRecyclerView(Landroid/support/v7/widget/RecyclerView;)V
  2639. :cond_5
  2640. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2641. if-eqz p1, :cond_6
  2642. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2643. 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
  2644. :cond_6
  2645. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  2646. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  2647. 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
  2648. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2649. const/4 p2, 0x1
  2650. invoke-static {p1, p2}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  2651. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markKnownViewsInvalid()V
  2652. return-void
  2653. .end method
  2654. .method private setDataSetChangedAfterLayout()V
  2655. .locals 4
  2656. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  2657. if-eqz v0, :cond_0
  2658. return-void
  2659. :cond_0
  2660. const/4 v0, 0x1
  2661. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  2662. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  2663. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  2664. move-result v0
  2665. const/4 v1, 0x0
  2666. :goto_0
  2667. if-ge v1, v0, :cond_2
  2668. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  2669. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  2670. move-result-object v2
  2671. invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  2672. move-result-object v2
  2673. if-eqz v2, :cond_1
  2674. invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  2675. move-result v3
  2676. if-nez v3, :cond_1
  2677. const/16 v3, 0x200
  2678. invoke-virtual {v2, v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->addFlags(I)V
  2679. :cond_1
  2680. add-int/lit8 v1, v1, 0x1
  2681. goto :goto_0
  2682. :cond_2
  2683. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  2684. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->setAdapterPositionsAsUnknown()V
  2685. return-void
  2686. .end method
  2687. .method private setScrollState(I)V
  2688. .locals 1
  2689. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  2690. if-ne p1, v0, :cond_0
  2691. return-void
  2692. :cond_0
  2693. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  2694. const/4 v0, 0x2
  2695. if-eq p1, v0, :cond_1
  2696. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->stopScrollersInternal()V
  2697. :cond_1
  2698. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchOnScrollStateChanged(I)V
  2699. return-void
  2700. .end method
  2701. .method private stopScrollersInternal()V
  2702. .locals 1
  2703. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  2704. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ViewFlinger;->stop()V
  2705. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2706. if-eqz v0, :cond_0
  2707. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->stopSmoothScroller()V
  2708. :cond_0
  2709. return-void
  2710. .end method
  2711. # virtual methods
  2712. .method absorbGlows(II)V
  2713. .locals 2
  2714. if-gez p1, :cond_0
  2715. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureLeftGlow()V
  2716. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2717. neg-int v1, p1
  2718. invoke-virtual {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onAbsorb(I)Z
  2719. goto :goto_0
  2720. :cond_0
  2721. if-lez p1, :cond_1
  2722. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureRightGlow()V
  2723. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2724. invoke-virtual {v0, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->onAbsorb(I)Z
  2725. :cond_1
  2726. :goto_0
  2727. if-gez p2, :cond_2
  2728. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureTopGlow()V
  2729. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2730. neg-int v1, p2
  2731. invoke-virtual {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;->onAbsorb(I)Z
  2732. goto :goto_1
  2733. :cond_2
  2734. if-lez p2, :cond_3
  2735. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->ensureBottomGlow()V
  2736. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  2737. invoke-virtual {v0, p2}, Landroid/support/v4/widget/EdgeEffectCompat;->onAbsorb(I)Z
  2738. :cond_3
  2739. :goto_1
  2740. if-nez p1, :cond_4
  2741. if-eqz p2, :cond_5
  2742. :cond_4
  2743. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
  2744. :cond_5
  2745. return-void
  2746. .end method
  2747. .method public addFocusables(Ljava/util/ArrayList;II)V
  2748. .locals 1
  2749. .annotation system Ldalvik/annotation/Signature;
  2750. value = {
  2751. "(",
  2752. "Ljava/util/ArrayList<",
  2753. "Landroid/view/View;",
  2754. ">;II)V"
  2755. }
  2756. .end annotation
  2757. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2758. if-eqz v0, :cond_0
  2759. invoke-virtual {v0, p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onAddFocusables(Landroid/support/v7/widget/RecyclerView;Ljava/util/ArrayList;II)Z
  2760. move-result v0
  2761. if-nez v0, :cond_1
  2762. :cond_0
  2763. invoke-super {p0, p1, p2, p3}, Landroid/view/ViewGroup;->addFocusables(Ljava/util/ArrayList;II)V
  2764. :cond_1
  2765. return-void
  2766. .end method
  2767. .method public addItemDecoration(Landroid/support/v7/widget/RecyclerView$ItemDecoration;)V
  2768. .locals 1
  2769. const/4 v0, -0x1
  2770. invoke-virtual {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;->addItemDecoration(Landroid/support/v7/widget/RecyclerView$ItemDecoration;I)V
  2771. return-void
  2772. .end method
  2773. .method public addItemDecoration(Landroid/support/v7/widget/RecyclerView$ItemDecoration;I)V
  2774. .locals 2
  2775. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2776. if-eqz v0, :cond_0
  2777. const-string v1, "Cannot add item decoration during a scroll or layout"
  2778. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V
  2779. :cond_0
  2780. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  2781. invoke-virtual {v0}, Ljava/util/ArrayList;->isEmpty()Z
  2782. move-result v0
  2783. if-eqz v0, :cond_1
  2784. const/4 v0, 0x0
  2785. invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->setWillNotDraw(Z)V
  2786. :cond_1
  2787. if-gez p2, :cond_2
  2788. iget-object p2, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  2789. invoke-virtual {p2, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
  2790. goto :goto_0
  2791. :cond_2
  2792. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  2793. invoke-virtual {v0, p2, p1}, Ljava/util/ArrayList;->add(ILjava/lang/Object;)V
  2794. :goto_0
  2795. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markItemDecorInsetsDirty()V
  2796. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  2797. return-void
  2798. .end method
  2799. .method public addOnChildAttachStateChangeListener(Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;)V
  2800. .locals 1
  2801. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  2802. if-nez v0, :cond_0
  2803. new-instance v0, Ljava/util/ArrayList;
  2804. invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
  2805. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  2806. :cond_0
  2807. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  2808. invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
  2809. return-void
  2810. .end method
  2811. .method public addOnItemTouchListener(Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;)V
  2812. .locals 1
  2813. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  2814. invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
  2815. return-void
  2816. .end method
  2817. .method public addOnScrollListener(Landroid/support/v7/widget/RecyclerView$OnScrollListener;)V
  2818. .locals 1
  2819. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  2820. if-nez v0, :cond_0
  2821. new-instance v0, Ljava/util/ArrayList;
  2822. invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
  2823. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  2824. :cond_0
  2825. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  2826. invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
  2827. return-void
  2828. .end method
  2829. .method assertInLayoutOrScroll(Ljava/lang/String;)V
  2830. .locals 1
  2831. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
  2832. move-result v0
  2833. if-nez v0, :cond_1
  2834. if-nez p1, :cond_0
  2835. new-instance p1, Ljava/lang/IllegalStateException;
  2836. const-string v0, "Cannot call this method unless RecyclerView is computing a layout or scrolling"
  2837. invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  2838. throw p1
  2839. :cond_0
  2840. new-instance v0, Ljava/lang/IllegalStateException;
  2841. invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  2842. throw v0
  2843. :cond_1
  2844. return-void
  2845. .end method
  2846. .method assertNotInLayoutOrScroll(Ljava/lang/String;)V
  2847. .locals 1
  2848. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
  2849. move-result v0
  2850. if-eqz v0, :cond_1
  2851. if-nez p1, :cond_0
  2852. new-instance p1, Ljava/lang/IllegalStateException;
  2853. const-string v0, "Cannot call this method while RecyclerView is computing a layout or scrolling"
  2854. invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  2855. throw p1
  2856. :cond_0
  2857. new-instance v0, Ljava/lang/IllegalStateException;
  2858. invoke-direct {v0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  2859. throw v0
  2860. :cond_1
  2861. return-void
  2862. .end method
  2863. .method protected checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z
  2864. .locals 1
  2865. instance-of v0, p1, Landroid/support/v7/widget/RecyclerView$LayoutParams;
  2866. if-eqz v0, :cond_0
  2867. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2868. check-cast p1, Landroid/support/v7/widget/RecyclerView$LayoutParams;
  2869. invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->checkLayoutParams(Landroid/support/v7/widget/RecyclerView$LayoutParams;)Z
  2870. move-result p1
  2871. if-eqz p1, :cond_0
  2872. const/4 p1, 0x1
  2873. goto :goto_0
  2874. :cond_0
  2875. const/4 p1, 0x0
  2876. :goto_0
  2877. return p1
  2878. .end method
  2879. .method clearOldPositions()V
  2880. .locals 4
  2881. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  2882. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  2883. move-result v0
  2884. const/4 v1, 0x0
  2885. :goto_0
  2886. if-ge v1, v0, :cond_1
  2887. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  2888. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  2889. move-result-object v2
  2890. invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  2891. move-result-object v2
  2892. invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  2893. move-result v3
  2894. if-nez v3, :cond_0
  2895. invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->clearOldPosition()V
  2896. :cond_0
  2897. add-int/lit8 v1, v1, 0x1
  2898. goto :goto_0
  2899. :cond_1
  2900. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  2901. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->clearOldPositions()V
  2902. return-void
  2903. .end method
  2904. .method public clearOnChildAttachStateChangeListeners()V
  2905. .locals 1
  2906. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  2907. if-eqz v0, :cond_0
  2908. invoke-interface {v0}, Ljava/util/List;->clear()V
  2909. :cond_0
  2910. return-void
  2911. .end method
  2912. .method public clearOnScrollListeners()V
  2913. .locals 1
  2914. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  2915. if-eqz v0, :cond_0
  2916. invoke-interface {v0}, Ljava/util/List;->clear()V
  2917. :cond_0
  2918. return-void
  2919. .end method
  2920. .method public computeHorizontalScrollExtent()I
  2921. .locals 2
  2922. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2923. const/4 v1, 0x0
  2924. if-nez v0, :cond_0
  2925. return v1
  2926. :cond_0
  2927. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  2928. move-result v0
  2929. if-eqz v0, :cond_1
  2930. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2931. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2932. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeHorizontalScrollExtent(Landroid/support/v7/widget/RecyclerView$State;)I
  2933. move-result v1
  2934. :cond_1
  2935. return v1
  2936. .end method
  2937. .method public computeHorizontalScrollOffset()I
  2938. .locals 2
  2939. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2940. const/4 v1, 0x0
  2941. if-nez v0, :cond_0
  2942. return v1
  2943. :cond_0
  2944. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  2945. move-result v0
  2946. if-eqz v0, :cond_1
  2947. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2948. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2949. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeHorizontalScrollOffset(Landroid/support/v7/widget/RecyclerView$State;)I
  2950. move-result v1
  2951. :cond_1
  2952. return v1
  2953. .end method
  2954. .method public computeHorizontalScrollRange()I
  2955. .locals 2
  2956. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2957. const/4 v1, 0x0
  2958. if-nez v0, :cond_0
  2959. return v1
  2960. :cond_0
  2961. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  2962. move-result v0
  2963. if-eqz v0, :cond_1
  2964. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2965. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2966. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeHorizontalScrollRange(Landroid/support/v7/widget/RecyclerView$State;)I
  2967. move-result v1
  2968. :cond_1
  2969. return v1
  2970. .end method
  2971. .method public computeVerticalScrollExtent()I
  2972. .locals 2
  2973. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2974. const/4 v1, 0x0
  2975. if-nez v0, :cond_0
  2976. return v1
  2977. :cond_0
  2978. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  2979. move-result v0
  2980. if-eqz v0, :cond_1
  2981. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2982. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  2983. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeVerticalScrollExtent(Landroid/support/v7/widget/RecyclerView$State;)I
  2984. move-result v1
  2985. :cond_1
  2986. return v1
  2987. .end method
  2988. .method public computeVerticalScrollOffset()I
  2989. .locals 2
  2990. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2991. const/4 v1, 0x0
  2992. if-nez v0, :cond_0
  2993. return v1
  2994. :cond_0
  2995. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  2996. move-result v0
  2997. if-eqz v0, :cond_1
  2998. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  2999. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  3000. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeVerticalScrollOffset(Landroid/support/v7/widget/RecyclerView$State;)I
  3001. move-result v1
  3002. :cond_1
  3003. return v1
  3004. .end method
  3005. .method public computeVerticalScrollRange()I
  3006. .locals 2
  3007. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3008. const/4 v1, 0x0
  3009. if-nez v0, :cond_0
  3010. return v1
  3011. :cond_0
  3012. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  3013. move-result v0
  3014. if-eqz v0, :cond_1
  3015. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3016. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  3017. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->computeVerticalScrollRange(Landroid/support/v7/widget/RecyclerView$State;)I
  3018. move-result v1
  3019. :cond_1
  3020. return v1
  3021. .end method
  3022. .method defaultOnMeasure(II)V
  3023. .locals 2
  3024. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
  3025. move-result v0
  3026. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
  3027. move-result v1
  3028. add-int/2addr v0, v1
  3029. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getMinimumWidth(Landroid/view/View;)I
  3030. move-result v1
  3031. invoke-static {p1, v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->chooseSize(III)I
  3032. move-result p1
  3033. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
  3034. move-result v0
  3035. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
  3036. move-result v1
  3037. add-int/2addr v0, v1
  3038. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getMinimumHeight(Landroid/view/View;)I
  3039. move-result v1
  3040. invoke-static {p2, v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->chooseSize(III)I
  3041. move-result p2
  3042. invoke-virtual {p0, p1, p2}, Landroid/view/ViewGroup;->setMeasuredDimension(II)V
  3043. return-void
  3044. .end method
  3045. .method dispatchLayout()V
  3046. .locals 2
  3047. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  3048. const-string v1, "RecyclerView"
  3049. if-nez v0, :cond_0
  3050. const-string v0, "No adapter attached; skipping layout"
  3051. :goto_0
  3052. invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  3053. return-void
  3054. :cond_0
  3055. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3056. if-nez v0, :cond_1
  3057. const-string v0, "No layout manager attached; skipping layout"
  3058. goto :goto_0
  3059. :cond_1
  3060. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  3061. const/4 v1, 0x0
  3062. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2202(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  3063. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  3064. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2100(Landroid/support/v7/widget/RecyclerView$State;)I
  3065. move-result v0
  3066. const/4 v1, 0x1
  3067. if-ne v0, v1, :cond_3
  3068. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep1()V
  3069. :cond_2
  3070. :goto_1
  3071. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3072. invoke-virtual {v0, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setExactMeasureSpecsFrom(Landroid/support/v7/widget/RecyclerView;)V
  3073. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep2()V
  3074. goto :goto_2
  3075. :cond_3
  3076. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  3077. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->hasUpdates()Z
  3078. move-result v0
  3079. if-nez v0, :cond_2
  3080. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3081. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getWidth()I
  3082. move-result v0
  3083. invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
  3084. move-result v1
  3085. if-ne v0, v1, :cond_2
  3086. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3087. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getHeight()I
  3088. move-result v0
  3089. invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
  3090. move-result v1
  3091. if-eq v0, v1, :cond_4
  3092. goto :goto_1
  3093. :cond_4
  3094. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3095. invoke-virtual {v0, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setExactMeasureSpecsFrom(Landroid/support/v7/widget/RecyclerView;)V
  3096. :goto_2
  3097. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep3()V
  3098. return-void
  3099. .end method
  3100. .method public dispatchNestedFling(FFZ)Z
  3101. .locals 1
  3102. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  3103. move-result-object v0
  3104. invoke-virtual {v0, p1, p2, p3}, Landroid/support/v4/view/NestedScrollingChildHelper;->dispatchNestedFling(FFZ)Z
  3105. move-result p1
  3106. return p1
  3107. .end method
  3108. .method public dispatchNestedPreFling(FF)Z
  3109. .locals 1
  3110. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  3111. move-result-object v0
  3112. invoke-virtual {v0, p1, p2}, Landroid/support/v4/view/NestedScrollingChildHelper;->dispatchNestedPreFling(FF)Z
  3113. move-result p1
  3114. return p1
  3115. .end method
  3116. .method public dispatchNestedPreScroll(II[I[I)Z
  3117. .locals 1
  3118. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  3119. move-result-object v0
  3120. invoke-virtual {v0, p1, p2, p3, p4}, Landroid/support/v4/view/NestedScrollingChildHelper;->dispatchNestedPreScroll(II[I[I)Z
  3121. move-result p1
  3122. return p1
  3123. .end method
  3124. .method public dispatchNestedScroll(IIII[I)Z
  3125. .locals 6
  3126. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  3127. move-result-object v0
  3128. move v1, p1
  3129. move v2, p2
  3130. move v3, p3
  3131. move v4, p4
  3132. move-object v5, p5
  3133. invoke-virtual/range {v0 .. v5}, Landroid/support/v4/view/NestedScrollingChildHelper;->dispatchNestedScroll(IIII[I)Z
  3134. move-result p1
  3135. return p1
  3136. .end method
  3137. .method dispatchOnScrollStateChanged(I)V
  3138. .locals 2
  3139. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3140. if-eqz v0, :cond_0
  3141. invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onScrollStateChanged(I)V
  3142. :cond_0
  3143. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onScrollStateChanged(I)V
  3144. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListener:Landroid/support/v7/widget/RecyclerView$OnScrollListener;
  3145. if-eqz v0, :cond_1
  3146. invoke-virtual {v0, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnScrollListener;->onScrollStateChanged(Landroid/support/v7/widget/RecyclerView;I)V
  3147. :cond_1
  3148. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  3149. if-eqz v0, :cond_2
  3150. invoke-interface {v0}, Ljava/util/List;->size()I
  3151. move-result v0
  3152. add-int/lit8 v0, v0, -0x1
  3153. :goto_0
  3154. if-ltz v0, :cond_2
  3155. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  3156. invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
  3157. move-result-object v1
  3158. check-cast v1, Landroid/support/v7/widget/RecyclerView$OnScrollListener;
  3159. invoke-virtual {v1, p0, p1}, Landroid/support/v7/widget/RecyclerView$OnScrollListener;->onScrollStateChanged(Landroid/support/v7/widget/RecyclerView;I)V
  3160. add-int/lit8 v0, v0, -0x1
  3161. goto :goto_0
  3162. :cond_2
  3163. return-void
  3164. .end method
  3165. .method dispatchOnScrolled(II)V
  3166. .locals 2
  3167. invoke-virtual {p0}, Landroid/view/ViewGroup;->getScrollX()I
  3168. move-result v0
  3169. invoke-virtual {p0}, Landroid/view/ViewGroup;->getScrollY()I
  3170. move-result v1
  3171. invoke-virtual {p0, v0, v1, v0, v1}, Landroid/view/ViewGroup;->onScrollChanged(IIII)V
  3172. invoke-virtual {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->onScrolled(II)V
  3173. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListener:Landroid/support/v7/widget/RecyclerView$OnScrollListener;
  3174. if-eqz v0, :cond_0
  3175. invoke-virtual {v0, p0, p1, p2}, Landroid/support/v7/widget/RecyclerView$OnScrollListener;->onScrolled(Landroid/support/v7/widget/RecyclerView;II)V
  3176. :cond_0
  3177. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  3178. if-eqz v0, :cond_1
  3179. invoke-interface {v0}, Ljava/util/List;->size()I
  3180. move-result v0
  3181. add-int/lit8 v0, v0, -0x1
  3182. :goto_0
  3183. if-ltz v0, :cond_1
  3184. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  3185. invoke-interface {v1, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
  3186. move-result-object v1
  3187. check-cast v1, Landroid/support/v7/widget/RecyclerView$OnScrollListener;
  3188. invoke-virtual {v1, p0, p1, p2}, Landroid/support/v7/widget/RecyclerView$OnScrollListener;->onScrolled(Landroid/support/v7/widget/RecyclerView;II)V
  3189. add-int/lit8 v0, v0, -0x1
  3190. goto :goto_0
  3191. :cond_1
  3192. return-void
  3193. .end method
  3194. .method protected dispatchRestoreInstanceState(Landroid/util/SparseArray;)V
  3195. .locals 0
  3196. .annotation system Ldalvik/annotation/Signature;
  3197. value = {
  3198. "(",
  3199. "Landroid/util/SparseArray<",
  3200. "Landroid/os/Parcelable;",
  3201. ">;)V"
  3202. }
  3203. .end annotation
  3204. invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->dispatchThawSelfOnly(Landroid/util/SparseArray;)V
  3205. return-void
  3206. .end method
  3207. .method protected dispatchSaveInstanceState(Landroid/util/SparseArray;)V
  3208. .locals 0
  3209. .annotation system Ldalvik/annotation/Signature;
  3210. value = {
  3211. "(",
  3212. "Landroid/util/SparseArray<",
  3213. "Landroid/os/Parcelable;",
  3214. ">;)V"
  3215. }
  3216. .end annotation
  3217. invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->dispatchFreezeSelfOnly(Landroid/util/SparseArray;)V
  3218. return-void
  3219. .end method
  3220. .method public draw(Landroid/graphics/Canvas;)V
  3221. .locals 7
  3222. invoke-super {p0, p1}, Landroid/view/ViewGroup;->draw(Landroid/graphics/Canvas;)V
  3223. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  3224. invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
  3225. move-result v0
  3226. const/4 v1, 0x0
  3227. const/4 v2, 0x0
  3228. :goto_0
  3229. if-ge v2, v0, :cond_0
  3230. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  3231. invoke-virtual {v3, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
  3232. move-result-object v3
  3233. check-cast v3, Landroid/support/v7/widget/RecyclerView$ItemDecoration;
  3234. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  3235. 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
  3236. add-int/lit8 v2, v2, 0x1
  3237. goto :goto_0
  3238. :cond_0
  3239. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3240. const/4 v2, 0x1
  3241. if-eqz v0, :cond_3
  3242. invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
  3243. move-result v0
  3244. if-nez v0, :cond_3
  3245. invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
  3246. move-result v0
  3247. iget-boolean v3, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  3248. if-eqz v3, :cond_1
  3249. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
  3250. move-result v3
  3251. goto :goto_1
  3252. :cond_1
  3253. const/4 v3, 0x0
  3254. :goto_1
  3255. const/high16 v4, 0x43870000 # 270.0f
  3256. invoke-virtual {p1, v4}, Landroid/graphics/Canvas;->rotate(F)V
  3257. invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
  3258. move-result v4
  3259. neg-int v4, v4
  3260. add-int/2addr v4, v3
  3261. int-to-float v3, v4
  3262. const/4 v4, 0x0
  3263. invoke-virtual {p1, v3, v4}, Landroid/graphics/Canvas;->translate(FF)V
  3264. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3265. if-eqz v3, :cond_2
  3266. invoke-virtual {v3, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
  3267. move-result v3
  3268. if-eqz v3, :cond_2
  3269. const/4 v3, 0x1
  3270. goto :goto_2
  3271. :cond_2
  3272. const/4 v3, 0x0
  3273. :goto_2
  3274. invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
  3275. goto :goto_3
  3276. :cond_3
  3277. const/4 v3, 0x0
  3278. :goto_3
  3279. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3280. if-eqz v0, :cond_6
  3281. invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
  3282. move-result v0
  3283. if-nez v0, :cond_6
  3284. invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
  3285. move-result v0
  3286. iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  3287. if-eqz v4, :cond_4
  3288. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
  3289. move-result v4
  3290. int-to-float v4, v4
  3291. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
  3292. move-result v5
  3293. int-to-float v5, v5
  3294. invoke-virtual {p1, v4, v5}, Landroid/graphics/Canvas;->translate(FF)V
  3295. :cond_4
  3296. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3297. if-eqz v4, :cond_5
  3298. invoke-virtual {v4, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
  3299. move-result v4
  3300. if-eqz v4, :cond_5
  3301. const/4 v4, 0x1
  3302. goto :goto_4
  3303. :cond_5
  3304. const/4 v4, 0x0
  3305. :goto_4
  3306. or-int/2addr v3, v4
  3307. invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
  3308. :cond_6
  3309. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3310. if-eqz v0, :cond_9
  3311. invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
  3312. move-result v0
  3313. if-nez v0, :cond_9
  3314. invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
  3315. move-result v0
  3316. invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
  3317. move-result v4
  3318. iget-boolean v5, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  3319. if-eqz v5, :cond_7
  3320. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
  3321. move-result v5
  3322. goto :goto_5
  3323. :cond_7
  3324. const/4 v5, 0x0
  3325. :goto_5
  3326. const/high16 v6, 0x42b40000 # 90.0f
  3327. invoke-virtual {p1, v6}, Landroid/graphics/Canvas;->rotate(F)V
  3328. neg-int v5, v5
  3329. int-to-float v5, v5
  3330. neg-int v4, v4
  3331. int-to-float v4, v4
  3332. invoke-virtual {p1, v5, v4}, Landroid/graphics/Canvas;->translate(FF)V
  3333. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3334. if-eqz v4, :cond_8
  3335. invoke-virtual {v4, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
  3336. move-result v4
  3337. if-eqz v4, :cond_8
  3338. const/4 v4, 0x1
  3339. goto :goto_6
  3340. :cond_8
  3341. const/4 v4, 0x0
  3342. :goto_6
  3343. or-int/2addr v3, v4
  3344. invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
  3345. :cond_9
  3346. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3347. if-eqz v0, :cond_c
  3348. invoke-virtual {v0}, Landroid/support/v4/widget/EdgeEffectCompat;->isFinished()Z
  3349. move-result v0
  3350. if-nez v0, :cond_c
  3351. invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
  3352. move-result v0
  3353. const/high16 v4, 0x43340000 # 180.0f
  3354. invoke-virtual {p1, v4}, Landroid/graphics/Canvas;->rotate(F)V
  3355. iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  3356. if-eqz v4, :cond_a
  3357. invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
  3358. move-result v4
  3359. neg-int v4, v4
  3360. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
  3361. move-result v5
  3362. add-int/2addr v4, v5
  3363. int-to-float v4, v4
  3364. invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
  3365. move-result v5
  3366. neg-int v5, v5
  3367. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
  3368. move-result v6
  3369. add-int/2addr v5, v6
  3370. goto :goto_7
  3371. :cond_a
  3372. invoke-virtual {p0}, Landroid/view/ViewGroup;->getWidth()I
  3373. move-result v4
  3374. neg-int v4, v4
  3375. int-to-float v4, v4
  3376. invoke-virtual {p0}, Landroid/view/ViewGroup;->getHeight()I
  3377. move-result v5
  3378. neg-int v5, v5
  3379. :goto_7
  3380. int-to-float v5, v5
  3381. invoke-virtual {p1, v4, v5}, Landroid/graphics/Canvas;->translate(FF)V
  3382. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3383. if-eqz v4, :cond_b
  3384. invoke-virtual {v4, p1}, Landroid/support/v4/widget/EdgeEffectCompat;->draw(Landroid/graphics/Canvas;)Z
  3385. move-result v4
  3386. if-eqz v4, :cond_b
  3387. const/4 v1, 0x1
  3388. :cond_b
  3389. or-int/2addr v1, v3
  3390. invoke-virtual {p1, v0}, Landroid/graphics/Canvas;->restoreToCount(I)V
  3391. goto :goto_8
  3392. :cond_c
  3393. move v1, v3
  3394. :goto_8
  3395. if-nez v1, :cond_d
  3396. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  3397. if-eqz p1, :cond_d
  3398. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  3399. invoke-virtual {p1}, Ljava/util/ArrayList;->size()I
  3400. move-result p1
  3401. if-lez p1, :cond_d
  3402. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  3403. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->isRunning()Z
  3404. move-result p1
  3405. if-eqz p1, :cond_d
  3406. const/4 v1, 0x1
  3407. :cond_d
  3408. if-eqz v1, :cond_e
  3409. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->postInvalidateOnAnimation(Landroid/view/View;)V
  3410. :cond_e
  3411. return-void
  3412. .end method
  3413. .method public drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z
  3414. .locals 0
  3415. invoke-super {p0, p1, p2, p3, p4}, Landroid/view/ViewGroup;->drawChild(Landroid/graphics/Canvas;Landroid/view/View;J)Z
  3416. move-result p1
  3417. return p1
  3418. .end method
  3419. .method eatRequestLayout()V
  3420. .locals 2
  3421. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  3422. const/4 v1, 0x1
  3423. add-int/2addr v0, v1
  3424. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  3425. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  3426. if-ne v0, v1, :cond_0
  3427. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  3428. if-nez v0, :cond_0
  3429. const/4 v0, 0x0
  3430. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  3431. :cond_0
  3432. return-void
  3433. .end method
  3434. .method ensureBottomGlow()V
  3435. .locals 4
  3436. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3437. if-eqz v0, :cond_0
  3438. return-void
  3439. :cond_0
  3440. new-instance v0, Landroid/support/v4/widget/EdgeEffectCompat;
  3441. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  3442. move-result-object v1
  3443. invoke-direct {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
  3444. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3445. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  3446. if-eqz v0, :cond_1
  3447. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3448. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  3449. move-result v1
  3450. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
  3451. move-result v2
  3452. sub-int/2addr v1, v2
  3453. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
  3454. move-result v2
  3455. sub-int/2addr v1, v2
  3456. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  3457. move-result v2
  3458. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
  3459. move-result v3
  3460. sub-int/2addr v2, v3
  3461. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
  3462. move-result v3
  3463. sub-int/2addr v2, v3
  3464. goto :goto_0
  3465. :cond_1
  3466. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3467. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  3468. move-result v1
  3469. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  3470. move-result v2
  3471. :goto_0
  3472. invoke-virtual {v0, v1, v2}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
  3473. return-void
  3474. .end method
  3475. .method ensureLeftGlow()V
  3476. .locals 4
  3477. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3478. if-eqz v0, :cond_0
  3479. return-void
  3480. :cond_0
  3481. new-instance v0, Landroid/support/v4/widget/EdgeEffectCompat;
  3482. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  3483. move-result-object v1
  3484. invoke-direct {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
  3485. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3486. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  3487. if-eqz v0, :cond_1
  3488. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3489. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  3490. move-result v1
  3491. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
  3492. move-result v2
  3493. sub-int/2addr v1, v2
  3494. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
  3495. move-result v2
  3496. sub-int/2addr v1, v2
  3497. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  3498. move-result v2
  3499. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
  3500. move-result v3
  3501. sub-int/2addr v2, v3
  3502. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
  3503. move-result v3
  3504. sub-int/2addr v2, v3
  3505. goto :goto_0
  3506. :cond_1
  3507. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3508. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  3509. move-result v1
  3510. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  3511. move-result v2
  3512. :goto_0
  3513. invoke-virtual {v0, v1, v2}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
  3514. return-void
  3515. .end method
  3516. .method ensureRightGlow()V
  3517. .locals 4
  3518. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3519. if-eqz v0, :cond_0
  3520. return-void
  3521. :cond_0
  3522. new-instance v0, Landroid/support/v4/widget/EdgeEffectCompat;
  3523. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  3524. move-result-object v1
  3525. invoke-direct {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
  3526. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3527. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  3528. if-eqz v0, :cond_1
  3529. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3530. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  3531. move-result v1
  3532. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
  3533. move-result v2
  3534. sub-int/2addr v1, v2
  3535. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
  3536. move-result v2
  3537. sub-int/2addr v1, v2
  3538. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  3539. move-result v2
  3540. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
  3541. move-result v3
  3542. sub-int/2addr v2, v3
  3543. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
  3544. move-result v3
  3545. sub-int/2addr v2, v3
  3546. goto :goto_0
  3547. :cond_1
  3548. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3549. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  3550. move-result v1
  3551. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  3552. move-result v2
  3553. :goto_0
  3554. invoke-virtual {v0, v1, v2}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
  3555. return-void
  3556. .end method
  3557. .method ensureTopGlow()V
  3558. .locals 4
  3559. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3560. if-eqz v0, :cond_0
  3561. return-void
  3562. :cond_0
  3563. new-instance v0, Landroid/support/v4/widget/EdgeEffectCompat;
  3564. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  3565. move-result-object v1
  3566. invoke-direct {v0, v1}, Landroid/support/v4/widget/EdgeEffectCompat;-><init>(Landroid/content/Context;)V
  3567. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3568. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  3569. if-eqz v0, :cond_1
  3570. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3571. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  3572. move-result v1
  3573. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I
  3574. move-result v2
  3575. sub-int/2addr v1, v2
  3576. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I
  3577. move-result v2
  3578. sub-int/2addr v1, v2
  3579. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  3580. move-result v2
  3581. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I
  3582. move-result v3
  3583. sub-int/2addr v2, v3
  3584. invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I
  3585. move-result v3
  3586. sub-int/2addr v2, v3
  3587. goto :goto_0
  3588. :cond_1
  3589. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  3590. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  3591. move-result v1
  3592. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  3593. move-result v2
  3594. :goto_0
  3595. invoke-virtual {v0, v1, v2}, Landroid/support/v4/widget/EdgeEffectCompat;->setSize(II)V
  3596. return-void
  3597. .end method
  3598. .method public findChildViewUnder(FF)Landroid/view/View;
  3599. .locals 5
  3600. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3601. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  3602. move-result v0
  3603. add-int/lit8 v0, v0, -0x1
  3604. :goto_0
  3605. if-ltz v0, :cond_1
  3606. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3607. invoke-virtual {v1, v0}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  3608. move-result-object v1
  3609. invoke-static {v1}, Landroid/support/v4/view/ViewCompat;->getTranslationX(Landroid/view/View;)F
  3610. move-result v2
  3611. invoke-static {v1}, Landroid/support/v4/view/ViewCompat;->getTranslationY(Landroid/view/View;)F
  3612. move-result v3
  3613. invoke-virtual {v1}, Landroid/view/View;->getLeft()I
  3614. move-result v4
  3615. int-to-float v4, v4
  3616. add-float/2addr v4, v2
  3617. cmpl-float v4, p1, v4
  3618. if-ltz v4, :cond_0
  3619. invoke-virtual {v1}, Landroid/view/View;->getRight()I
  3620. move-result v4
  3621. int-to-float v4, v4
  3622. add-float/2addr v4, v2
  3623. cmpg-float v2, p1, v4
  3624. if-gtz v2, :cond_0
  3625. invoke-virtual {v1}, Landroid/view/View;->getTop()I
  3626. move-result v2
  3627. int-to-float v2, v2
  3628. add-float/2addr v2, v3
  3629. cmpl-float v2, p2, v2
  3630. if-ltz v2, :cond_0
  3631. invoke-virtual {v1}, Landroid/view/View;->getBottom()I
  3632. move-result v2
  3633. int-to-float v2, v2
  3634. add-float/2addr v2, v3
  3635. cmpg-float v2, p2, v2
  3636. if-gtz v2, :cond_0
  3637. return-object v1
  3638. :cond_0
  3639. add-int/lit8 v0, v0, -0x1
  3640. goto :goto_0
  3641. :cond_1
  3642. const/4 p1, 0x0
  3643. return-object p1
  3644. .end method
  3645. .method public findContainingItemView(Landroid/view/View;)Landroid/view/View;
  3646. .locals 2
  3647. .annotation build Landroid/support/annotation/Nullable;
  3648. .end annotation
  3649. :goto_0
  3650. invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
  3651. move-result-object v0
  3652. if-eqz v0, :cond_0
  3653. if-eq v0, p0, :cond_0
  3654. instance-of v1, v0, Landroid/view/View;
  3655. if-eqz v1, :cond_0
  3656. move-object p1, v0
  3657. check-cast p1, Landroid/view/View;
  3658. goto :goto_0
  3659. :cond_0
  3660. if-ne v0, p0, :cond_1
  3661. goto :goto_1
  3662. :cond_1
  3663. const/4 p1, 0x0
  3664. :goto_1
  3665. return-object p1
  3666. .end method
  3667. .method public findContainingViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3668. .locals 0
  3669. .annotation build Landroid/support/annotation/Nullable;
  3670. .end annotation
  3671. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View;
  3672. move-result-object p1
  3673. if-nez p1, :cond_0
  3674. const/4 p1, 0x0
  3675. goto :goto_0
  3676. :cond_0
  3677. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3678. move-result-object p1
  3679. :goto_0
  3680. return-object p1
  3681. .end method
  3682. .method public findViewHolderForAdapterPosition(I)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3683. .locals 5
  3684. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  3685. const/4 v1, 0x0
  3686. if-eqz v0, :cond_0
  3687. return-object v1
  3688. :cond_0
  3689. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3690. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  3691. move-result v0
  3692. const/4 v2, 0x0
  3693. :goto_0
  3694. if-ge v2, v0, :cond_3
  3695. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3696. invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  3697. move-result-object v3
  3698. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3699. move-result-object v3
  3700. if-eqz v3, :cond_2
  3701. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
  3702. move-result v4
  3703. if-nez v4, :cond_2
  3704. invoke-direct {p0, v3}, Landroid/support/v7/widget/RecyclerView;->getAdapterPositionFor(Landroid/support/v7/widget/RecyclerView$ViewHolder;)I
  3705. move-result v4
  3706. if-ne v4, p1, :cond_2
  3707. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3708. iget-object v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  3709. invoke-virtual {v1, v4}, Landroid/support/v7/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
  3710. move-result v1
  3711. if-eqz v1, :cond_1
  3712. move-object v1, v3
  3713. goto :goto_1
  3714. :cond_1
  3715. return-object v3
  3716. :cond_2
  3717. :goto_1
  3718. add-int/lit8 v2, v2, 0x1
  3719. goto :goto_0
  3720. :cond_3
  3721. return-object v1
  3722. .end method
  3723. .method public findViewHolderForItemId(J)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3724. .locals 7
  3725. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  3726. const/4 v1, 0x0
  3727. if-eqz v0, :cond_3
  3728. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
  3729. move-result v0
  3730. if-nez v0, :cond_0
  3731. goto :goto_2
  3732. :cond_0
  3733. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3734. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  3735. move-result v0
  3736. const/4 v2, 0x0
  3737. :goto_0
  3738. if-ge v2, v0, :cond_3
  3739. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3740. invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  3741. move-result-object v3
  3742. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3743. move-result-object v3
  3744. if-eqz v3, :cond_2
  3745. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
  3746. move-result v4
  3747. if-nez v4, :cond_2
  3748. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getItemId()J
  3749. move-result-wide v4
  3750. cmp-long v6, v4, p1
  3751. if-nez v6, :cond_2
  3752. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3753. iget-object v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  3754. invoke-virtual {v1, v4}, Landroid/support/v7/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
  3755. move-result v1
  3756. if-eqz v1, :cond_1
  3757. move-object v1, v3
  3758. goto :goto_1
  3759. :cond_1
  3760. return-object v3
  3761. :cond_2
  3762. :goto_1
  3763. add-int/lit8 v2, v2, 0x1
  3764. goto :goto_0
  3765. :cond_3
  3766. :goto_2
  3767. return-object v1
  3768. .end method
  3769. .method public findViewHolderForLayoutPosition(I)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3770. .locals 1
  3771. const/4 v0, 0x0
  3772. invoke-virtual {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;->findViewHolderForPosition(IZ)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3773. move-result-object p1
  3774. return-object p1
  3775. .end method
  3776. .method public findViewHolderForPosition(I)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3777. .locals 1
  3778. .annotation runtime Ljava/lang/Deprecated;
  3779. .end annotation
  3780. const/4 v0, 0x0
  3781. invoke-virtual {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;->findViewHolderForPosition(IZ)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3782. move-result-object p1
  3783. return-object p1
  3784. .end method
  3785. .method findViewHolderForPosition(IZ)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3786. .locals 5
  3787. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3788. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  3789. move-result v0
  3790. const/4 v1, 0x0
  3791. const/4 v2, 0x0
  3792. :goto_0
  3793. if-ge v2, v0, :cond_4
  3794. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3795. invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  3796. move-result-object v3
  3797. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  3798. move-result-object v3
  3799. if-eqz v3, :cond_3
  3800. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isRemoved()Z
  3801. move-result v4
  3802. if-nez v4, :cond_3
  3803. if-eqz p2, :cond_0
  3804. iget v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
  3805. if-eq v4, p1, :cond_1
  3806. goto :goto_1
  3807. :cond_0
  3808. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getLayoutPosition()I
  3809. move-result v4
  3810. if-eq v4, p1, :cond_1
  3811. goto :goto_1
  3812. :cond_1
  3813. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  3814. iget-object v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;
  3815. invoke-virtual {v1, v4}, Landroid/support/v7/widget/ChildHelper;->isHidden(Landroid/view/View;)Z
  3816. move-result v1
  3817. if-eqz v1, :cond_2
  3818. move-object v1, v3
  3819. goto :goto_1
  3820. :cond_2
  3821. return-object v3
  3822. :cond_3
  3823. :goto_1
  3824. add-int/lit8 v2, v2, 0x1
  3825. goto :goto_0
  3826. :cond_4
  3827. return-object v1
  3828. .end method
  3829. .method public fling(II)Z
  3830. .locals 6
  3831. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3832. const/4 v1, 0x0
  3833. if-nez v0, :cond_0
  3834. const-string p1, "RecyclerView"
  3835. const-string p2, "Cannot fling without a LayoutManager set. Call setLayoutManager with a non-null argument."
  3836. invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  3837. return v1
  3838. :cond_0
  3839. iget-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  3840. if-eqz v2, :cond_1
  3841. return v1
  3842. :cond_1
  3843. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  3844. move-result v0
  3845. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3846. invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  3847. move-result v2
  3848. if-eqz v0, :cond_2
  3849. invoke-static {p1}, Ljava/lang/Math;->abs(I)I
  3850. move-result v3
  3851. iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mMinFlingVelocity:I
  3852. if-ge v3, v4, :cond_3
  3853. :cond_2
  3854. const/4 p1, 0x0
  3855. :cond_3
  3856. if-eqz v2, :cond_4
  3857. invoke-static {p2}, Ljava/lang/Math;->abs(I)I
  3858. move-result v3
  3859. iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mMinFlingVelocity:I
  3860. if-ge v3, v4, :cond_5
  3861. :cond_4
  3862. const/4 p2, 0x0
  3863. :cond_5
  3864. if-nez p1, :cond_6
  3865. if-nez p2, :cond_6
  3866. return v1
  3867. :cond_6
  3868. int-to-float v3, p1
  3869. int-to-float v4, p2
  3870. invoke-virtual {p0, v3, v4}, Landroid/support/v7/widget/RecyclerView;->dispatchNestedPreFling(FF)Z
  3871. move-result v5
  3872. if-nez v5, :cond_9
  3873. const/4 v5, 0x1
  3874. if-nez v0, :cond_8
  3875. if-eqz v2, :cond_7
  3876. goto :goto_0
  3877. :cond_7
  3878. const/4 v0, 0x0
  3879. goto :goto_1
  3880. :cond_8
  3881. :goto_0
  3882. const/4 v0, 0x1
  3883. :goto_1
  3884. invoke-virtual {p0, v3, v4, v0}, Landroid/support/v7/widget/RecyclerView;->dispatchNestedFling(FFZ)Z
  3885. if-eqz v0, :cond_9
  3886. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
  3887. neg-int v1, v0
  3888. invoke-static {p1, v0}, Ljava/lang/Math;->min(II)I
  3889. move-result p1
  3890. invoke-static {v1, p1}, Ljava/lang/Math;->max(II)I
  3891. move-result p1
  3892. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
  3893. neg-int v1, v0
  3894. invoke-static {p2, v0}, Ljava/lang/Math;->min(II)I
  3895. move-result p2
  3896. invoke-static {v1, p2}, Ljava/lang/Math;->max(II)I
  3897. move-result p2
  3898. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  3899. invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$ViewFlinger;->fling(II)V
  3900. return v5
  3901. :cond_9
  3902. return v1
  3903. .end method
  3904. .method public focusSearch(Landroid/view/View;I)Landroid/view/View;
  3905. .locals 7
  3906. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3907. invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onInterceptFocusSearch(Landroid/view/View;I)Landroid/view/View;
  3908. move-result-object v0
  3909. if-eqz v0, :cond_0
  3910. return-object v0
  3911. :cond_0
  3912. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  3913. const/4 v1, 0x1
  3914. const/4 v2, 0x0
  3915. if-eqz v0, :cond_1
  3916. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3917. if-eqz v0, :cond_1
  3918. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
  3919. move-result v0
  3920. if-nez v0, :cond_1
  3921. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  3922. if-nez v0, :cond_1
  3923. const/4 v0, 0x1
  3924. goto :goto_0
  3925. :cond_1
  3926. const/4 v0, 0x0
  3927. :goto_0
  3928. invoke-static {}, Landroid/view/FocusFinder;->getInstance()Landroid/view/FocusFinder;
  3929. move-result-object v3
  3930. const/4 v4, 0x0
  3931. if-eqz v0, :cond_c
  3932. const/4 v5, 0x2
  3933. if-eq p2, v5, :cond_2
  3934. if-ne p2, v1, :cond_c
  3935. :cond_2
  3936. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3937. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  3938. move-result v0
  3939. if-eqz v0, :cond_4
  3940. if-ne p2, v5, :cond_3
  3941. const/16 v0, 0x82
  3942. goto :goto_1
  3943. :cond_3
  3944. const/16 v0, 0x21
  3945. :goto_1
  3946. invoke-virtual {v3, p0, p1, v0}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
  3947. move-result-object v0
  3948. if-nez v0, :cond_4
  3949. const/4 v0, 0x1
  3950. goto :goto_2
  3951. :cond_4
  3952. const/4 v0, 0x0
  3953. :goto_2
  3954. if-nez v0, :cond_9
  3955. iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3956. invoke-virtual {v6}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  3957. move-result v6
  3958. if-eqz v6, :cond_9
  3959. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3960. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getLayoutDirection()I
  3961. move-result v0
  3962. if-ne v0, v1, :cond_5
  3963. const/4 v0, 0x1
  3964. goto :goto_3
  3965. :cond_5
  3966. const/4 v0, 0x0
  3967. :goto_3
  3968. if-ne p2, v5, :cond_6
  3969. const/4 v5, 0x1
  3970. goto :goto_4
  3971. :cond_6
  3972. const/4 v5, 0x0
  3973. :goto_4
  3974. xor-int/2addr v0, v5
  3975. if-eqz v0, :cond_7
  3976. const/16 v0, 0x42
  3977. goto :goto_5
  3978. :cond_7
  3979. const/16 v0, 0x11
  3980. :goto_5
  3981. invoke-virtual {v3, p0, p1, v0}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
  3982. move-result-object v0
  3983. if-nez v0, :cond_8
  3984. const/4 v0, 0x1
  3985. goto :goto_6
  3986. :cond_8
  3987. const/4 v0, 0x0
  3988. :cond_9
  3989. :goto_6
  3990. if-eqz v0, :cond_b
  3991. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->consumePendingUpdateOperations()V
  3992. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View;
  3993. move-result-object v0
  3994. if-nez v0, :cond_a
  3995. return-object v4
  3996. :cond_a
  3997. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  3998. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  3999. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4000. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  4001. 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;
  4002. invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  4003. :cond_b
  4004. invoke-virtual {v3, p0, p1, p2}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
  4005. move-result-object v0
  4006. goto :goto_7
  4007. :cond_c
  4008. invoke-virtual {v3, p0, p1, p2}, Landroid/view/FocusFinder;->findNextFocus(Landroid/view/ViewGroup;Landroid/view/View;I)Landroid/view/View;
  4009. move-result-object v1
  4010. if-nez v1, :cond_e
  4011. if-eqz v0, :cond_e
  4012. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->consumePendingUpdateOperations()V
  4013. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->findContainingItemView(Landroid/view/View;)Landroid/view/View;
  4014. move-result-object v0
  4015. if-nez v0, :cond_d
  4016. return-object v4
  4017. :cond_d
  4018. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  4019. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4020. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4021. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  4022. 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;
  4023. move-result-object v0
  4024. invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  4025. goto :goto_7
  4026. :cond_e
  4027. move-object v0, v1
  4028. :goto_7
  4029. invoke-direct {p0, p1, v0, p2}, Landroid/support/v7/widget/RecyclerView;->isPreferredNextFocus(Landroid/view/View;Landroid/view/View;I)Z
  4030. move-result v1
  4031. if-eqz v1, :cond_f
  4032. goto :goto_8
  4033. :cond_f
  4034. invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->focusSearch(Landroid/view/View;I)Landroid/view/View;
  4035. move-result-object v0
  4036. :goto_8
  4037. return-object v0
  4038. .end method
  4039. .method protected generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams;
  4040. .locals 2
  4041. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4042. if-eqz v0, :cond_0
  4043. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->generateDefaultLayoutParams()Landroid/support/v7/widget/RecyclerView$LayoutParams;
  4044. move-result-object v0
  4045. return-object v0
  4046. :cond_0
  4047. new-instance v0, Ljava/lang/IllegalStateException;
  4048. const-string v1, "RecyclerView has no LayoutManager"
  4049. invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  4050. throw v0
  4051. .end method
  4052. .method public generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams;
  4053. .locals 2
  4054. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4055. if-eqz v0, :cond_0
  4056. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  4057. move-result-object v1
  4058. invoke-virtual {v0, v1, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->generateLayoutParams(Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/support/v7/widget/RecyclerView$LayoutParams;
  4059. move-result-object p1
  4060. return-object p1
  4061. :cond_0
  4062. new-instance p1, Ljava/lang/IllegalStateException;
  4063. const-string v0, "RecyclerView has no LayoutManager"
  4064. invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  4065. throw p1
  4066. .end method
  4067. .method protected generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams;
  4068. .locals 1
  4069. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4070. if-eqz v0, :cond_0
  4071. invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/support/v7/widget/RecyclerView$LayoutParams;
  4072. move-result-object p1
  4073. return-object p1
  4074. :cond_0
  4075. new-instance p1, Ljava/lang/IllegalStateException;
  4076. const-string v0, "RecyclerView has no LayoutManager"
  4077. invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  4078. throw p1
  4079. .end method
  4080. .method public getAdapter()Landroid/support/v7/widget/RecyclerView$Adapter;
  4081. .locals 1
  4082. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  4083. return-object v0
  4084. .end method
  4085. .method public getBaseline()I
  4086. .locals 1
  4087. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4088. if-eqz v0, :cond_0
  4089. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->getBaseline()I
  4090. move-result v0
  4091. return v0
  4092. :cond_0
  4093. invoke-super {p0}, Landroid/view/ViewGroup;->getBaseline()I
  4094. move-result v0
  4095. return v0
  4096. .end method
  4097. .method getChangedHolderKey(Landroid/support/v7/widget/RecyclerView$ViewHolder;)J
  4098. .locals 2
  4099. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  4100. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
  4101. move-result v0
  4102. if-eqz v0, :cond_0
  4103. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getItemId()J
  4104. move-result-wide v0
  4105. goto :goto_0
  4106. :cond_0
  4107. iget p1, p1, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
  4108. int-to-long v0, p1
  4109. :goto_0
  4110. return-wide v0
  4111. .end method
  4112. .method public getChildAdapterPosition(Landroid/view/View;)I
  4113. .locals 0
  4114. invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4115. move-result-object p1
  4116. if-eqz p1, :cond_0
  4117. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getAdapterPosition()I
  4118. move-result p1
  4119. goto :goto_0
  4120. :cond_0
  4121. const/4 p1, -0x1
  4122. :goto_0
  4123. return p1
  4124. .end method
  4125. .method protected getChildDrawingOrder(II)I
  4126. .locals 1
  4127. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
  4128. if-nez v0, :cond_0
  4129. invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->getChildDrawingOrder(II)I
  4130. move-result p1
  4131. return p1
  4132. :cond_0
  4133. invoke-interface {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;->onGetChildDrawingOrder(II)I
  4134. move-result p1
  4135. return p1
  4136. .end method
  4137. .method public getChildItemId(Landroid/view/View;)J
  4138. .locals 3
  4139. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  4140. const-wide/16 v1, -0x1
  4141. if-eqz v0, :cond_1
  4142. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->hasStableIds()Z
  4143. move-result v0
  4144. if-nez v0, :cond_0
  4145. goto :goto_0
  4146. :cond_0
  4147. invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4148. move-result-object p1
  4149. if-eqz p1, :cond_1
  4150. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getItemId()J
  4151. move-result-wide v1
  4152. :cond_1
  4153. :goto_0
  4154. return-wide v1
  4155. .end method
  4156. .method public getChildLayoutPosition(Landroid/view/View;)I
  4157. .locals 0
  4158. invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4159. move-result-object p1
  4160. if-eqz p1, :cond_0
  4161. invoke-virtual {p1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->getLayoutPosition()I
  4162. move-result p1
  4163. goto :goto_0
  4164. :cond_0
  4165. const/4 p1, -0x1
  4166. :goto_0
  4167. return p1
  4168. .end method
  4169. .method public getChildPosition(Landroid/view/View;)I
  4170. .locals 0
  4171. .annotation runtime Ljava/lang/Deprecated;
  4172. .end annotation
  4173. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->getChildAdapterPosition(Landroid/view/View;)I
  4174. move-result p1
  4175. return p1
  4176. .end method
  4177. .method public getChildViewHolder(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4178. .locals 3
  4179. invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
  4180. move-result-object v0
  4181. if-eqz v0, :cond_1
  4182. if-ne v0, p0, :cond_0
  4183. goto :goto_0
  4184. :cond_0
  4185. new-instance v0, Ljava/lang/IllegalArgumentException;
  4186. new-instance v1, Ljava/lang/StringBuilder;
  4187. invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
  4188. const-string v2, "View "
  4189. invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  4190. invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  4191. const-string p1, " is not a direct child of "
  4192. invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  4193. invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  4194. invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  4195. move-result-object p1
  4196. invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
  4197. throw v0
  4198. :cond_1
  4199. :goto_0
  4200. invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4201. move-result-object p1
  4202. return-object p1
  4203. .end method
  4204. .method public getCompatAccessibilityDelegate()Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
  4205. .locals 1
  4206. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
  4207. return-object v0
  4208. .end method
  4209. .method public getItemAnimator()Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  4210. .locals 1
  4211. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  4212. return-object v0
  4213. .end method
  4214. .method getItemDecorInsetsForChild(Landroid/view/View;)Landroid/graphics/Rect;
  4215. .locals 8
  4216. invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
  4217. move-result-object v0
  4218. check-cast v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;
  4219. iget-boolean v1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
  4220. if-nez v1, :cond_0
  4221. iget-object p1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect;
  4222. return-object p1
  4223. :cond_0
  4224. iget-object v1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect;
  4225. const/4 v2, 0x0
  4226. invoke-virtual {v1, v2, v2, v2, v2}, Landroid/graphics/Rect;->set(IIII)V
  4227. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  4228. invoke-virtual {v3}, Ljava/util/ArrayList;->size()I
  4229. move-result v3
  4230. const/4 v4, 0x0
  4231. :goto_0
  4232. if-ge v4, v3, :cond_1
  4233. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  4234. invoke-virtual {v5, v2, v2, v2, v2}, Landroid/graphics/Rect;->set(IIII)V
  4235. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  4236. invoke-virtual {v5, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
  4237. move-result-object v5
  4238. check-cast v5, Landroid/support/v7/widget/RecyclerView$ItemDecoration;
  4239. iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  4240. iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  4241. 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
  4242. iget v5, v1, Landroid/graphics/Rect;->left:I
  4243. iget-object v6, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  4244. iget v7, v6, Landroid/graphics/Rect;->left:I
  4245. add-int/2addr v5, v7
  4246. iput v5, v1, Landroid/graphics/Rect;->left:I
  4247. iget v5, v1, Landroid/graphics/Rect;->top:I
  4248. iget v7, v6, Landroid/graphics/Rect;->top:I
  4249. add-int/2addr v5, v7
  4250. iput v5, v1, Landroid/graphics/Rect;->top:I
  4251. iget v5, v1, Landroid/graphics/Rect;->right:I
  4252. iget v7, v6, Landroid/graphics/Rect;->right:I
  4253. add-int/2addr v5, v7
  4254. iput v5, v1, Landroid/graphics/Rect;->right:I
  4255. iget v5, v1, Landroid/graphics/Rect;->bottom:I
  4256. iget v6, v6, Landroid/graphics/Rect;->bottom:I
  4257. add-int/2addr v5, v6
  4258. iput v5, v1, Landroid/graphics/Rect;->bottom:I
  4259. add-int/lit8 v4, v4, 0x1
  4260. goto :goto_0
  4261. :cond_1
  4262. iput-boolean v2, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
  4263. return-object v1
  4264. .end method
  4265. .method public getLayoutManager()Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4266. .locals 1
  4267. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4268. return-object v0
  4269. .end method
  4270. .method public getMaxFlingVelocity()I
  4271. .locals 1
  4272. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
  4273. return v0
  4274. .end method
  4275. .method public getMinFlingVelocity()I
  4276. .locals 1
  4277. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mMinFlingVelocity:I
  4278. return v0
  4279. .end method
  4280. .method public getPreserveFocusAfterLayout()Z
  4281. .locals 1
  4282. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
  4283. return v0
  4284. .end method
  4285. .method public getRecycledViewPool()Landroid/support/v7/widget/RecyclerView$RecycledViewPool;
  4286. .locals 1
  4287. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4288. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->getRecycledViewPool()Landroid/support/v7/widget/RecyclerView$RecycledViewPool;
  4289. move-result-object v0
  4290. return-object v0
  4291. .end method
  4292. .method public getScrollState()I
  4293. .locals 1
  4294. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  4295. return v0
  4296. .end method
  4297. .method public hasFixedSize()Z
  4298. .locals 1
  4299. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mHasFixedSize:Z
  4300. return v0
  4301. .end method
  4302. .method public hasNestedScrollingParent()Z
  4303. .locals 1
  4304. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  4305. move-result-object v0
  4306. invoke-virtual {v0}, Landroid/support/v4/view/NestedScrollingChildHelper;->hasNestedScrollingParent()Z
  4307. move-result v0
  4308. return v0
  4309. .end method
  4310. .method public hasPendingAdapterUpdates()Z
  4311. .locals 1
  4312. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
  4313. if-eqz v0, :cond_1
  4314. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mDataSetHasChangedAfterLayout:Z
  4315. if-nez v0, :cond_1
  4316. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  4317. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->hasPendingUpdates()Z
  4318. move-result v0
  4319. if-eqz v0, :cond_0
  4320. goto :goto_0
  4321. :cond_0
  4322. const/4 v0, 0x0
  4323. goto :goto_1
  4324. :cond_1
  4325. :goto_0
  4326. const/4 v0, 0x1
  4327. :goto_1
  4328. return v0
  4329. .end method
  4330. .method initAdapterManager()V
  4331. .locals 2
  4332. new-instance v0, Landroid/support/v7/widget/AdapterHelper;
  4333. new-instance v1, Landroid/support/v7/widget/RecyclerView$6;
  4334. invoke-direct {v1, p0}, Landroid/support/v7/widget/RecyclerView$6;-><init>(Landroid/support/v7/widget/RecyclerView;)V
  4335. invoke-direct {v0, v1}, Landroid/support/v7/widget/AdapterHelper;-><init>(Landroid/support/v7/widget/AdapterHelper$Callback;)V
  4336. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  4337. return-void
  4338. .end method
  4339. .method invalidateGlows()V
  4340. .locals 1
  4341. const/4 v0, 0x0
  4342. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mBottomGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  4343. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTopGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  4344. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRightGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  4345. iput-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLeftGlow:Landroid/support/v4/widget/EdgeEffectCompat;
  4346. return-void
  4347. .end method
  4348. .method public invalidateItemDecorations()V
  4349. .locals 2
  4350. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  4351. invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
  4352. move-result v0
  4353. if-nez v0, :cond_0
  4354. return-void
  4355. :cond_0
  4356. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4357. if-eqz v0, :cond_1
  4358. const-string v1, "Cannot invalidate item decorations during a scroll or layout"
  4359. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V
  4360. :cond_1
  4361. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markItemDecorInsetsDirty()V
  4362. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  4363. return-void
  4364. .end method
  4365. .method isAccessibilityEnabled()Z
  4366. .locals 1
  4367. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityManager:Landroid/view/accessibility/AccessibilityManager;
  4368. if-eqz v0, :cond_0
  4369. invoke-virtual {v0}, Landroid/view/accessibility/AccessibilityManager;->isEnabled()Z
  4370. move-result v0
  4371. if-eqz v0, :cond_0
  4372. const/4 v0, 0x1
  4373. goto :goto_0
  4374. :cond_0
  4375. const/4 v0, 0x0
  4376. :goto_0
  4377. return v0
  4378. .end method
  4379. .method public isAnimating()Z
  4380. .locals 1
  4381. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  4382. if-eqz v0, :cond_0
  4383. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->isRunning()Z
  4384. move-result v0
  4385. if-eqz v0, :cond_0
  4386. const/4 v0, 0x1
  4387. goto :goto_0
  4388. :cond_0
  4389. const/4 v0, 0x0
  4390. :goto_0
  4391. return v0
  4392. .end method
  4393. .method public isAttachedToWindow()Z
  4394. .locals 1
  4395. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
  4396. return v0
  4397. .end method
  4398. .method public isComputingLayout()Z
  4399. .locals 1
  4400. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  4401. if-lez v0, :cond_0
  4402. const/4 v0, 0x1
  4403. goto :goto_0
  4404. :cond_0
  4405. const/4 v0, 0x0
  4406. :goto_0
  4407. return v0
  4408. .end method
  4409. .method public isLayoutFrozen()Z
  4410. .locals 1
  4411. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  4412. return v0
  4413. .end method
  4414. .method public isNestedScrollingEnabled()Z
  4415. .locals 1
  4416. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  4417. move-result-object v0
  4418. invoke-virtual {v0}, Landroid/support/v4/view/NestedScrollingChildHelper;->isNestedScrollingEnabled()Z
  4419. move-result v0
  4420. return v0
  4421. .end method
  4422. .method markItemDecorInsetsDirty()V
  4423. .locals 4
  4424. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4425. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  4426. move-result v0
  4427. const/4 v1, 0x0
  4428. :goto_0
  4429. if-ge v1, v0, :cond_0
  4430. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4431. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  4432. move-result-object v2
  4433. invoke-virtual {v2}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
  4434. move-result-object v2
  4435. check-cast v2, Landroid/support/v7/widget/RecyclerView$LayoutParams;
  4436. const/4 v3, 0x1
  4437. iput-boolean v3, v2, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
  4438. add-int/lit8 v1, v1, 0x1
  4439. goto :goto_0
  4440. :cond_0
  4441. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4442. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->markItemDecorInsetsDirty()V
  4443. return-void
  4444. .end method
  4445. .method markKnownViewsInvalid()V
  4446. .locals 4
  4447. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4448. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  4449. move-result v0
  4450. const/4 v1, 0x0
  4451. :goto_0
  4452. if-ge v1, v0, :cond_1
  4453. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4454. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  4455. move-result-object v2
  4456. invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4457. move-result-object v2
  4458. if-eqz v2, :cond_0
  4459. invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  4460. move-result v3
  4461. if-nez v3, :cond_0
  4462. const/4 v3, 0x6
  4463. invoke-virtual {v2, v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->addFlags(I)V
  4464. :cond_0
  4465. add-int/lit8 v1, v1, 0x1
  4466. goto :goto_0
  4467. :cond_1
  4468. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markItemDecorInsetsDirty()V
  4469. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4470. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->markKnownViewsInvalid()V
  4471. return-void
  4472. .end method
  4473. .method public offsetChildrenHorizontal(I)V
  4474. .locals 3
  4475. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4476. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  4477. move-result v0
  4478. const/4 v1, 0x0
  4479. :goto_0
  4480. if-ge v1, v0, :cond_0
  4481. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4482. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  4483. move-result-object v2
  4484. invoke-virtual {v2, p1}, Landroid/view/View;->offsetLeftAndRight(I)V
  4485. add-int/lit8 v1, v1, 0x1
  4486. goto :goto_0
  4487. :cond_0
  4488. return-void
  4489. .end method
  4490. .method public offsetChildrenVertical(I)V
  4491. .locals 3
  4492. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4493. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getChildCount()I
  4494. move-result v0
  4495. const/4 v1, 0x0
  4496. :goto_0
  4497. if-ge v1, v0, :cond_0
  4498. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4499. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getChildAt(I)Landroid/view/View;
  4500. move-result-object v2
  4501. invoke-virtual {v2, p1}, Landroid/view/View;->offsetTopAndBottom(I)V
  4502. add-int/lit8 v1, v1, 0x1
  4503. goto :goto_0
  4504. :cond_0
  4505. return-void
  4506. .end method
  4507. .method offsetPositionRecordsForInsert(II)V
  4508. .locals 5
  4509. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4510. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  4511. move-result v0
  4512. const/4 v1, 0x0
  4513. const/4 v2, 0x0
  4514. :goto_0
  4515. if-ge v2, v0, :cond_1
  4516. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4517. invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  4518. move-result-object v3
  4519. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4520. move-result-object v3
  4521. if-eqz v3, :cond_0
  4522. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  4523. move-result v4
  4524. if-nez v4, :cond_0
  4525. iget v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
  4526. if-lt v4, p1, :cond_0
  4527. invoke-virtual {v3, p2, v1}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V
  4528. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  4529. const/4 v4, 0x1
  4530. invoke-static {v3, v4}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  4531. :cond_0
  4532. add-int/lit8 v2, v2, 0x1
  4533. goto :goto_0
  4534. :cond_1
  4535. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4536. invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$Recycler;->offsetPositionRecordsForInsert(II)V
  4537. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  4538. return-void
  4539. .end method
  4540. .method offsetPositionRecordsForMove(II)V
  4541. .locals 9
  4542. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4543. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  4544. move-result v0
  4545. const/4 v1, 0x1
  4546. if-ge p1, p2, :cond_0
  4547. const/4 v2, -0x1
  4548. move v2, p1
  4549. move v3, p2
  4550. const/4 v4, -0x1
  4551. goto :goto_0
  4552. :cond_0
  4553. move v3, p1
  4554. move v2, p2
  4555. const/4 v4, 0x1
  4556. :goto_0
  4557. const/4 v5, 0x0
  4558. const/4 v6, 0x0
  4559. :goto_1
  4560. if-ge v6, v0, :cond_4
  4561. iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4562. invoke-virtual {v7, v6}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  4563. move-result-object v7
  4564. invoke-static {v7}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4565. move-result-object v7
  4566. if-eqz v7, :cond_3
  4567. iget v8, v7, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
  4568. if-lt v8, v2, :cond_3
  4569. if-le v8, v3, :cond_1
  4570. goto :goto_3
  4571. :cond_1
  4572. if-ne v8, p1, :cond_2
  4573. sub-int v8, p2, p1
  4574. invoke-virtual {v7, v8, v5}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V
  4575. goto :goto_2
  4576. :cond_2
  4577. invoke-virtual {v7, v4, v5}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V
  4578. :goto_2
  4579. iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  4580. invoke-static {v7, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  4581. :cond_3
  4582. :goto_3
  4583. add-int/lit8 v6, v6, 0x1
  4584. goto :goto_1
  4585. :cond_4
  4586. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4587. invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$Recycler;->offsetPositionRecordsForMove(II)V
  4588. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  4589. return-void
  4590. .end method
  4591. .method offsetPositionRecordsForRemove(IIZ)V
  4592. .locals 7
  4593. add-int v0, p1, p2
  4594. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4595. invoke-virtual {v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  4596. move-result v1
  4597. const/4 v2, 0x0
  4598. :goto_0
  4599. if-ge v2, v1, :cond_2
  4600. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  4601. invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  4602. move-result-object v3
  4603. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  4604. move-result-object v3
  4605. if-eqz v3, :cond_1
  4606. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  4607. move-result v4
  4608. if-nez v4, :cond_1
  4609. iget v4, v3, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
  4610. const/4 v5, 0x1
  4611. if-lt v4, v0, :cond_0
  4612. neg-int v4, p2
  4613. invoke-virtual {v3, v4, p3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->offsetPosition(IZ)V
  4614. :goto_1
  4615. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  4616. invoke-static {v3, v5}, Landroid/support/v7/widget/RecyclerView$State;->access$1802(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  4617. goto :goto_2
  4618. :cond_0
  4619. if-lt v4, p1, :cond_1
  4620. add-int/lit8 v4, p1, -0x1
  4621. neg-int v6, p2
  4622. invoke-virtual {v3, v4, v6, p3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->flagRemovedAndOffsetPosition(IIZ)V
  4623. goto :goto_1
  4624. :cond_1
  4625. :goto_2
  4626. add-int/lit8 v2, v2, 0x1
  4627. goto :goto_0
  4628. :cond_2
  4629. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4630. invoke-virtual {v0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView$Recycler;->offsetPositionRecordsForRemove(IIZ)V
  4631. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  4632. return-void
  4633. .end method
  4634. .method protected onAttachedToWindow()V
  4635. .locals 3
  4636. invoke-super {p0}, Landroid/view/ViewGroup;->onAttachedToWindow()V
  4637. const/4 v0, 0x0
  4638. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutOrScrollCounter:I
  4639. const/4 v1, 0x1
  4640. iput-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
  4641. iget-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
  4642. if-eqz v2, :cond_0
  4643. invoke-virtual {p0}, Landroid/view/ViewGroup;->isLayoutRequested()Z
  4644. move-result v2
  4645. if-nez v2, :cond_0
  4646. goto :goto_0
  4647. :cond_0
  4648. const/4 v1, 0x0
  4649. :goto_0
  4650. iput-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
  4651. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4652. if-eqz v1, :cond_1
  4653. invoke-virtual {v1, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->dispatchAttachedToWindow(Landroid/support/v7/widget/RecyclerView;)V
  4654. :cond_1
  4655. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mPostedAnimatorRunner:Z
  4656. return-void
  4657. .end method
  4658. .method public onChildAttachedToWindow(Landroid/view/View;)V
  4659. .locals 0
  4660. return-void
  4661. .end method
  4662. .method public onChildDetachedFromWindow(Landroid/view/View;)V
  4663. .locals 0
  4664. return-void
  4665. .end method
  4666. .method protected onDetachedFromWindow()V
  4667. .locals 2
  4668. invoke-super {p0}, Landroid/view/ViewGroup;->onDetachedFromWindow()V
  4669. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  4670. if-eqz v0, :cond_0
  4671. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->endAnimations()V
  4672. :cond_0
  4673. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopScroll()V
  4674. const/4 v0, 0x0
  4675. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
  4676. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4677. if-eqz v0, :cond_1
  4678. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4679. invoke-virtual {v0, p0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->dispatchDetachedFromWindow(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$Recycler;)V
  4680. :cond_1
  4681. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorRunner:Ljava/lang/Runnable;
  4682. invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->removeCallbacks(Ljava/lang/Runnable;)Z
  4683. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewInfoStore:Landroid/support/v7/widget/ViewInfoStore;
  4684. invoke-virtual {v0}, Landroid/support/v7/widget/ViewInfoStore;->onDetach()V
  4685. return-void
  4686. .end method
  4687. .method public onDraw(Landroid/graphics/Canvas;)V
  4688. .locals 4
  4689. invoke-super {p0, p1}, Landroid/view/ViewGroup;->onDraw(Landroid/graphics/Canvas;)V
  4690. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  4691. invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
  4692. move-result v0
  4693. const/4 v1, 0x0
  4694. :goto_0
  4695. if-ge v1, v0, :cond_0
  4696. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  4697. invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
  4698. move-result-object v2
  4699. check-cast v2, Landroid/support/v7/widget/RecyclerView$ItemDecoration;
  4700. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  4701. 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
  4702. add-int/lit8 v1, v1, 0x1
  4703. goto :goto_0
  4704. :cond_0
  4705. return-void
  4706. .end method
  4707. .method public onGenericMotionEvent(Landroid/view/MotionEvent;)Z
  4708. .locals 5
  4709. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4710. const/4 v1, 0x0
  4711. if-nez v0, :cond_0
  4712. return v1
  4713. :cond_0
  4714. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  4715. if-eqz v0, :cond_1
  4716. return v1
  4717. :cond_1
  4718. invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getSource(Landroid/view/MotionEvent;)I
  4719. move-result v0
  4720. and-int/lit8 v0, v0, 0x2
  4721. if-eqz v0, :cond_5
  4722. invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I
  4723. move-result v0
  4724. const/16 v2, 0x8
  4725. if-ne v0, v2, :cond_5
  4726. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4727. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  4728. move-result v0
  4729. const/4 v2, 0x0
  4730. if-eqz v0, :cond_2
  4731. const/16 v0, 0x9
  4732. invoke-static {p1, v0}, Landroid/support/v4/view/MotionEventCompat;->getAxisValue(Landroid/view/MotionEvent;I)F
  4733. move-result v0
  4734. neg-float v0, v0
  4735. goto :goto_0
  4736. :cond_2
  4737. const/4 v0, 0x0
  4738. :goto_0
  4739. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4740. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  4741. move-result v3
  4742. if-eqz v3, :cond_3
  4743. const/16 v3, 0xa
  4744. invoke-static {p1, v3}, Landroid/support/v4/view/MotionEventCompat;->getAxisValue(Landroid/view/MotionEvent;I)F
  4745. move-result v3
  4746. goto :goto_1
  4747. :cond_3
  4748. const/4 v3, 0x0
  4749. :goto_1
  4750. cmpl-float v4, v0, v2
  4751. if-nez v4, :cond_4
  4752. cmpl-float v2, v3, v2
  4753. if-eqz v2, :cond_5
  4754. :cond_4
  4755. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollFactor()F
  4756. move-result v2
  4757. mul-float v3, v3, v2
  4758. float-to-int v3, v3
  4759. mul-float v0, v0, v2
  4760. float-to-int v0, v0
  4761. invoke-virtual {p0, v3, v0, p1}, Landroid/support/v7/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z
  4762. :cond_5
  4763. return v1
  4764. .end method
  4765. .method public onInterceptTouchEvent(Landroid/view/MotionEvent;)Z
  4766. .locals 8
  4767. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  4768. const/4 v1, 0x0
  4769. if-eqz v0, :cond_0
  4770. return v1
  4771. :cond_0
  4772. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchOnItemTouchIntercept(Landroid/view/MotionEvent;)Z
  4773. move-result v0
  4774. const/4 v2, 0x1
  4775. if-eqz v0, :cond_1
  4776. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->cancelTouch()V
  4777. return v2
  4778. :cond_1
  4779. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4780. if-nez v0, :cond_2
  4781. return v1
  4782. :cond_2
  4783. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  4784. move-result v0
  4785. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4786. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  4787. move-result v3
  4788. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  4789. if-nez v4, :cond_3
  4790. invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker;
  4791. move-result-object v4
  4792. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  4793. :cond_3
  4794. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  4795. invoke-virtual {v4, p1}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
  4796. invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionMasked(Landroid/view/MotionEvent;)I
  4797. move-result v4
  4798. invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionIndex(Landroid/view/MotionEvent;)I
  4799. move-result v5
  4800. const/4 v6, 0x2
  4801. const/high16 v7, 0x3f000000 # 0.5f
  4802. if-eqz v4, :cond_e
  4803. if-eq v4, v2, :cond_d
  4804. if-eq v4, v6, :cond_7
  4805. const/4 v0, 0x3
  4806. if-eq v4, v0, :cond_6
  4807. const/4 v0, 0x5
  4808. if-eq v4, v0, :cond_5
  4809. const/4 v0, 0x6
  4810. if-eq v4, v0, :cond_4
  4811. goto/16 :goto_4
  4812. :cond_4
  4813. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onPointerUp(Landroid/view/MotionEvent;)V
  4814. goto/16 :goto_4
  4815. :cond_5
  4816. invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
  4817. move-result v0
  4818. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  4819. invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
  4820. move-result v0
  4821. add-float/2addr v0, v7
  4822. float-to-int v0, v0
  4823. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  4824. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
  4825. invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
  4826. move-result p1
  4827. add-float/2addr p1, v7
  4828. float-to-int p1, p1
  4829. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  4830. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
  4831. goto/16 :goto_4
  4832. :cond_6
  4833. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->cancelTouch()V
  4834. goto/16 :goto_4
  4835. :cond_7
  4836. iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  4837. invoke-static {p1, v4}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
  4838. move-result v4
  4839. if-gez v4, :cond_8
  4840. new-instance p1, Ljava/lang/StringBuilder;
  4841. invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
  4842. const-string v0, "Error processing scroll; pointer index for id "
  4843. invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  4844. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  4845. invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
  4846. const-string v0, " not found. Did any MotionEvents get skipped?"
  4847. invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  4848. invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  4849. move-result-object p1
  4850. const-string v0, "RecyclerView"
  4851. invoke-static {v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  4852. return v1
  4853. :cond_8
  4854. invoke-static {p1, v4}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
  4855. move-result v5
  4856. add-float/2addr v5, v7
  4857. float-to-int v5, v5
  4858. invoke-static {p1, v4}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
  4859. move-result p1
  4860. add-float/2addr p1, v7
  4861. float-to-int p1, p1
  4862. iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  4863. if-eq v4, v2, :cond_13
  4864. iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
  4865. sub-int/2addr v5, v4
  4866. iget v4, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
  4867. sub-int/2addr p1, v4
  4868. const/4 v4, -0x1
  4869. if-eqz v0, :cond_a
  4870. invoke-static {v5}, Ljava/lang/Math;->abs(I)I
  4871. move-result v0
  4872. iget v6, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
  4873. if-le v0, v6, :cond_a
  4874. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
  4875. if-gez v5, :cond_9
  4876. const/4 v5, -0x1
  4877. goto :goto_0
  4878. :cond_9
  4879. const/4 v5, 0x1
  4880. :goto_0
  4881. mul-int v6, v6, v5
  4882. add-int/2addr v0, v6
  4883. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  4884. const/4 v0, 0x1
  4885. goto :goto_1
  4886. :cond_a
  4887. const/4 v0, 0x0
  4888. :goto_1
  4889. if-eqz v3, :cond_c
  4890. invoke-static {p1}, Ljava/lang/Math;->abs(I)I
  4891. move-result v3
  4892. iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
  4893. if-le v3, v5, :cond_c
  4894. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
  4895. if-gez p1, :cond_b
  4896. goto :goto_2
  4897. :cond_b
  4898. const/4 v4, 0x1
  4899. :goto_2
  4900. mul-int v5, v5, v4
  4901. add-int/2addr v0, v5
  4902. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  4903. const/4 v0, 0x1
  4904. :cond_c
  4905. if-eqz v0, :cond_13
  4906. invoke-direct {p0, v2}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
  4907. goto :goto_4
  4908. :cond_d
  4909. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  4910. invoke-virtual {p1}, Landroid/view/VelocityTracker;->clear()V
  4911. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopNestedScroll()V
  4912. goto :goto_4
  4913. :cond_e
  4914. iget-boolean v4, p0, Landroid/support/v7/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
  4915. if-eqz v4, :cond_f
  4916. iput-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
  4917. :cond_f
  4918. invoke-static {p1, v1}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
  4919. move-result v4
  4920. iput v4, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  4921. invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F
  4922. move-result v4
  4923. add-float/2addr v4, v7
  4924. float-to-int v4, v4
  4925. iput v4, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  4926. iput v4, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
  4927. invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F
  4928. move-result p1
  4929. add-float/2addr p1, v7
  4930. float-to-int p1, p1
  4931. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  4932. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
  4933. iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  4934. if-ne p1, v6, :cond_10
  4935. invoke-virtual {p0}, Landroid/view/ViewGroup;->getParent()Landroid/view/ViewParent;
  4936. move-result-object p1
  4937. invoke-interface {p1, v2}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V
  4938. invoke-direct {p0, v2}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
  4939. :cond_10
  4940. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
  4941. aput v1, p1, v2
  4942. aput v1, p1, v1
  4943. if-eqz v0, :cond_11
  4944. const/4 p1, 0x1
  4945. goto :goto_3
  4946. :cond_11
  4947. const/4 p1, 0x0
  4948. :goto_3
  4949. if-eqz v3, :cond_12
  4950. or-int/lit8 p1, p1, 0x2
  4951. :cond_12
  4952. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->startNestedScroll(I)Z
  4953. :cond_13
  4954. :goto_4
  4955. iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  4956. if-ne p1, v2, :cond_14
  4957. const/4 v1, 0x1
  4958. :cond_14
  4959. return v1
  4960. .end method
  4961. .method protected onLayout(ZIIII)V
  4962. .locals 0
  4963. const-string p1, "RV OnLayout"
  4964. invoke-static {p1}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
  4965. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
  4966. invoke-static {}, Landroid/support/v4/os/TraceCompat;->endSection()V
  4967. const/4 p1, 0x1
  4968. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
  4969. return-void
  4970. .end method
  4971. .method protected onMeasure(II)V
  4972. .locals 6
  4973. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4974. if-nez v0, :cond_0
  4975. invoke-virtual {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->defaultOnMeasure(II)V
  4976. return-void
  4977. :cond_0
  4978. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->access$2000(Landroid/support/v7/widget/RecyclerView$LayoutManager;)Z
  4979. move-result v0
  4980. const/4 v1, 0x1
  4981. const/4 v2, 0x0
  4982. if-eqz v0, :cond_5
  4983. invoke-static {p1}, Landroid/view/View$MeasureSpec;->getMode(I)I
  4984. move-result v0
  4985. invoke-static {p2}, Landroid/view/View$MeasureSpec;->getMode(I)I
  4986. move-result v3
  4987. const/high16 v4, 0x40000000 # 2.0f
  4988. if-ne v0, v4, :cond_1
  4989. if-ne v3, v4, :cond_1
  4990. const/4 v2, 0x1
  4991. :cond_1
  4992. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  4993. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  4994. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  4995. 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
  4996. if-nez v2, :cond_4
  4997. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  4998. if-nez v0, :cond_2
  4999. goto :goto_0
  5000. :cond_2
  5001. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5002. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2100(Landroid/support/v7/widget/RecyclerView$State;)I
  5003. move-result v0
  5004. if-ne v0, v1, :cond_3
  5005. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep1()V
  5006. :cond_3
  5007. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5008. invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setMeasureSpecs(II)V
  5009. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5010. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2202(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  5011. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep2()V
  5012. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5013. invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setMeasuredDimensionFromChildren(II)V
  5014. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5015. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->shouldMeasureTwice()Z
  5016. move-result v0
  5017. if-eqz v0, :cond_a
  5018. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5019. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I
  5020. move-result v2
  5021. invoke-static {v2, v4}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
  5022. move-result v2
  5023. invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I
  5024. move-result v3
  5025. invoke-static {v3, v4}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
  5026. move-result v3
  5027. invoke-virtual {v0, v2, v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setMeasureSpecs(II)V
  5028. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5029. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2202(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  5030. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayoutStep2()V
  5031. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5032. invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setMeasuredDimensionFromChildren(II)V
  5033. goto :goto_3
  5034. :cond_4
  5035. :goto_0
  5036. return-void
  5037. :cond_5
  5038. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mHasFixedSize:Z
  5039. if-eqz v0, :cond_6
  5040. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5041. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  5042. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5043. 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
  5044. return-void
  5045. :cond_6
  5046. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z
  5047. if-eqz v0, :cond_8
  5048. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  5049. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->processAdapterUpdatesAndSetAnimationFlags()V
  5050. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5051. invoke-static {v0}, Landroid/support/v7/widget/RecyclerView$State;->access$2300(Landroid/support/v7/widget/RecyclerView$State;)Z
  5052. move-result v0
  5053. if-eqz v0, :cond_7
  5054. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5055. invoke-static {v0, v1}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  5056. goto :goto_1
  5057. :cond_7
  5058. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterHelper:Landroid/support/v7/widget/AdapterHelper;
  5059. invoke-virtual {v0}, Landroid/support/v7/widget/AdapterHelper;->consumeUpdatesInOnePass()V
  5060. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5061. invoke-static {v0, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  5062. :goto_1
  5063. iput-boolean v2, p0, Landroid/support/v7/widget/RecyclerView;->mAdapterUpdateDuringMeasure:Z
  5064. invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  5065. :cond_8
  5066. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  5067. if-eqz v0, :cond_9
  5068. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5069. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Adapter;->getItemCount()I
  5070. move-result v0
  5071. iput v0, v1, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
  5072. goto :goto_2
  5073. :cond_9
  5074. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5075. iput v2, v0, Landroid/support/v7/widget/RecyclerView$State;->mItemCount:I
  5076. :goto_2
  5077. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  5078. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5079. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  5080. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5081. 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
  5082. invoke-virtual {p0, v2}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  5083. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5084. invoke-static {p1, v2}, Landroid/support/v7/widget/RecyclerView$State;->access$2402(Landroid/support/v7/widget/RecyclerView$State;Z)Z
  5085. :cond_a
  5086. :goto_3
  5087. return-void
  5088. .end method
  5089. .method protected onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z
  5090. .locals 1
  5091. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
  5092. move-result v0
  5093. if-eqz v0, :cond_0
  5094. const/4 p1, 0x0
  5095. return p1
  5096. :cond_0
  5097. invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->onRequestFocusInDescendants(ILandroid/graphics/Rect;)Z
  5098. move-result p1
  5099. return p1
  5100. .end method
  5101. .method protected onRestoreInstanceState(Landroid/os/Parcelable;)V
  5102. .locals 1
  5103. instance-of v0, p1, Landroid/support/v7/widget/RecyclerView$SavedState;
  5104. if-nez v0, :cond_0
  5105. invoke-super {p0, p1}, Landroid/view/ViewGroup;->onRestoreInstanceState(Landroid/os/Parcelable;)V
  5106. return-void
  5107. :cond_0
  5108. check-cast p1, Landroid/support/v7/widget/RecyclerView$SavedState;
  5109. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
  5110. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
  5111. invoke-virtual {p1}, Landroid/support/v4/view/AbsSavedState;->getSuperState()Landroid/os/Parcelable;
  5112. move-result-object p1
  5113. invoke-super {p0, p1}, Landroid/view/ViewGroup;->onRestoreInstanceState(Landroid/os/Parcelable;)V
  5114. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5115. if-eqz p1, :cond_1
  5116. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
  5117. iget-object v0, v0, Landroid/support/v7/widget/RecyclerView$SavedState;->mLayoutState:Landroid/os/Parcelable;
  5118. if-eqz v0, :cond_1
  5119. invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onRestoreInstanceState(Landroid/os/Parcelable;)V
  5120. :cond_1
  5121. return-void
  5122. .end method
  5123. .method protected onSaveInstanceState()Landroid/os/Parcelable;
  5124. .locals 2
  5125. new-instance v0, Landroid/support/v7/widget/RecyclerView$SavedState;
  5126. invoke-super {p0}, Landroid/view/ViewGroup;->onSaveInstanceState()Landroid/os/Parcelable;
  5127. move-result-object v1
  5128. invoke-direct {v0, v1}, Landroid/support/v7/widget/RecyclerView$SavedState;-><init>(Landroid/os/Parcelable;)V
  5129. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mPendingSavedState:Landroid/support/v7/widget/RecyclerView$SavedState;
  5130. if-eqz v1, :cond_0
  5131. 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
  5132. goto :goto_1
  5133. :cond_0
  5134. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5135. if-eqz v1, :cond_1
  5136. invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->onSaveInstanceState()Landroid/os/Parcelable;
  5137. move-result-object v1
  5138. goto :goto_0
  5139. :cond_1
  5140. const/4 v1, 0x0
  5141. :goto_0
  5142. iput-object v1, v0, Landroid/support/v7/widget/RecyclerView$SavedState;->mLayoutState:Landroid/os/Parcelable;
  5143. :goto_1
  5144. return-object v0
  5145. .end method
  5146. .method public onScrollStateChanged(I)V
  5147. .locals 0
  5148. return-void
  5149. .end method
  5150. .method public onScrolled(II)V
  5151. .locals 0
  5152. return-void
  5153. .end method
  5154. .method protected onSizeChanged(IIII)V
  5155. .locals 0
  5156. invoke-super {p0, p1, p2, p3, p4}, Landroid/view/ViewGroup;->onSizeChanged(IIII)V
  5157. if-ne p1, p3, :cond_0
  5158. if-eq p2, p4, :cond_1
  5159. :cond_0
  5160. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->invalidateGlows()V
  5161. :cond_1
  5162. return-void
  5163. .end method
  5164. .method public onTouchEvent(Landroid/view/MotionEvent;)Z
  5165. .locals 12
  5166. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5167. const/4 v1, 0x0
  5168. if-nez v0, :cond_1d
  5169. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
  5170. if-eqz v0, :cond_0
  5171. goto/16 :goto_9
  5172. :cond_0
  5173. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchOnItemTouch(Landroid/view/MotionEvent;)Z
  5174. move-result v0
  5175. const/4 v2, 0x1
  5176. if-eqz v0, :cond_1
  5177. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->cancelTouch()V
  5178. return v2
  5179. :cond_1
  5180. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5181. if-nez v0, :cond_2
  5182. return v1
  5183. :cond_2
  5184. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  5185. move-result v0
  5186. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5187. invoke-virtual {v3}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  5188. move-result v3
  5189. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  5190. if-nez v4, :cond_3
  5191. invoke-static {}, Landroid/view/VelocityTracker;->obtain()Landroid/view/VelocityTracker;
  5192. move-result-object v4
  5193. iput-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  5194. :cond_3
  5195. invoke-static {p1}, Landroid/view/MotionEvent;->obtain(Landroid/view/MotionEvent;)Landroid/view/MotionEvent;
  5196. move-result-object v4
  5197. invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionMasked(Landroid/view/MotionEvent;)I
  5198. move-result v5
  5199. invoke-static {p1}, Landroid/support/v4/view/MotionEventCompat;->getActionIndex(Landroid/view/MotionEvent;)I
  5200. move-result v6
  5201. if-nez v5, :cond_4
  5202. iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
  5203. aput v1, v7, v2
  5204. aput v1, v7, v1
  5205. :cond_4
  5206. iget-object v7, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
  5207. aget v8, v7, v1
  5208. int-to-float v8, v8
  5209. aget v7, v7, v2
  5210. int-to-float v7, v7
  5211. invoke-virtual {v4, v8, v7}, Landroid/view/MotionEvent;->offsetLocation(FF)V
  5212. const/high16 v7, 0x3f000000 # 0.5f
  5213. if-eqz v5, :cond_18
  5214. if-eq v5, v2, :cond_12
  5215. const/4 v8, 0x2
  5216. if-eq v5, v8, :cond_8
  5217. const/4 v0, 0x3
  5218. if-eq v5, v0, :cond_7
  5219. const/4 v0, 0x5
  5220. if-eq v5, v0, :cond_6
  5221. const/4 v0, 0x6
  5222. if-eq v5, v0, :cond_5
  5223. goto/16 :goto_8
  5224. :cond_5
  5225. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onPointerUp(Landroid/view/MotionEvent;)V
  5226. goto/16 :goto_8
  5227. :cond_6
  5228. invoke-static {p1, v6}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
  5229. move-result v0
  5230. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  5231. invoke-static {p1, v6}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
  5232. move-result v0
  5233. add-float/2addr v0, v7
  5234. float-to-int v0, v0
  5235. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  5236. iput v0, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
  5237. invoke-static {p1, v6}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
  5238. move-result p1
  5239. add-float/2addr p1, v7
  5240. float-to-int p1, p1
  5241. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  5242. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
  5243. goto/16 :goto_8
  5244. :cond_7
  5245. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->cancelTouch()V
  5246. goto/16 :goto_8
  5247. :cond_8
  5248. iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  5249. invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->findPointerIndex(Landroid/view/MotionEvent;I)I
  5250. move-result v5
  5251. if-gez v5, :cond_9
  5252. new-instance p1, Ljava/lang/StringBuilder;
  5253. invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
  5254. const-string v0, "Error processing scroll; pointer index for id "
  5255. invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  5256. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  5257. invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
  5258. const-string v0, " not found. Did any MotionEvents get skipped?"
  5259. invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  5260. invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  5261. move-result-object p1
  5262. const-string v0, "RecyclerView"
  5263. invoke-static {v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  5264. return v1
  5265. :cond_9
  5266. invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getX(Landroid/view/MotionEvent;I)F
  5267. move-result v6
  5268. add-float/2addr v6, v7
  5269. float-to-int v6, v6
  5270. invoke-static {p1, v5}, Landroid/support/v4/view/MotionEventCompat;->getY(Landroid/view/MotionEvent;I)F
  5271. move-result p1
  5272. add-float/2addr p1, v7
  5273. float-to-int p1, p1
  5274. iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  5275. sub-int/2addr v5, v6
  5276. iget v7, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  5277. sub-int/2addr v7, p1
  5278. iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollConsumed:[I
  5279. iget-object v9, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
  5280. invoke-virtual {p0, v5, v7, v8, v9}, Landroid/support/v7/widget/RecyclerView;->dispatchNestedPreScroll(II[I[I)Z
  5281. move-result v8
  5282. if-eqz v8, :cond_a
  5283. iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollConsumed:[I
  5284. aget v9, v8, v1
  5285. sub-int/2addr v5, v9
  5286. aget v8, v8, v2
  5287. sub-int/2addr v7, v8
  5288. iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
  5289. aget v9, v8, v1
  5290. int-to-float v9, v9
  5291. aget v8, v8, v2
  5292. int-to-float v8, v8
  5293. invoke-virtual {v4, v9, v8}, Landroid/view/MotionEvent;->offsetLocation(FF)V
  5294. iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
  5295. aget v9, v8, v1
  5296. iget-object v10, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
  5297. aget v11, v10, v1
  5298. add-int/2addr v9, v11
  5299. aput v9, v8, v1
  5300. aget v9, v8, v2
  5301. aget v10, v10, v2
  5302. add-int/2addr v9, v10
  5303. aput v9, v8, v2
  5304. :cond_a
  5305. iget v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  5306. if-eq v8, v2, :cond_f
  5307. if-eqz v0, :cond_c
  5308. invoke-static {v5}, Ljava/lang/Math;->abs(I)I
  5309. move-result v8
  5310. iget v9, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
  5311. if-le v8, v9, :cond_c
  5312. if-lez v5, :cond_b
  5313. sub-int/2addr v5, v9
  5314. goto :goto_0
  5315. :cond_b
  5316. add-int/2addr v5, v9
  5317. :goto_0
  5318. const/4 v8, 0x1
  5319. goto :goto_1
  5320. :cond_c
  5321. const/4 v8, 0x0
  5322. :goto_1
  5323. if-eqz v3, :cond_e
  5324. invoke-static {v7}, Ljava/lang/Math;->abs(I)I
  5325. move-result v9
  5326. iget v10, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
  5327. if-le v9, v10, :cond_e
  5328. if-lez v7, :cond_d
  5329. sub-int/2addr v7, v10
  5330. goto :goto_2
  5331. :cond_d
  5332. add-int/2addr v7, v10
  5333. :goto_2
  5334. const/4 v8, 0x1
  5335. :cond_e
  5336. if-eqz v8, :cond_f
  5337. invoke-direct {p0, v2}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
  5338. :cond_f
  5339. iget v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollState:I
  5340. if-ne v8, v2, :cond_1b
  5341. iget-object v8, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
  5342. aget v9, v8, v1
  5343. sub-int/2addr v6, v9
  5344. iput v6, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  5345. aget v6, v8, v2
  5346. sub-int/2addr p1, v6
  5347. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  5348. if-eqz v0, :cond_10
  5349. goto :goto_3
  5350. :cond_10
  5351. const/4 v5, 0x0
  5352. :goto_3
  5353. if-eqz v3, :cond_11
  5354. goto :goto_4
  5355. :cond_11
  5356. const/4 v7, 0x0
  5357. :goto_4
  5358. invoke-virtual {p0, v5, v7, v4}, Landroid/support/v7/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z
  5359. move-result p1
  5360. if-eqz p1, :cond_1b
  5361. invoke-virtual {p0}, Landroid/view/ViewGroup;->getParent()Landroid/view/ViewParent;
  5362. move-result-object p1
  5363. invoke-interface {p1, v2}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V
  5364. goto :goto_8
  5365. :cond_12
  5366. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  5367. invoke-virtual {p1, v4}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
  5368. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  5369. const/16 v5, 0x3e8
  5370. iget v6, p0, Landroid/support/v7/widget/RecyclerView;->mMaxFlingVelocity:I
  5371. int-to-float v6, v6
  5372. invoke-virtual {p1, v5, v6}, Landroid/view/VelocityTracker;->computeCurrentVelocity(IF)V
  5373. const/4 p1, 0x0
  5374. if-eqz v0, :cond_13
  5375. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  5376. iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  5377. invoke-static {v0, v5}, Landroid/support/v4/view/VelocityTrackerCompat;->getXVelocity(Landroid/view/VelocityTracker;I)F
  5378. move-result v0
  5379. neg-float v0, v0
  5380. goto :goto_5
  5381. :cond_13
  5382. const/4 v0, 0x0
  5383. :goto_5
  5384. if-eqz v3, :cond_14
  5385. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  5386. iget v5, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  5387. invoke-static {v3, v5}, Landroid/support/v4/view/VelocityTrackerCompat;->getYVelocity(Landroid/view/VelocityTracker;I)F
  5388. move-result v3
  5389. neg-float v3, v3
  5390. goto :goto_6
  5391. :cond_14
  5392. const/4 v3, 0x0
  5393. :goto_6
  5394. cmpl-float v5, v0, p1
  5395. if-nez v5, :cond_15
  5396. cmpl-float p1, v3, p1
  5397. if-eqz p1, :cond_16
  5398. :cond_15
  5399. float-to-int p1, v0
  5400. float-to-int v0, v3
  5401. invoke-virtual {p0, p1, v0}, Landroid/support/v7/widget/RecyclerView;->fling(II)Z
  5402. move-result p1
  5403. if-nez p1, :cond_17
  5404. :cond_16
  5405. invoke-direct {p0, v1}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
  5406. :cond_17
  5407. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->resetTouch()V
  5408. const/4 v1, 0x1
  5409. goto :goto_8
  5410. :cond_18
  5411. invoke-static {p1, v1}, Landroid/support/v4/view/MotionEventCompat;->getPointerId(Landroid/view/MotionEvent;I)I
  5412. move-result v5
  5413. iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mScrollPointerId:I
  5414. invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F
  5415. move-result v5
  5416. add-float/2addr v5, v7
  5417. float-to-int v5, v5
  5418. iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  5419. iput v5, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchX:I
  5420. invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F
  5421. move-result p1
  5422. add-float/2addr p1, v7
  5423. float-to-int p1, p1
  5424. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  5425. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mInitialTouchY:I
  5426. if-eqz v0, :cond_19
  5427. const/4 p1, 0x1
  5428. goto :goto_7
  5429. :cond_19
  5430. const/4 p1, 0x0
  5431. :goto_7
  5432. if-eqz v3, :cond_1a
  5433. or-int/lit8 p1, p1, 0x2
  5434. :cond_1a
  5435. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->startNestedScroll(I)Z
  5436. :cond_1b
  5437. :goto_8
  5438. if-nez v1, :cond_1c
  5439. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mVelocityTracker:Landroid/view/VelocityTracker;
  5440. invoke-virtual {p1, v4}, Landroid/view/VelocityTracker;->addMovement(Landroid/view/MotionEvent;)V
  5441. :cond_1c
  5442. invoke-virtual {v4}, Landroid/view/MotionEvent;->recycle()V
  5443. return v2
  5444. :cond_1d
  5445. :goto_9
  5446. return v1
  5447. .end method
  5448. .method protected removeDetachedView(Landroid/view/View;Z)V
  5449. .locals 2
  5450. invoke-static {p1}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  5451. move-result-object v0
  5452. if-eqz v0, :cond_2
  5453. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->isTmpDetached()Z
  5454. move-result v1
  5455. if-eqz v1, :cond_0
  5456. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->clearTmpDetachFlag()V
  5457. goto :goto_0
  5458. :cond_0
  5459. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  5460. move-result v1
  5461. if-eqz v1, :cond_1
  5462. goto :goto_0
  5463. :cond_1
  5464. new-instance p1, Ljava/lang/IllegalArgumentException;
  5465. new-instance p2, Ljava/lang/StringBuilder;
  5466. invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
  5467. const-string v1, "Called removeDetachedView with a view which is not flagged as tmp detached."
  5468. invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  5469. invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  5470. invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  5471. move-result-object p2
  5472. invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
  5473. throw p1
  5474. :cond_2
  5475. :goto_0
  5476. invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;->dispatchChildDetached(Landroid/view/View;)V
  5477. invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->removeDetachedView(Landroid/view/View;Z)V
  5478. return-void
  5479. .end method
  5480. .method public removeItemDecoration(Landroid/support/v7/widget/RecyclerView$ItemDecoration;)V
  5481. .locals 2
  5482. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5483. if-eqz v0, :cond_0
  5484. const-string v1, "Cannot remove item decoration during a scroll or layout"
  5485. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->assertNotInLayoutOrScroll(Ljava/lang/String;)V
  5486. :cond_0
  5487. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  5488. invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
  5489. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  5490. invoke-virtual {p1}, Ljava/util/ArrayList;->isEmpty()Z
  5491. move-result p1
  5492. if-eqz p1, :cond_2
  5493. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getOverScrollMode(Landroid/view/View;)I
  5494. move-result p1
  5495. const/4 v0, 0x2
  5496. if-ne p1, v0, :cond_1
  5497. const/4 p1, 0x1
  5498. goto :goto_0
  5499. :cond_1
  5500. const/4 p1, 0x0
  5501. :goto_0
  5502. invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->setWillNotDraw(Z)V
  5503. :cond_2
  5504. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->markItemDecorInsetsDirty()V
  5505. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  5506. return-void
  5507. .end method
  5508. .method public removeOnChildAttachStateChangeListener(Landroid/support/v7/widget/RecyclerView$OnChildAttachStateChangeListener;)V
  5509. .locals 1
  5510. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnChildAttachStateListeners:Ljava/util/List;
  5511. if-nez v0, :cond_0
  5512. return-void
  5513. :cond_0
  5514. invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z
  5515. return-void
  5516. .end method
  5517. .method public removeOnItemTouchListener(Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;)V
  5518. .locals 1
  5519. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  5520. invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
  5521. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  5522. if-ne v0, p1, :cond_0
  5523. const/4 p1, 0x0
  5524. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mActiveOnItemTouchListener:Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  5525. :cond_0
  5526. return-void
  5527. .end method
  5528. .method public removeOnScrollListener(Landroid/support/v7/widget/RecyclerView$OnScrollListener;)V
  5529. .locals 1
  5530. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListeners:Ljava/util/List;
  5531. if-eqz v0, :cond_0
  5532. invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z
  5533. :cond_0
  5534. return-void
  5535. .end method
  5536. .method public requestChildFocus(Landroid/view/View;Landroid/view/View;)V
  5537. .locals 4
  5538. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5539. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5540. 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
  5541. move-result v0
  5542. if-nez v0, :cond_1
  5543. if-eqz p2, :cond_1
  5544. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  5545. invoke-virtual {p2}, Landroid/view/View;->getWidth()I
  5546. move-result v1
  5547. invoke-virtual {p2}, Landroid/view/View;->getHeight()I
  5548. move-result v2
  5549. const/4 v3, 0x0
  5550. invoke-virtual {v0, v3, v3, v1, v2}, Landroid/graphics/Rect;->set(IIII)V
  5551. invoke-virtual {p2}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
  5552. move-result-object v0
  5553. instance-of v1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;
  5554. if-eqz v1, :cond_0
  5555. check-cast v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;
  5556. iget-boolean v1, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
  5557. if-nez v1, :cond_0
  5558. iget-object v0, v0, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mDecorInsets:Landroid/graphics/Rect;
  5559. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  5560. iget v2, v1, Landroid/graphics/Rect;->left:I
  5561. iget v3, v0, Landroid/graphics/Rect;->left:I
  5562. sub-int/2addr v2, v3
  5563. iput v2, v1, Landroid/graphics/Rect;->left:I
  5564. iget v2, v1, Landroid/graphics/Rect;->right:I
  5565. iget v3, v0, Landroid/graphics/Rect;->right:I
  5566. add-int/2addr v2, v3
  5567. iput v2, v1, Landroid/graphics/Rect;->right:I
  5568. iget v2, v1, Landroid/graphics/Rect;->top:I
  5569. iget v3, v0, Landroid/graphics/Rect;->top:I
  5570. sub-int/2addr v2, v3
  5571. iput v2, v1, Landroid/graphics/Rect;->top:I
  5572. iget v2, v1, Landroid/graphics/Rect;->bottom:I
  5573. iget v0, v0, Landroid/graphics/Rect;->bottom:I
  5574. add-int/2addr v2, v0
  5575. iput v2, v1, Landroid/graphics/Rect;->bottom:I
  5576. :cond_0
  5577. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  5578. invoke-virtual {p0, p2, v0}, Landroid/view/ViewGroup;->offsetDescendantRectToMyCoords(Landroid/view/View;Landroid/graphics/Rect;)V
  5579. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  5580. invoke-virtual {p0, p1, v0}, Landroid/view/ViewGroup;->offsetRectIntoDescendantCoords(Landroid/view/View;Landroid/graphics/Rect;)V
  5581. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mTempRect:Landroid/graphics/Rect;
  5582. iget-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
  5583. xor-int/lit8 v1, v1, 0x1
  5584. invoke-virtual {p0, p1, v0, v1}, Landroid/support/v7/widget/RecyclerView;->requestChildRectangleOnScreen(Landroid/view/View;Landroid/graphics/Rect;Z)Z
  5585. :cond_1
  5586. invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->requestChildFocus(Landroid/view/View;Landroid/view/View;)V
  5587. return-void
  5588. .end method
  5589. .method public requestChildRectangleOnScreen(Landroid/view/View;Landroid/graphics/Rect;Z)Z
  5590. .locals 1
  5591. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5592. 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
  5593. move-result p1
  5594. return p1
  5595. .end method
  5596. .method public requestDisallowInterceptTouchEvent(Z)V
  5597. .locals 3
  5598. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  5599. invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
  5600. move-result v0
  5601. const/4 v1, 0x0
  5602. :goto_0
  5603. if-ge v1, v0, :cond_0
  5604. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mOnItemTouchListeners:Ljava/util/ArrayList;
  5605. invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
  5606. move-result-object v2
  5607. check-cast v2, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;
  5608. invoke-interface {v2, p1}, Landroid/support/v7/widget/RecyclerView$OnItemTouchListener;->onRequestDisallowInterceptTouchEvent(Z)V
  5609. add-int/lit8 v1, v1, 0x1
  5610. goto :goto_0
  5611. :cond_0
  5612. invoke-super {p0, p1}, Landroid/view/ViewGroup;->requestDisallowInterceptTouchEvent(Z)V
  5613. return-void
  5614. .end method
  5615. .method public requestLayout()V
  5616. .locals 1
  5617. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  5618. if-nez v0, :cond_0
  5619. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5620. if-nez v0, :cond_0
  5621. invoke-super {p0}, Landroid/view/ViewGroup;->requestLayout()V
  5622. goto :goto_0
  5623. :cond_0
  5624. const/4 v0, 0x1
  5625. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  5626. :goto_0
  5627. return-void
  5628. .end method
  5629. .method resumeRequestLayout(Z)V
  5630. .locals 3
  5631. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  5632. const/4 v1, 0x1
  5633. if-ge v0, v1, :cond_0
  5634. iput v1, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  5635. :cond_0
  5636. const/4 v0, 0x0
  5637. if-nez p1, :cond_1
  5638. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  5639. :cond_1
  5640. iget v2, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  5641. if-ne v2, v1, :cond_3
  5642. if-eqz p1, :cond_2
  5643. iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  5644. if-eqz p1, :cond_2
  5645. iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5646. if-nez p1, :cond_2
  5647. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5648. if-eqz p1, :cond_2
  5649. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  5650. if-eqz p1, :cond_2
  5651. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->dispatchLayout()V
  5652. :cond_2
  5653. iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5654. if-nez p1, :cond_3
  5655. iput-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  5656. :cond_3
  5657. iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  5658. sub-int/2addr p1, v1
  5659. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mEatRequestLayout:I
  5660. return-void
  5661. .end method
  5662. .method saveOldPositions()V
  5663. .locals 4
  5664. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  5665. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  5666. move-result v0
  5667. const/4 v1, 0x0
  5668. :goto_0
  5669. if-ge v1, v0, :cond_1
  5670. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  5671. invoke-virtual {v2, v1}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  5672. move-result-object v2
  5673. invoke-static {v2}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  5674. move-result-object v2
  5675. invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  5676. move-result v3
  5677. if-nez v3, :cond_0
  5678. invoke-virtual {v2}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->saveOldPosition()V
  5679. :cond_0
  5680. add-int/lit8 v1, v1, 0x1
  5681. goto :goto_0
  5682. :cond_1
  5683. return-void
  5684. .end method
  5685. .method public scrollBy(II)V
  5686. .locals 3
  5687. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5688. if-nez v0, :cond_0
  5689. const-string p1, "RecyclerView"
  5690. const-string p2, "Cannot scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
  5691. invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  5692. return-void
  5693. :cond_0
  5694. iget-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5695. if-eqz v1, :cond_1
  5696. return-void
  5697. :cond_1
  5698. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  5699. move-result v0
  5700. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5701. invoke-virtual {v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  5702. move-result v1
  5703. if-nez v0, :cond_2
  5704. if-eqz v1, :cond_5
  5705. :cond_2
  5706. const/4 v2, 0x0
  5707. if-eqz v0, :cond_3
  5708. goto :goto_0
  5709. :cond_3
  5710. const/4 p1, 0x0
  5711. :goto_0
  5712. if-eqz v1, :cond_4
  5713. goto :goto_1
  5714. :cond_4
  5715. const/4 p2, 0x0
  5716. :goto_1
  5717. const/4 v0, 0x0
  5718. invoke-virtual {p0, p1, p2, v0}, Landroid/support/v7/widget/RecyclerView;->scrollByInternal(IILandroid/view/MotionEvent;)Z
  5719. :cond_5
  5720. return-void
  5721. .end method
  5722. .method scrollByInternal(IILandroid/view/MotionEvent;)Z
  5723. .locals 11
  5724. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->consumePendingUpdateOperations()V
  5725. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  5726. const/4 v1, 0x0
  5727. if-eqz v0, :cond_2
  5728. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->eatRequestLayout()V
  5729. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onEnterLayoutOrScroll()V
  5730. const-string v0, "RV Scroll"
  5731. invoke-static {v0}, Landroid/support/v4/os/TraceCompat;->beginSection(Ljava/lang/String;)V
  5732. if-eqz p1, :cond_0
  5733. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5734. iget-object v2, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  5735. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5736. 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
  5737. move-result v0
  5738. sub-int v2, p1, v0
  5739. goto :goto_0
  5740. :cond_0
  5741. const/4 v0, 0x0
  5742. const/4 v2, 0x0
  5743. :goto_0
  5744. if-eqz p2, :cond_1
  5745. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5746. iget-object v4, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  5747. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  5748. 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
  5749. move-result v3
  5750. sub-int v4, p2, v3
  5751. goto :goto_1
  5752. :cond_1
  5753. const/4 v3, 0x0
  5754. const/4 v4, 0x0
  5755. :goto_1
  5756. invoke-static {}, Landroid/support/v4/os/TraceCompat;->endSection()V
  5757. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->repositionShadowingViews()V
  5758. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->onExitLayoutOrScroll()V
  5759. invoke-virtual {p0, v1}, Landroid/support/v7/widget/RecyclerView;->resumeRequestLayout(Z)V
  5760. goto :goto_2
  5761. :cond_2
  5762. const/4 v0, 0x0
  5763. const/4 v2, 0x0
  5764. const/4 v3, 0x0
  5765. const/4 v4, 0x0
  5766. :goto_2
  5767. iget-object v5, p0, Landroid/support/v7/widget/RecyclerView;->mItemDecorations:Ljava/util/ArrayList;
  5768. invoke-virtual {v5}, Ljava/util/ArrayList;->isEmpty()Z
  5769. move-result v5
  5770. if-nez v5, :cond_3
  5771. invoke-virtual {p0}, Landroid/view/ViewGroup;->invalidate()V
  5772. :cond_3
  5773. iget-object v10, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
  5774. move-object v5, p0
  5775. move v6, v0
  5776. move v7, v3
  5777. move v8, v2
  5778. move v9, v4
  5779. invoke-virtual/range {v5 .. v10}, Landroid/support/v7/widget/RecyclerView;->dispatchNestedScroll(IIII[I)Z
  5780. move-result v5
  5781. const/4 v6, 0x1
  5782. if-eqz v5, :cond_5
  5783. iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  5784. iget-object p2, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
  5785. aget v2, p2, v1
  5786. sub-int/2addr p1, v2
  5787. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchX:I
  5788. iget p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  5789. aget v2, p2, v6
  5790. sub-int/2addr p1, v2
  5791. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mLastTouchY:I
  5792. if-eqz p3, :cond_4
  5793. aget p1, p2, v1
  5794. int-to-float p1, p1
  5795. aget p2, p2, v6
  5796. int-to-float p2, p2
  5797. invoke-virtual {p3, p1, p2}, Landroid/view/MotionEvent;->offsetLocation(FF)V
  5798. :cond_4
  5799. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mNestedOffsets:[I
  5800. aget p2, p1, v1
  5801. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mScrollOffset:[I
  5802. aget v2, p3, v1
  5803. add-int/2addr p2, v2
  5804. aput p2, p1, v1
  5805. aget p2, p1, v6
  5806. aget p3, p3, v6
  5807. add-int/2addr p2, p3
  5808. aput p2, p1, v6
  5809. goto :goto_3
  5810. :cond_5
  5811. invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getOverScrollMode(Landroid/view/View;)I
  5812. move-result v5
  5813. const/4 v7, 0x2
  5814. if-eq v5, v7, :cond_7
  5815. if-eqz p3, :cond_6
  5816. invoke-virtual {p3}, Landroid/view/MotionEvent;->getX()F
  5817. move-result v5
  5818. int-to-float v2, v2
  5819. invoke-virtual {p3}, Landroid/view/MotionEvent;->getY()F
  5820. move-result p3
  5821. int-to-float v4, v4
  5822. invoke-direct {p0, v5, v2, p3, v4}, Landroid/support/v7/widget/RecyclerView;->pullGlows(FFFF)V
  5823. :cond_6
  5824. invoke-direct {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;->considerReleasingGlowsOnScroll(II)V
  5825. :cond_7
  5826. :goto_3
  5827. if-nez v0, :cond_8
  5828. if-eqz v3, :cond_9
  5829. :cond_8
  5830. invoke-virtual {p0, v0, v3}, Landroid/support/v7/widget/RecyclerView;->dispatchOnScrolled(II)V
  5831. :cond_9
  5832. invoke-virtual {p0}, Landroid/view/ViewGroup;->awakenScrollBars()Z
  5833. move-result p1
  5834. if-nez p1, :cond_a
  5835. invoke-virtual {p0}, Landroid/view/ViewGroup;->invalidate()V
  5836. :cond_a
  5837. if-nez v0, :cond_b
  5838. if-eqz v3, :cond_c
  5839. :cond_b
  5840. const/4 v1, 0x1
  5841. :cond_c
  5842. return v1
  5843. .end method
  5844. .method public scrollTo(II)V
  5845. .locals 0
  5846. const-string p1, "RecyclerView"
  5847. const-string p2, "RecyclerView does not support scrolling to an absolute position. Use scrollToPosition instead"
  5848. invoke-static {p1, p2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
  5849. return-void
  5850. .end method
  5851. .method public scrollToPosition(I)V
  5852. .locals 1
  5853. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5854. if-eqz v0, :cond_0
  5855. return-void
  5856. :cond_0
  5857. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopScroll()V
  5858. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5859. if-nez v0, :cond_1
  5860. const-string p1, "RecyclerView"
  5861. const-string v0, "Cannot scroll to position a LayoutManager set. Call setLayoutManager with a non-null argument."
  5862. invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  5863. return-void
  5864. :cond_1
  5865. invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->scrollToPosition(I)V
  5866. invoke-virtual {p0}, Landroid/view/ViewGroup;->awakenScrollBars()Z
  5867. return-void
  5868. .end method
  5869. .method public sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V
  5870. .locals 1
  5871. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->shouldDeferAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z
  5872. move-result v0
  5873. if-eqz v0, :cond_0
  5874. return-void
  5875. :cond_0
  5876. invoke-super {p0, p1}, Landroid/view/ViewGroup;->sendAccessibilityEventUnchecked(Landroid/view/accessibility/AccessibilityEvent;)V
  5877. return-void
  5878. .end method
  5879. .method public setAccessibilityDelegateCompat(Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;)V
  5880. .locals 0
  5881. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
  5882. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mAccessibilityDelegate:Landroid/support/v7/widget/RecyclerViewAccessibilityDelegate;
  5883. invoke-static {p0, p1}, Landroid/support/v4/view/ViewCompat;->setAccessibilityDelegate(Landroid/view/View;Landroid/support/v4/view/AccessibilityDelegateCompat;)V
  5884. return-void
  5885. .end method
  5886. .method public setAdapter(Landroid/support/v7/widget/RecyclerView$Adapter;)V
  5887. .locals 2
  5888. const/4 v0, 0x0
  5889. invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->setLayoutFrozen(Z)V
  5890. const/4 v1, 0x1
  5891. invoke-direct {p0, p1, v0, v1}, Landroid/support/v7/widget/RecyclerView;->setAdapterInternal(Landroid/support/v7/widget/RecyclerView$Adapter;ZZ)V
  5892. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  5893. return-void
  5894. .end method
  5895. .method public setChildDrawingOrderCallback(Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;)V
  5896. .locals 1
  5897. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
  5898. if-ne p1, v0, :cond_0
  5899. return-void
  5900. :cond_0
  5901. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
  5902. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mChildDrawingOrderCallback:Landroid/support/v7/widget/RecyclerView$ChildDrawingOrderCallback;
  5903. if-eqz p1, :cond_1
  5904. const/4 p1, 0x1
  5905. goto :goto_0
  5906. :cond_1
  5907. const/4 p1, 0x0
  5908. :goto_0
  5909. invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->setChildrenDrawingOrderEnabled(Z)V
  5910. return-void
  5911. .end method
  5912. .method public setClipToPadding(Z)V
  5913. .locals 1
  5914. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  5915. if-eq p1, v0, :cond_0
  5916. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->invalidateGlows()V
  5917. :cond_0
  5918. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mClipToPadding:Z
  5919. invoke-super {p0, p1}, Landroid/view/ViewGroup;->setClipToPadding(Z)V
  5920. iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mFirstLayoutComplete:Z
  5921. if-eqz p1, :cond_1
  5922. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  5923. :cond_1
  5924. return-void
  5925. .end method
  5926. .method public setHasFixedSize(Z)V
  5927. .locals 0
  5928. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mHasFixedSize:Z
  5929. return-void
  5930. .end method
  5931. .method public setItemAnimator(Landroid/support/v7/widget/RecyclerView$ItemAnimator;)V
  5932. .locals 2
  5933. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  5934. if-eqz v0, :cond_0
  5935. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->endAnimations()V
  5936. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  5937. const/4 v1, 0x0
  5938. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->setListener(Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V
  5939. :cond_0
  5940. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  5941. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimator:Landroid/support/v7/widget/RecyclerView$ItemAnimator;
  5942. if-eqz p1, :cond_1
  5943. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mItemAnimatorListener:Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;
  5944. invoke-virtual {p1, v0}, Landroid/support/v7/widget/RecyclerView$ItemAnimator;->setListener(Landroid/support/v7/widget/RecyclerView$ItemAnimator$ItemAnimatorListener;)V
  5945. :cond_1
  5946. return-void
  5947. .end method
  5948. .method public setItemViewCacheSize(I)V
  5949. .locals 1
  5950. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  5951. invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->setViewCacheSize(I)V
  5952. return-void
  5953. .end method
  5954. .method public setLayoutFrozen(Z)V
  5955. .locals 9
  5956. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5957. if-eq p1, v0, :cond_2
  5958. const-string v0, "Do not setLayoutFrozen in layout or scroll"
  5959. invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->assertNotInLayoutOrScroll(Ljava/lang/String;)V
  5960. if-nez p1, :cond_1
  5961. const/4 p1, 0x0
  5962. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5963. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  5964. if-eqz v0, :cond_0
  5965. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5966. if-eqz v0, :cond_0
  5967. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mAdapter:Landroid/support/v7/widget/RecyclerView$Adapter;
  5968. if-eqz v0, :cond_0
  5969. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  5970. :cond_0
  5971. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutRequestEaten:Z
  5972. goto :goto_0
  5973. :cond_1
  5974. invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
  5975. move-result-wide v3
  5976. const/4 v5, 0x3
  5977. const/4 v6, 0x0
  5978. const/4 v7, 0x0
  5979. const/4 v8, 0x0
  5980. move-wide v1, v3
  5981. invoke-static/range {v1 .. v8}, Landroid/view/MotionEvent;->obtain(JJIFFI)Landroid/view/MotionEvent;
  5982. move-result-object p1
  5983. invoke-virtual {p0, p1}, Landroid/support/v7/widget/RecyclerView;->onTouchEvent(Landroid/view/MotionEvent;)Z
  5984. const/4 p1, 0x1
  5985. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  5986. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mIgnoreMotionEventTillDown:Z
  5987. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopScroll()V
  5988. :cond_2
  5989. :goto_0
  5990. return-void
  5991. .end method
  5992. .method public setLayoutManager(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V
  5993. .locals 3
  5994. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  5995. if-ne p1, v0, :cond_0
  5996. return-void
  5997. :cond_0
  5998. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->stopScroll()V
  5999. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  6000. if-eqz v0, :cond_2
  6001. iget-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
  6002. if-eqz v1, :cond_1
  6003. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  6004. invoke-virtual {v0, p0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->dispatchDetachedFromWindow(Landroid/support/v7/widget/RecyclerView;Landroid/support/v7/widget/RecyclerView$Recycler;)V
  6005. :cond_1
  6006. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  6007. const/4 v1, 0x0
  6008. invoke-virtual {v0, v1}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setRecyclerView(Landroid/support/v7/widget/RecyclerView;)V
  6009. :cond_2
  6010. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  6011. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$Recycler;->clear()V
  6012. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  6013. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->removeAllViewsUnfiltered()V
  6014. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  6015. if-eqz p1, :cond_4
  6016. iget-object v0, p1, Landroid/support/v7/widget/RecyclerView$LayoutManager;->mRecyclerView:Landroid/support/v7/widget/RecyclerView;
  6017. if-nez v0, :cond_3
  6018. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  6019. invoke-virtual {p1, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->setRecyclerView(Landroid/support/v7/widget/RecyclerView;)V
  6020. iget-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mIsAttached:Z
  6021. if-eqz p1, :cond_4
  6022. iget-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  6023. invoke-virtual {p1, p0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->dispatchAttachedToWindow(Landroid/support/v7/widget/RecyclerView;)V
  6024. goto :goto_0
  6025. :cond_3
  6026. new-instance v0, Ljava/lang/IllegalArgumentException;
  6027. new-instance v1, Ljava/lang/StringBuilder;
  6028. invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
  6029. const-string v2, "LayoutManager "
  6030. invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  6031. invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  6032. const-string v2, " is already attached to a RecyclerView: "
  6033. invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  6034. iget-object p1, p1, Landroid/support/v7/widget/RecyclerView$LayoutManager;->mRecyclerView:Landroid/support/v7/widget/RecyclerView;
  6035. invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  6036. invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  6037. move-result-object p1
  6038. invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
  6039. throw v0
  6040. :cond_4
  6041. :goto_0
  6042. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  6043. return-void
  6044. .end method
  6045. .method public setNestedScrollingEnabled(Z)V
  6046. .locals 1
  6047. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  6048. move-result-object v0
  6049. invoke-virtual {v0, p1}, Landroid/support/v4/view/NestedScrollingChildHelper;->setNestedScrollingEnabled(Z)V
  6050. return-void
  6051. .end method
  6052. .method public setOnScrollListener(Landroid/support/v7/widget/RecyclerView$OnScrollListener;)V
  6053. .locals 0
  6054. .annotation runtime Ljava/lang/Deprecated;
  6055. .end annotation
  6056. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mScrollListener:Landroid/support/v7/widget/RecyclerView$OnScrollListener;
  6057. return-void
  6058. .end method
  6059. .method public setPreserveFocusAfterLayout(Z)V
  6060. .locals 0
  6061. iput-boolean p1, p0, Landroid/support/v7/widget/RecyclerView;->mPreserveFocusAfterLayout:Z
  6062. return-void
  6063. .end method
  6064. .method public setRecycledViewPool(Landroid/support/v7/widget/RecyclerView$RecycledViewPool;)V
  6065. .locals 1
  6066. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  6067. invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->setRecycledViewPool(Landroid/support/v7/widget/RecyclerView$RecycledViewPool;)V
  6068. return-void
  6069. .end method
  6070. .method public setRecyclerListener(Landroid/support/v7/widget/RecyclerView$RecyclerListener;)V
  6071. .locals 0
  6072. iput-object p1, p0, Landroid/support/v7/widget/RecyclerView;->mRecyclerListener:Landroid/support/v7/widget/RecyclerView$RecyclerListener;
  6073. return-void
  6074. .end method
  6075. .method public setScrollingTouchSlop(I)V
  6076. .locals 3
  6077. invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context;
  6078. move-result-object v0
  6079. invoke-static {v0}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;
  6080. move-result-object v0
  6081. if-eqz p1, :cond_1
  6082. const/4 v1, 0x1
  6083. if-eq p1, v1, :cond_0
  6084. new-instance v1, Ljava/lang/StringBuilder;
  6085. invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
  6086. const-string v2, "setScrollingTouchSlop(): bad argument constant "
  6087. invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  6088. invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
  6089. const-string p1, "; using default value"
  6090. invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  6091. invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  6092. move-result-object p1
  6093. const-string v1, "RecyclerView"
  6094. invoke-static {v1, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
  6095. goto :goto_0
  6096. :cond_0
  6097. invoke-static {v0}, Landroid/support/v4/view/ViewConfigurationCompat;->getScaledPagingTouchSlop(Landroid/view/ViewConfiguration;)I
  6098. move-result p1
  6099. goto :goto_1
  6100. :cond_1
  6101. :goto_0
  6102. invoke-virtual {v0}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I
  6103. move-result p1
  6104. :goto_1
  6105. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mTouchSlop:I
  6106. return-void
  6107. .end method
  6108. .method public setViewCacheExtension(Landroid/support/v7/widget/RecyclerView$ViewCacheExtension;)V
  6109. .locals 1
  6110. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  6111. invoke-virtual {v0, p1}, Landroid/support/v7/widget/RecyclerView$Recycler;->setViewCacheExtension(Landroid/support/v7/widget/RecyclerView$ViewCacheExtension;)V
  6112. return-void
  6113. .end method
  6114. .method shouldDeferAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z
  6115. .locals 2
  6116. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->isComputingLayout()Z
  6117. move-result v0
  6118. const/4 v1, 0x0
  6119. if-eqz v0, :cond_2
  6120. if-eqz p1, :cond_0
  6121. invoke-static {p1}, Landroid/support/v4/view/accessibility/AccessibilityEventCompat;->getContentChangeTypes(Landroid/view/accessibility/AccessibilityEvent;)I
  6122. move-result p1
  6123. goto :goto_0
  6124. :cond_0
  6125. const/4 p1, 0x0
  6126. :goto_0
  6127. if-nez p1, :cond_1
  6128. const/4 p1, 0x0
  6129. :cond_1
  6130. iget v0, p0, Landroid/support/v7/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I
  6131. or-int/2addr p1, v0
  6132. iput p1, p0, Landroid/support/v7/widget/RecyclerView;->mEatenAccessibilityChangeFlags:I
  6133. const/4 p1, 0x1
  6134. return p1
  6135. :cond_2
  6136. return v1
  6137. .end method
  6138. .method public smoothScrollBy(II)V
  6139. .locals 2
  6140. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  6141. if-nez v0, :cond_0
  6142. const-string p1, "RecyclerView"
  6143. const-string p2, "Cannot smooth scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
  6144. invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  6145. return-void
  6146. :cond_0
  6147. iget-boolean v1, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  6148. if-eqz v1, :cond_1
  6149. return-void
  6150. :cond_1
  6151. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollHorizontally()Z
  6152. move-result v0
  6153. const/4 v1, 0x0
  6154. if-nez v0, :cond_2
  6155. const/4 p1, 0x0
  6156. :cond_2
  6157. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  6158. invoke-virtual {v0}, Landroid/support/v7/widget/RecyclerView$LayoutManager;->canScrollVertically()Z
  6159. move-result v0
  6160. if-nez v0, :cond_3
  6161. const/4 p2, 0x0
  6162. :cond_3
  6163. if-nez p1, :cond_4
  6164. if-eqz p2, :cond_5
  6165. :cond_4
  6166. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mViewFlinger:Landroid/support/v7/widget/RecyclerView$ViewFlinger;
  6167. invoke-virtual {v0, p1, p2}, Landroid/support/v7/widget/RecyclerView$ViewFlinger;->smoothScrollBy(II)V
  6168. :cond_5
  6169. return-void
  6170. .end method
  6171. .method public smoothScrollToPosition(I)V
  6172. .locals 2
  6173. iget-boolean v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayoutFrozen:Z
  6174. if-eqz v0, :cond_0
  6175. return-void
  6176. :cond_0
  6177. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mLayout:Landroid/support/v7/widget/RecyclerView$LayoutManager;
  6178. if-nez v0, :cond_1
  6179. const-string p1, "RecyclerView"
  6180. const-string v0, "Cannot smooth scroll without a LayoutManager set. Call setLayoutManager with a non-null argument."
  6181. invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  6182. return-void
  6183. :cond_1
  6184. iget-object v1, p0, Landroid/support/v7/widget/RecyclerView;->mState:Landroid/support/v7/widget/RecyclerView$State;
  6185. 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
  6186. return-void
  6187. .end method
  6188. .method public startNestedScroll(I)Z
  6189. .locals 1
  6190. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  6191. move-result-object v0
  6192. invoke-virtual {v0, p1}, Landroid/support/v4/view/NestedScrollingChildHelper;->startNestedScroll(I)Z
  6193. move-result p1
  6194. return p1
  6195. .end method
  6196. .method public stopNestedScroll()V
  6197. .locals 1
  6198. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->getScrollingChildHelper()Landroid/support/v4/view/NestedScrollingChildHelper;
  6199. move-result-object v0
  6200. invoke-virtual {v0}, Landroid/support/v4/view/NestedScrollingChildHelper;->stopNestedScroll()V
  6201. return-void
  6202. .end method
  6203. .method public stopScroll()V
  6204. .locals 1
  6205. const/4 v0, 0x0
  6206. invoke-direct {p0, v0}, Landroid/support/v7/widget/RecyclerView;->setScrollState(I)V
  6207. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->stopScrollersInternal()V
  6208. return-void
  6209. .end method
  6210. .method public swapAdapter(Landroid/support/v7/widget/RecyclerView$Adapter;Z)V
  6211. .locals 1
  6212. const/4 v0, 0x0
  6213. invoke-virtual {p0, v0}, Landroid/support/v7/widget/RecyclerView;->setLayoutFrozen(Z)V
  6214. const/4 v0, 0x1
  6215. invoke-direct {p0, p1, v0, p2}, Landroid/support/v7/widget/RecyclerView;->setAdapterInternal(Landroid/support/v7/widget/RecyclerView$Adapter;ZZ)V
  6216. invoke-direct {p0}, Landroid/support/v7/widget/RecyclerView;->setDataSetChangedAfterLayout()V
  6217. invoke-virtual {p0}, Landroid/support/v7/widget/RecyclerView;->requestLayout()V
  6218. return-void
  6219. .end method
  6220. .method viewRangeUpdate(IILjava/lang/Object;)V
  6221. .locals 6
  6222. iget-object v0, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  6223. invoke-virtual {v0}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildCount()I
  6224. move-result v0
  6225. add-int v1, p1, p2
  6226. const/4 v2, 0x0
  6227. :goto_0
  6228. if-ge v2, v0, :cond_2
  6229. iget-object v3, p0, Landroid/support/v7/widget/RecyclerView;->mChildHelper:Landroid/support/v7/widget/ChildHelper;
  6230. invoke-virtual {v3, v2}, Landroid/support/v7/widget/ChildHelper;->getUnfilteredChildAt(I)Landroid/view/View;
  6231. move-result-object v3
  6232. invoke-static {v3}, Landroid/support/v7/widget/RecyclerView;->getChildViewHolderInt(Landroid/view/View;)Landroid/support/v7/widget/RecyclerView$ViewHolder;
  6233. move-result-object v4
  6234. if-eqz v4, :cond_1
  6235. invoke-virtual {v4}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->shouldIgnore()Z
  6236. move-result v5
  6237. if-eqz v5, :cond_0
  6238. goto :goto_1
  6239. :cond_0
  6240. iget v5, v4, Landroid/support/v7/widget/RecyclerView$ViewHolder;->mPosition:I
  6241. if-lt v5, p1, :cond_1
  6242. if-ge v5, v1, :cond_1
  6243. const/4 v5, 0x2
  6244. invoke-virtual {v4, v5}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->addFlags(I)V
  6245. invoke-virtual {v4, p3}, Landroid/support/v7/widget/RecyclerView$ViewHolder;->addChangePayload(Ljava/lang/Object;)V
  6246. invoke-virtual {v3}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
  6247. move-result-object v3
  6248. check-cast v3, Landroid/support/v7/widget/RecyclerView$LayoutParams;
  6249. const/4 v4, 0x1
  6250. iput-boolean v4, v3, Landroid/support/v7/widget/RecyclerView$LayoutParams;->mInsetsDirty:Z
  6251. :cond_1
  6252. :goto_1
  6253. add-int/lit8 v2, v2, 0x1
  6254. goto :goto_0
  6255. :cond_2
  6256. iget-object p3, p0, Landroid/support/v7/widget/RecyclerView;->mRecycler:Landroid/support/v7/widget/RecyclerView$Recycler;
  6257. invoke-virtual {p3, p1, p2}, Landroid/support/v7/widget/RecyclerView$Recycler;->viewRangeUpdate(II)V
  6258. return-void
  6259. .end method